comprensión básica acerca de la exploración profunda de los Elasticsearch ES

comprensión básica acerca de la Elasticsearch

Elasticsearch es un índice del motor de análisis distribuido en tiempo real, uso interno Lucene para indexar y buscar.
En tiempo real: se refiere a los nuevos datos se recuperarán rápidamente;
distribuida: Se puede ajustar dinámicamente el tamaño del clúster, la expansión elástica.
Lucene: marco de búsqueda de texto está escrito en el lenguaje Java para el procesamiento de datos de texto sin formato, pero es sólo una librería que proporciona la indexación, realizar una interfaces de búsqueda, pero no proporciona servicios distribuidos.

El concepto básico de ES

  • clúster: un clúster representa el clúster tiene múltiples nodos, incluyendo un nodo maestro, el nodo es elegido, interpretado al centro.
  • fragmentos: índice de fragmentación del representante, ES puede ser un índice completo en una pluralidad de fragmentos, un índice se puede dividir en múltiples búsqueda, distribuida implementada.
  • réplicas: una copia del índice representativo, ES puede configurar múltiples copias del índice, tanto para mejorar la tolerancia a fallos del sistema, el equilibrio también puede buscar solicitud de carga.
  • recuperación: Recuperación de Datos representantes o redistribución de datos de llamadas, es serán redistribuidos de acuerdo con el índice de carga de la máquina cuando se unen los nodos o dejar de fumar, la recuperación de datos se bloqueará cuando se reinicie el nodo.
  • río: ES representativos de una fuente de datos, sino también otros medios de almacenamiento (tal como una base de datos) un método para Sincronizar datos de ES. (River
    incluyendo couchdb, RabbiMQ etc.)
  • gataway: Índice ES representa el almacenamiento de instantáneas, ES predeterminado es el primer índice en la memoria, cuando la memoria se llena, y luego persistido en un disco duro local. Cuando es cerrada reiniciar, es índice lee los datos de copia de seguridad del disco duro. es compatible con múltiples
    formas de puerta de enlace: el sistema local de archivos (por defecto), sistema de archivos distribuido, HDFS de Hadoop y almacenamiento en la nube;
  • , Existen es nombre los automáticos nodos mecanismo de descubrimiento de nodos es mirarán a través de la emisión, y luego para la comunicación entre nodos a través del protocolo de multidifusión: discovery.zen.
  • Transporte: es dentro jiedian o en nombre de las interactúa con el cliente de racimo, el valor predeterminado es utilizar el protocolo TCP interna para interactuar, mientras que el apoyo JSON, el ahorro y así sucesivamente.

Es de algunas características

Escalabilidad: A modo de datos de sector en varias piezas asignadas a cada máquina a fin de lograr escalabilidad horizontal del sistema.
lectura en paralelo: la lectura y escritura de la fragmentación de la unidad es la rebanada objeto subyacente básica se divide enorme índice, por lo que el lector pueda funcionar en paralelo, realizado por varios equipos juntos.
Resiliencia: una copia de la forma, copiar los datos en una pluralidad de copias, se colocaron en diferentes máquinas.
actualizaciones simultáneas: ES copia de los puntos de datos de las dos partes principales, es decir, el fragmento principal y sub-fragmento. datos maestros como los datos de autoridad, el proceso de escritura para escribir la partición primaria, y luego escribir un vicio partición éxito, la fase de recuperación de la partición primaria basada.
En tiempo real: (un disco no se ha escrito anteriormente) después de tanto como sea posible para que el nuevo índice puede ser indexado, sistema ES escribe datos en la memoria caché del sistema, los datos están fuera legible.

estructura de índice ES

ES es una orientada documento. ES variedad de texto almacenado en la forma de un documento, el documento puede ser un mensaje, un registro, o un contenido de la página.
En términos generales, ES sólo es compatible con formato JSON, se refiere a los ES utilizando JSON como formato de serialización documentos.
En la estructura de almacenamiento por _index, _ tipo, y _ID tres parámetros para identificar de forma única un documento:

  • _index: uno o más puntos para el espacio de nombres fragmentación lógico-física
  • _type: a los datos de patrón de conjunto es conjunto idéntico o similar de
  • _id: etiqueta de documento generado automáticamente por el sistema o usuario proporcionada

Índice ES contiene una gran cantidad de la rebanada, una rebanada es un índice Lucene, que en sí es un motor de búsqueda completa que se puede realizar de forma independiente la indexación y la tarea de búsqueda.
índice Lucene ha hecho una gran cantidad de segmentos, cada segmento es un índice invertido.

Utilice índice invertido después, una vez que se escriben en el archivo de invariantes: el acceso al archivo no requiere de bloqueo, el índice puede ser leído cuando la memoria caché del sistema de archivos y así sucesivamente.
Con el fin de mantener el índice de consistencia, cuando modificamos un documento, se marcará el índice original como eliminado (pero no eliminado físicamente), utilice el nuevo índice.

