Introduciendo Elasticsearch paso a paso

Hola
Hoy hablaremos sobre el motor de búsqueda de texto completo Elasticsearch (en adelante ES), con el cual
La plataforma Docsvision 5.5 se está ejecutando.





1. Instalación


Puede descargar la versión actual desde el enlace: www.elastic.co/downloads/elasticsearch
Captura de pantalla del instalador a continuación:


2. Control de salud


Una vez completada la instalación, vaya a
http: // localhost: 9200 /
Debería aparecer una página con el estado ES, un ejemplo a continuación:



Si la página no se abre, asegúrese de que el servicio Elasticsearch se esté ejecutando. En Windows, esto
Servicio Elasticsearch.


3. Conexión a Docsvision


La conexión a Elasticsearch se configura en la página de servicio de texto completo
indexación


Aquí debe especificar:
1. Dirección del servidor Elasticsearch (establecida durante la instalación).
2. La cadena de conexión al DBMS.
3. Dirección de Docsvision (en el formato ConnectAddress = http: // SERVER / DocsVision / StorageServer / StorageServerService.
asmx )
4. En la pestaña "Tarjetas" y "Directorios" necesita configurar los datos que
necesita ser indexado
También debe asegurarse de que la cuenta con la que se ejecuta el servicio Docsvision
El servicio de indización de texto completo tiene acceso a la base de datos Docsvision en MS SQL.
Después de conectarse, debe asegurarse de que las tareas con el prefijo se creen en la base de datos MS SQL:
"DV: FullText_ <MNBD> _CardWithFilesPrepareRange"


Después de completar la configuración, la barra de búsqueda se desbloqueará en el cliente de Windows.

4. REST API Elastic


Un administrador puede obtener diversa información sobre Elasticsearch usando
proporcionado por la API REST.
En los siguientes ejemplos, utilizaremos Insomnia Rest Client.

Obteniendo información general


Una vez que el servicio ha comenzado y comenzó a funcionar (http: // localhost: 9200 / en el navegador), puede
ejecutar la solicitud:
http: // localhost: 9200 / _cat / health? v

Recibiremos una respuesta sobre el estado del servicio Elasticsearch (en el navegador):

Respuesta al estado de insomnio:

Presta atención al estado: verde, amarillo, rojo. La documentación oficial dice lo siguiente sobre los estados:
• Verde: todo está bien (el clúster está en pleno funcionamiento)
• Amarillo: todos los datos están disponibles, pero algunas réplicas en el clúster aún no se les han asignado.
• Rojo: parte de los datos no está disponible por ningún motivo (el clúster funciona normalmente)
Obteniendo estados sobre nodos en un clúster y su estado (tengo 1 nodo):
http: // localhost: 9200 / _cat / nodo? v


Todos los índices de ES:
http: // localhost: 9200 / _cat / indices? v


Además de los índices de Docsvision, puede haber índices de otras aplicaciones: latidos,
kibana - si los usas. Necesario de innecesario puede ser ordenado. Por ejemplo
tome solo los índices en cuyo nombre hay% card% en el nombre:
http: // localhost: 9200 / _cat / indices / * card *? v & s = index


Configuración de Elasticsearch


Obtención de la configuración de Elasticsearch:
http: // localhost: 9200 / _nodes
El resultado será bastante extenso, incluida la ruta a los registros:


Como sabemos una lista de índices, ya lo sabemos, Docsvision lo hace automáticamente, dando al índice un nombre en el formato:
<nombre de la base de datos + vista de tarjeta indexada>
También puede crear su propio índice independiente:
http: // localhost: 9200 / customer? pretty
Solo que no será un GET, sino una solicitud PUT:


Resultado:


La siguiente consulta mostrará todos los índices, incluidos los nuevos (cliente):
http: // localhost: 9200 / _cat / indices? v


5. Obtener información sobre datos indexados


Estado del índice de Elasticsearch


Una vez completada la configuración inicial por Docsvision, el servicio debe estar listo para funcionar y comenzar a indexar datos.
En primer lugar, verificaremos que los índices estén completos y que su tamaño sea mayor que los "bytes" estándar con la consulta que ya conocemos:
http: // localhost: 9200 / _cat / indices? v
Como resultado, vemos: 87 "tareas" y 72 "documentos" están indexados en términos de nuestro EDMS:


Después de un tiempo, los resultados son los siguientes (de manera predeterminada, la indexación del trabajo comienza cada 5 minutos):


Vemos que el número de documentos ha aumentado.

¿Cómo entender que la tarjeta deseada está indexada?



• En primer lugar, debe asegurarse de que el tipo de tarjeta en Docsvision coincida con los datos especificados en la configuración de Elascticsearch.
• En segundo lugar, espere la indexación de la matriz de tarjetas: si entra en Docsvision, debería pasar algún tiempo antes de que los datos aparezcan en el almacenamiento.
• En tercer lugar, puede buscar una tarjeta por CardID. Esto se puede hacer a pedido:

http: // localhost: 9200 / _search? q = _id = 2116C498-9D34-44C9-99B0-CE89465637C9

Si la tarjeta está en la tienda, veremos sus datos "en bruto", de lo contrario, veremos algo como esta respuesta:


Busque una tarjeta en el nodo Elasticsearch


Encuentre el documento por la coincidencia exacta del campo Descripción:
http: // localhost: 9200 / _search? q = descripción: TV1 saliente
Resultado:


buscar un documento que tenga una entrada 'Bandeja de entrada' en Descripción
http: // localhost: 9200 / _search? q = descripción como entrante
Resultado:


Busque una tarjeta por el contenido del archivo adjunto


Encuentre todas las tarjetas del tipo de documento:
http: // localhost: 9200 / _search? q = _type: CardDocument

o todas las tarjetas del tipo de tarea:
http: // localhost: 9200 / _search? q = _type: CardTask

Usando las construcciones y y los parámetros que Elasticsearch devuelve como JSON, puede ensamblar la siguiente solicitud:
http: // localhost: 9200 / _search? q = _type: CardTask y Employee_RoomNumber: Office eagle y Employee_FirstName: Konstantin

Mostrará todas las tarjetas de tipo de trabajo, entre los usuarios que tienen FirstName = Konstantin y están en Eagle Office.
Además de LIKE, hay otros parámetros documentados:
a diferencia de campos, documentos, contenido, etc.
Todos ellos se describen aquí .

¡Eso es todo por hoy!

# docsvision # docsvisionECM

Enlaces utiles:
  1. Cliente Insomnia Rest https://insomnia.rest/download/#windows
  2. https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-get.html
  3. https://www.elastic.co/guide/en/elasticsearch/reference/1.4/_exploring_your_data.html
  4. https://stackoverflow.com/questions/50278255/elasticsearch-backup-on-windows-and-restore-on-linux
  5. https://z0z0.me/how-to-create-snapshot-and-restore-snapshot-with-elasticsearch/
  6. https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-mlt-query.html#_document_input_parameters
  7. http://qaru.site/questions/15663281/elasticsearch-backup-on-windows-and-restore-on-linux

Source: https://habr.com/ru/post/449304/


All Articles