SlideShare una empresa de Scribd logo
Elasticsearch 101
Training course (Part 1)
Training contents
- Qué es Elasticsearch?
- Introducción
- Casos de uso típicos
- Familia de Elastic: Kibana, Logstash, Beats, APM...
- Qué hay que saber sobre Elasticsearch
- Replicas, Shards y nodos
- Trucos de configuración
Qué es Elasticsearch?
- El objetivo de ElasticSearch era tener un buscador
escalable.
- Funciona sobre Lucene.
- Creado en 2010 para competir con Apache Solr.
- Arquitectura distribuida de saque en su diseño
inicial
- Fácil de usar desde cualquier lenguaje de
programación vía REST APIs
Typical use-cases
- Datos (relativamente) estáticos: un dataset grande
(o pequeño) que puede crecer o cambiar lentamente
como un catálogo de productos.
- Series temporales: datos sobre eventos asociados a
un momento particular en el tiempo que suelen crecer
muy rápido tales como ficheros de log o métricas de
performance.
Elastic family
- Elasticsearch es un buscador diseñado para ser
escalable y fácil de usar en cualquier lenguaje.
- Logstash & Beats se usan para transformar datos de
los logs y guardarlos en Elasticsearch.
- Kibana es la plataforma de visualización de analíticas
generadas desde Elasticsearch.
- APM es el nuevo producto estrella de Elastic diseñado
para el caso de uso de performance monitoring.
Primary shards and replica shards
Elastic node types
- Master node: coordina la topología de los datos.
Controla dónde están guardados los datos.
- Data node: Guarda los datos. Tanto réplicas como
shards.
- Otros: Ingest node, machine learning node,
transform node, etc...
Configuration tips: Cuántos shards?
- Heavy indexing: + shards
- Heavy search traffic: + réplicas
- Large dataset: Ajusta el número de shards para que
cada uno ocupe de 10 a 40 GB
- Small dataset: Deja un único shard
Configuration tips: Health status
- VERDE: Todos los shards - primarios y secundarios - están asignados
correctamente.
- AMARILLO: Los shards primarios están bien, pero alguna réplica
secundaria no está asignada.
- ROJO: Un shard primario no está asignado en el clúster
Configuration tips
- Los shards deben tener un tamaño de entre 10GB -
40GB
- Hay que escoger un número divisible de shards para
usar la shrink y la rollover api.
- Si tu clúster va a crecer, considera tener másters
dedicados. Mínimo 3 para evitar split-brain.
- Usar dynamic=strict para que no se puedan auto
añadir campos en el índice.
Configuration tips
- Setear la ram del data-nodo a la mitad -1 i.e. para 64GB
de RAM, pondriamos 31GB para el proceso Java
- Idealmente, data-nodes con 64GB de RAM y
master-nodes con 16GB de RAM
- No usar nunca kill -9 {process_id}, usar kill
{process_id}. Los buffers no se cierran bien.
- Usar Rally para tests de carga.

Más contenido relacionado

PPT
Administración de base de datos oracle - sesion 9
PPT
Administración de base de datos oracle - sesion 10
PPTX
Introducción a Apache Spark
PPT
IMPLEMENTACION DEL RAID5
PDF
Arquitectura a escala
PDF
Arquitectura a escala
PDF
Bases de datos NoSQL - Huancayo - 2010
PPTX
Administración de base de datos oracle - sesion 9
Administración de base de datos oracle - sesion 10
Introducción a Apache Spark
IMPLEMENTACION DEL RAID5
Arquitectura a escala
Arquitectura a escala
Bases de datos NoSQL - Huancayo - 2010

Similar a Elasticsearch 101 (Part 1) (20)

PPTX
Introducción a Microsoft Azure SQL Data Warehouse
PDF
Taller Redis
PPTX
Big data y las apis (big data spain)
PPTX
El mundo Big Data y las APIs
PPTX
Monta una Infraestructura Big Data para tu Empresa - Sesión I
PDF
MySQL Cluster: El ‘qué’ y el ‘cómo’.
PPTX
Servicios de Bases de Datos de AWS
PPTX
Apache cassandra
PPTX
Actividad 4
PDF
6b Lectura BASE DE DATOS NoSQL - MANUAL INSTRUCTIVO.pdf
PPTX
Benchmarking
PPTX
Oracle
PPTX
Escalando para sus primeros 10 millones de usuarios
PDF
Escalando para sus primeros 10 millones de usuarios
PDF
Primeros pasos con elasticsearch
PPTX
Big Data en Azure: Azure Data Lake
PDF
Servicios de bases de datos administradas en AWS
PDF
Almacenamiento de objetos en Ceph y su API S3 (LibreCon 2017)
DOCX
Tres gestores de bases de datos
PDF
Big Data: Arquitectura y mejores prácticas en AWS
Introducción a Microsoft Azure SQL Data Warehouse
Taller Redis
Big data y las apis (big data spain)
El mundo Big Data y las APIs
Monta una Infraestructura Big Data para tu Empresa - Sesión I
MySQL Cluster: El ‘qué’ y el ‘cómo’.
Servicios de Bases de Datos de AWS
Apache cassandra
Actividad 4
6b Lectura BASE DE DATOS NoSQL - MANUAL INSTRUCTIVO.pdf
Benchmarking
Oracle
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
Primeros pasos con elasticsearch
Big Data en Azure: Azure Data Lake
Servicios de bases de datos administradas en AWS
Almacenamiento de objetos en Ceph y su API S3 (LibreCon 2017)
Tres gestores de bases de datos
Big Data: Arquitectura y mejores prácticas en AWS
Publicidad