En el ES, vaciados una vez por segundo caché de escritura, los datos se escriben en el archivo, un proceso llamado de actualización, actualice cada vez que crea un nuevo segmento de Lucene.
Pero demasiado segmento de Lucene afectará a su rendimiento, por lo que el uso de ES se fusionará en segmentos más pequeños de gran estrategia de segmento: y en el proceso y se marca como datos eliminados no se escribe en un nuevo segmento, al final del proceso de fusión se eliminan los datos del segmento de edad, los datos marcados para su eliminación no se eliminan del disco.

Cómo entender el índice invertido?
índice Forward: se puede entender como el resultado de un documento de recuento de palabras estadístico: Hola mundo 2 veces 1 Tiempos
índices invertidos: índice invertido es lograr "palabra - matriz documento" de un formato de almacenamiento particular, por índice invertido, usted puede conseguir rápidamente una lista de documentos que contengan la palabra en base a la palabra.
Aquí Insertar imagen Descripción

clúster ES

clúster ES utiliza un modo maestro-esclavo

  • Este modo se puede simplificar el diseño del sistema, el Maestro como los nodos de autoridad, sólo una parte de la operación realizada por el Maestro, y mantiene clúster metadatos.
  • Hay un solo nodo problemas de recuperación de desastres necesidad Maestro fallo de nodo, y el tamaño del clúster está limitado por las capacidades de gestión de nodo maestro.

nodo de clúster papel ES
nodo maestro

  • Responsable de lado las operaciones relacionadas con clúster, gestión de clusters cambia.
  • estado Cluster por el nodo maestro mantiene, si el nodo maestro recibe los datos de actualizaciones de nodos, estas actualizaciones se transmitirán a otros nodos en el clúster de manera que cada nodo del estado de clúster hasta la fecha.
node.master: true
node.data: false

nodo de datos

  • Responsable de guardar los datos, realizar operaciones de datos-relacionados: Cuajada, búsqueda, agregación y así sucesivamente.
  • Datos de la CPU nodo, memoria, I / O requiere relativamente alto
  • Generalmente, de escritura de datos de proceso y de datos de nodos interactúan solamente. Y no se ocupa el nodo principal.
node.master: false
node.data: true
node.ingest: false

nodo Pretratamiento

  • Antes de preprocesamiento operación antes de permitir que el archivo de índice, es decir, los datos se escriben, y Pipeline (tubería), los datos se convierten por un cierto número predefinido de Procesadores (procesador), enriquecidos.
  • Por defecto, todos los nodos en el lanzamiento de la ingesta.
node.master: false
node.data: false
node.ingest: master

nodo coordinador

  • El nodo de coordinación solicitará nodo de transmisión de datos para guardar los datos
  • Cada nodo de datos en una solicitud de ejecución local, y devuelve el nodo coordinador resultado. Después de coordinar la colección de nodos de datos, los resultados de cada nodo de datos en un único resultados globales.
  • Debido a que tiene una gran cantidad de recursos de CPU y memoria para recoger y clasificar los resultados, por lo que hay nodos de coordinación, puede ayudar a aliviar la presión sobre los otros nodos.
node.master: false
node.data: false
node.ingest: false

nodo de la tribu

  • tribal nodo puede actuar como clientes conjuntos a través de múltiples grupos de
  • Es un equilibrador de carga inteligente en esencia, proporciona la funcionalidad para encaminar peticiones
  • Ahora se ha sustituido por el nodo de coordinación
node.master: false
node.data: false

el estado de salud de clústeres

Cong integridad de datos punto de vista, el estado de salud de la agrupación se divide en tres índices también se aplican para un solo :()

  • Verde: todos los cortes primarios y secundarios rebanadas están funcionando normalmente.
  • Amarillo: Todas las rebanadas maestros están funcionando normalmente, pero no todos los sub-fragmentos están funcionando normalmente. Esto significa que el riesgo de fallo de nodo único.
  • Rojo: el fragmento principal no funcionaba correctamente.

la expansión de clúster

Cuando la expansión de la agrupación, añadir un nodo, de manera uniforme rebanará asignado a cada nodo de la agrupación, la indexación de este modo, y la búsqueda de equilibrio de carga, que se completa automáticamente.
Cuando un clúster falla ES, ES procesar automáticamente nodos excepción:

  • Cuando las anomalías nodo maestro, el grupo de nodos primario reelección
  • Cuando una rebanada excepción principal, será promovido a fragmento sub-fragmento primaria

Procesar clúster extendido:
1. Cuando sólo un nodo: Hay tres fragmentos principales nodo1, no sub-rebanada
Aquí Insertar imagen Descripción
2. Agregar un segundo nodo, el sub-fragmento se asigna a Nodo2
Aquí Insertar imagen Descripción
3. adición de un tercer nodo , tres índices de nodo seis rebanadas (tres primaria tres) se asignan al clúster promedio
esto asegurará que el proceso principal y el fragmento de sub-fragmento no asignados al mismo nodo, a la pérdida de datos evitar causada por un solo fallo de nodo.
Aquí Insertar imagen Descripción

Publicados 231 artículos originales · ganado elogios 42 · Vistas a 60000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_40990818/article/details/104823076
Recomendado
Clasificación