¡Conocimientos básicos de Elasticsearch! ! !

Resumen de Elasticsearch

ElasticSearch es un servidor de búsqueda basado en Lucene. Proporciona un motor de búsqueda distribuido de texto completo y un motor de análisis de datos, que puede realizar búsquedas de texto completo; búsqueda estructurada; análisis de datos, que oculta la complejidad y hace que la operación sea más conveniente y flexible. Elasticsearch proporciona Con la interfaz api restuful fácil de usar y la interfaz java, Lucene: En pocas palabras, es un paquete jar, que contiene varios códigos de búsqueda y establecimiento de índice invertido encapsulados, incluidos varios algoritmos, usamos java Al desarrollar, importe lucene.jar para iniciar el desarrollo.

Características de Elasticsearch:

Motor de almacenamiento de documentos distribuido, motor de búsqueda distribuido y motor de análisis,

Índice natural,
todos los datos de ES están indexados por defecto. Esto es lo opuesto a mysql. MySQL no agrega índice por defecto. Si desea agregar un índice, debe especificarlo. ES solo necesita explicar sin agregar un índice.

El fragmento natural, el clúster natural,
divide los datos en varios fragmentos. En el P0-P2 de la figura siguiente, varios fragmentos pueden formar un dato completo y estos fragmentos se pueden distribuir entre los nodos de la máquina en el clúster. Con el aumento continuo de datos, el clúster puede agregar varios fragmentos y colocar varios fragmentos en varias máquinas, lo que ha logrado el equilibrio de carga y la expansión horizontal.

Conceptos básicos en Elasticsearch:

Casi en tiempo real (NRT) (modelo fetal de Nie Weier)
Hay un retraso (aproximadamente 1 segundo) desde que se escriben los datos hasta que se buscan datos casi en tiempo real , y la búsqueda y el análisis realizados en base a los es pueden alcanzar el nivel

El clúster de nodo (nodo) y clúster (clúster)
es una colección de uno o más nodos (servidores), estos nodos guardan conjuntamente todos los datos y proporcionan funciones conjuntas de indexación y búsqueda en todos los nodos. Un clúster se determina mediante un ID de clúster único y se especifica un nombre de clúster (el valor predeterminado es "elasticsearch"). El nombre del clúster es muy importante, porque los nodos pueden unirse al clúster a través de este nombre de clúster y un nodo solo puede ser una parte del clúster.

(documento) La
unidad de datos más pequeña del documento es, compuesta por una cadena json, que contiene varios campos, y cada campo es un campo de datos.

(índice) El índice
contiene un grupo de datos de documentos con una estructura similar. Un índice tiene 5 fragmentos primarios de forma predeterminada, y un fragmento primario corresponde a un fragmento de réplica.

(tipo) Tipo
Cada índice tiene uno o más tipos. El tipo es una clasificación de datos lógica en el índice. Los documentos de un tipo deben tener el mismo campo

(Réplica)
Para mejorar el rendimiento de las consultas o lograr una alta disponibilidad, puede utilizar réplicas fragmentadas. La réplica es solo una copia exacta de un fragmento, y cada fragmento puede tener cero o más réplicas.

(Fragmentos)
Cuando hay una gran cantidad de documentos, es posible que un nodo no sea suficiente debido a limitaciones de memoria, capacidad del disco duro, capacidad de procesamiento insuficiente e incapacidad para responder a las solicitudes de los clientes lo suficientemente rápido. En este caso, los datos se pueden dividir en partes más pequeñas llamadas fragmentos. Cada fragmento se puede colocar en un servidor diferente, por lo que los datos se pueden distribuir entre los nodos del clúster.


La unidad más pequeña en el campo (Campo) ElasticSearch es equivalente a una columna de datos, similar a una clave en json.

(Mapeo) El
mapeo de esquema (mapeo de esquema, o mapeo para abreviar) se utiliza para definir la estructura del índice. Elasticsearch almacena información sobre campos en el mapeo. La asignación se envía como un objeto JSON en el archivo.

Comparación de Elasticsearch y base de datos

Índice (índices) -------------------------------- Bases de datos
Tipo de base de datos (tipo) -------- --------------------- Documento de hoja de datos de tabla
(documento) ----------------
Campo de fila de fila (campo) ------------------- Columnas

Kibana

Kibana es una herramienta de estadísticas de datos de la biblioteca de índices Elasticsearch basada en Node.js. Puede utilizar la función de agregación de Elasticsearch para generar varios gráficos, como gráficos de columnas, gráficos de líneas y gráficos circulares.
También proporciona una consola para operar los datos de índice de Elasticsearch y proporciona ciertos consejos de API, lo que hace que aprender
Elasticsearch sea ​​más conveniente y rápido. Inicie kibana, abra la carpeta descomprimida y haga doble clic para ejecutar el archivo elasticsearch.bat.

tokenizador ik

En la actualidad, el tokenizador ik es un complemento en Elaseticsearch, y la versión es compatible con Elasticsearch
. Antes de iniciar el tokenizador ik, debe ir a kibana.yml en la configuración para modificar el archivo y luego hacer doble clic para ejecutar el archivo que termina en kibana.bat. El tokenizador
es En la consulta de búsqueda, la segmentación de palabras se realiza según las palabras y la búsqueda se realiza según la segmentación de palabras.

Supongo que te gusta

Origin blog.csdn.net/zhang_yuanbai/article/details/108659290
Recomendado
Clasificación