Último (11)

PPTX
Guia de power bi de cero a avanzado detallado
PDF
Frases de Fidel Castro. Compilación Norelys Morales Aguilera
PDF
[Ebook gratuito] Introducción a la IA Generativa, Instalación y Configuración...
PPT
laser seguridad a la salud humana de piel y vision en laser clase 4
PPTX
tema-2-interes-.pptx44444444444444444444
PDF
CAPACITACIÓN MIPIG - MODELO INTEGRADO DE PLANEACIÓN Y GESTIÓN
PPTX
Presentación de un estudio de empresa pp
PPTX
presentacion_energias_renovables_renovable_.pptx
PPTX
FUNCIONES DE CLASSROOM EN EL FUNCIONAMIENTO ESCOLAR
PDF
Mesopotamia y Egipto.pptx.pdf historia universal
PDF
Herramientaa de google google keep, maps.pdf
Guia de power bi de cero a avanzado detallado
Frases de Fidel Castro. Compilación Norelys Morales Aguilera
[Ebook gratuito] Introducción a la IA Generativa, Instalación y Configuración...
laser seguridad a la salud humana de piel y vision en laser clase 4
tema-2-interes-.pptx44444444444444444444
CAPACITACIÓN MIPIG - MODELO INTEGRADO DE PLANEACIÓN Y GESTIÓN
Presentación de un estudio de empresa pp
presentacion_energias_renovables_renovable_.pptx
FUNCIONES DE CLASSROOM EN EL FUNCIONAMIENTO ESCOLAR
Mesopotamia y Egipto.pptx.pdf historia universal
Herramientaa de google google keep, maps.pdf
Publicidad

Elasticsearch 101 (Part 1)

  • 2. Training contents - Qué es Elasticsearch? - Introducción - Casos de uso típicos - Familia de Elastic: Kibana, Logstash, Beats, APM... - Qué hay que saber sobre Elasticsearch - Replicas, Shards y nodos - Trucos de configuración
  • 3. Qué es Elasticsearch? - El objetivo de ElasticSearch era tener un buscador escalable. - Funciona sobre Lucene. - Creado en 2010 para competir con Apache Solr. - Arquitectura distribuida de saque en su diseño inicial - Fácil de usar desde cualquier lenguaje de programación vía REST APIs
  • 4. Typical use-cases - Datos (relativamente) estáticos: un dataset grande (o pequeño) que puede crecer o cambiar lentamente como un catálogo de productos. - Series temporales: datos sobre eventos asociados a un momento particular en el tiempo que suelen crecer muy rápido tales como ficheros de log o métricas de performance.
  • 5. Elastic family - Elasticsearch es un buscador diseñado para ser escalable y fácil de usar en cualquier lenguaje. - Logstash & Beats se usan para transformar datos de los logs y guardarlos en Elasticsearch. - Kibana es la plataforma de visualización de analíticas generadas desde Elasticsearch. - APM es el nuevo producto estrella de Elastic diseñado para el caso de uso de performance monitoring.
  • 6. Primary shards and replica shards
  • 7. Elastic node types - Master node: coordina la topología de los datos. Controla dónde están guardados los datos. - Data node: Guarda los datos. Tanto réplicas como shards. - Otros: Ingest node, machine learning node, transform node, etc...
  • 8. Configuration tips: Cuántos shards? - Heavy indexing: + shards - Heavy search traffic: + réplicas - Large dataset: Ajusta el número de shards para que cada uno ocupe de 10 a 40 GB - Small dataset: Deja un único shard
  • 9. Configuration tips: Health status - VERDE: Todos los shards - primarios y secundarios - están asignados correctamente. - AMARILLO: Los shards primarios están bien, pero alguna réplica secundaria no está asignada. - ROJO: Un shard primario no está asignado en el clúster
  • 10. Configuration tips - Los shards deben tener un tamaño de entre 10GB - 40GB - Hay que escoger un número divisible de shards para usar la shrink y la rollover api. - Si tu clúster va a crecer, considera tener másters dedicados. Mínimo 3 para evitar split-brain. - Usar dynamic=strict para que no se puedan auto añadir campos en el índice.
  • 11. Configuration tips - Setear la ram del data-nodo a la mitad -1 i.e. para 64GB de RAM, pondriamos 31GB para el proceso Java - Idealmente, data-nodes con 64GB de RAM y master-nodes con 16GB de RAM - No usar nunca kill -9 {process_id}, usar kill {process_id}. Los buffers no se cierran bien. - Usar Rally para tests de carga.