¿Cómo uso elasticsearch en python??

¿Cómo uso elasticsearch en python??
Elasticsearch es un motor de análisis y análisis de código abierto y de código abierto, altamente disponible, basado en el proyecto Apache Lucene. Elasticsearch almacena sus datos en formato JSON, haciéndolo muy fácil de usar.

Proporciona una API REST simple y poderosa para realizar una colección de tareas desde la creación de documentos, monitorear la salud del clúster y más.

Python es uno de los lenguajes de programación más populares, y tiende a complementar muy bien a Elasticsearch.

En esta guía, veremos cómo usar el cliente de Elasticsearch Python para interactuar con el clúster Elasticsearch.

Configuración del medio ambiente

Antes de conectar el cliente de Elasticsearch Python, es bueno asegurarse de que tengamos el entorno configurado.

Paso 1: Instalación de ElasticSearch

El primer paso es instalar y configurar el clúster ElastISearch en nuestro sistema. En esta guía, usaremos un servidor Ubuntu.

Comience por actualizar sus repositorios:

actualización de instalación de sudo apt-get

Importar la clave PGP de ElasticSearch.

wget -qo - https: // artefactos.elástico.CO/GPG-Key-ElasticSearch | sudo apt-key agregar -

Instale el paquete apt-transport-https requerido:

sudo apt-get install apt-transport-https

Guardar el repositorio.

echo "Deb https: // artefactos.elástico.CO/paquetes/7.x/apt estable main "| sudo tee/etc/apt/fuentes.lista.D/elástico-7.X.lista

Actualizar e instalar Elasticsearch

Actualización de sudo apto
sudo apt install elasticsearch

Habilitar e iniciar el servicio:

sudo /bin /systemctl habilitar elasticsearch.servicio
sudo systemctl start elasticsearch.servicio

Una vez que el servicio esté en funcionamiento, realice un rizo al punto final de ElasticSearch:

curl http: // localhost: 9200

Si el servicio se está ejecutando, debe ver una salida como se muestra a continuación:


"Nombre": "Ubuntu2004",
"cluster_name": "elasticsearch",
"cluster_uuid": "Luk9qsqtsasfzxmsyxqdyg",
"versión" :
"numero 7.15.0 ",
"build_flavor": "predeterminado",
"build_type": "deb",
"Build_hash": "79D65F6E357953A5B3CBCC5E2C7C21073D89AA29",
"build_date": "2021-09-16T03: 05: 29.143308416Z ",
"build_snapshot": falso,
"Lucene_version": "8.9.0 ",
"Minimum_Wire_Compatibility_Version": "6.8.0 ",
"Minimum_index_Compatibility_Version": "6.0.0-beta1 "
,
"Lema": "Ya sabes, para la búsqueda"

Paso 2: Instalación de Python

El siguiente paso es instalar Python. En Ubuntu/Debian, abra el terminal e ingrese el comando a continuación para confirmar la versión de Python instalada:

Python -Versión

Si tiene instalado Python 3, debería ver una salida similar a la que se muestra a continuación:

Python 3.10.0

Si no, instale Python 3 usando el comando:

sudo apt-get install python3.10

Paso 3: Instalación del cliente Elasticsearch

El paso final es instalar el cliente Elasticsearch. Podemos hacer esto usando la utilidad PIP como:

Comience por instalar PIP como:

sudo apt-get install python3-pip

Finalmente, instale Elasticsearch Client como:

PIP3 Instalar Elasticsearch

Conectando el cliente Elasticsearch

Una vez que nuestro entorno está configurado y configurado, podemos interactuar con Elastic utilizando el cliente Elasticsearch.

Comience creando un archivo de Python.

toque elástico.py
vim elástico.py

Asegúrese de que el clúster esté en funcionamiento

Antes de interactuar con el clúster Elasticsearch, asegúrese de que el servicio esté en funcionamiento utilizando el módulo de solicitudes.

Solicitudes de importación
subString = "Ya sabes, para la búsqueda".codificar()
respuesta = solicitudes.Get ("http: // 127.0.0.1: 9200 ")
Si la subcadena en respuesta.contenido:
imprimir ("Elasticsearch está en funcionamiento!")
demás:
Imprimir ("Algo salió mal, asegúrese de que el clúster esté arriba!")

Guardar y ejecutar el archivo como:

Python elástico.py

Producción:

Elasticsearch está en funcionamiento!

Conéctese al clúster Elasticsearch

Para conectarse al clúster Elasticsearch, podemos implementar el siguiente script simple:

Solicitudes de importación
de Elasticsearch import elasticsearch
subString = "Ya sabes, para la búsqueda".codificar()
respuesta = solicitudes.Get ("http: // 127.0.0.1: 9200 ")
Si la subcadena en respuesta.contenido:
es = Elasticsearch (["host": "localhost", "puerto": 9200])

Obtener documento con Python

Para obtener un documento usando el cliente Python, puede hacer:

res = es.get (index = "index-name", id = 1)
print (res ['_ fuente'])

El ejemplo anterior debe devolver detalles sobre el documento consultado.

Indexar un documento

Para indexar un documento, use el código:

desde la importación de fecha y hora de fecha y hora
de Elasticsearch import elasticsearch
es = Elasticsearch (["host": "localhost", "puerto": 9200])
doc =
"Autor": "Autor del documento",
"Texto": "Un documento de texto",
"Marca de tiempo": DateTime.ahora()

res = es.índice (index = "Sample-Index", ID = 2, Body = DOC)
imprimir (res ['resultado'])

Eliminar un documento

Para eliminar un documento:

res = es.delete (index = "índice-name", id = 1)

Clausura

Esta guía analiza cómo configurar y usar Elasticsearch con Python usando el cliente de Elasticseach Python.

Para aprender a utilizar la funcionalidad completa de la Biblioteca Elasticsearch, considere la documentación.