Slide 1

Slide 1 text

Querétaro Software Development Meetup Sesión #10 Junio, 2019

Slide 2

Slide 2 text

La finalidad del Meetup es tener un lugar donde compartir experiencias (técnicas o no), ideas y tendencias en la industria de IT Querétaro Software Development Meetup

Slide 3

Slide 3 text

Querétaro Software Development Meetup Redes: facebook.com/groups/queretaro.software.development/ twitter.com/qrosoftwaredev meetup.com/qro-software

Slide 4

Slide 4 text

Agenda Serverless Computing con Terraform en AWS Elasticsearch Pt II: Búsquedas en índices invertidos Presentado por Osvaldo Mercado (P\S\L Group) Presentado por Gabriel de Obieta (Konfio) DevOps Moderno: el futuro de la plomería, plataformas y big data RIFAS | BREAK | ANUNCIOS PARROQUIALES Presentado por Gustavo Barrón (ring)

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

¡Gracias por apoyar 10 ediciones!

Slide 8

Slide 8 text

Junio, 2019 Elasticsearch Pt II: Búsquedas en índices invertidos Presentado por Osvaldo Mercado Coss Querétaro Software Development Meetup

Slide 9

Slide 9 text

9 Osvaldo Mercado Coss ● De Guadalajara, México ● Technical Project Manager en P\S\L Group ● Estudios en Multimedia, de alguna manera termine codeando en el backend ○ Stack: LA|EMP, PHP + Framework, NodeJS, Ruby ○ DevOps: AWS + Vagrant + Chef ○ DBs: MySQL/MariaDB, Amazon Aurora, CouchDB, Couchbase, MongoDB y desgraciadamente SQL Server ○ Interesado en Software Escalable, DevOps & Perros Un poco sobre mi: Hola! https://mx.linkedin.com/in/osvaldomercado @omercadocoss [email protected]

Slide 10

Slide 10 text

Elasticsearch es un motor de búsqueda y análisis open source, capaz de solucionar numerosos casos de uso. Querétaro Software Development Meetup

Slide 11

Slide 11 text

11 ¿Qué hicimos en la 1ra Sesión de Elasticsearch? Recapitulando... Instalamos Elasticsearch Creamos un índice Buscamos datos Insertamos datos Analizamos (brevemente) cómo se insertan datos

Slide 12

Slide 12 text

12 ¿Porqué Elasticsearch? Recapitulando...

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

20 Entendiendo el Índice Invertido Entendiendo la base de Elasticsearch (o Lucene) string 1: “HOY HAY MEETUP” string 2: “HOY VA A LLOVER” string 3: “¿MAÑANA VA A LLOVER?” HOY (1,0);(2,0) HAY (1,4) MEETUP (1,8) VA (2,4);(3,8) A (2,7);(3,11) LLOVER (2,9);(3,12) MAÑANA (3,1)

Slide 21

Slide 21 text

21 Entendiendo el Índice Invertido Entendiendo la base de Elasticsearch (o Lucene) curl -XGET -H'content-type:application/json' https://search-qro-meetup-demo-ai5f55oexpe57gvvwoawfbrke4.us-east-1.es.amazonaws.com/_analyze/ ?pretty -d'{"analyzer":"standard", "text":"HOY HAY MEETUP"}’

Slide 22

Slide 22 text

22 Conozcamos Kibana Cómo podemos trabajar mejor con Elasticsearch

Slide 23

Slide 23 text

23 Conozcamos Kibana Cómo podemos trabajar mejor con Elasticsearch

Slide 24

Slide 24 text

24 Conozcamos Kibana Cómo podemos trabajar mejor con Elasticsearch

Slide 25

Slide 25 text

25 Conozcamos Kibana Cómo podemos trabajar mejor con Elasticsearch

Slide 26

Slide 26 text

26 Entendiendo el Índice Invertido Entendiendo la base de Elasticsearch (o Lucene)

Slide 27

Slide 27 text

27 Entendiendo el Índice Invertido Entendiendo la base de Elasticsearch

Slide 28

Slide 28 text

28 Entendiendo el Índice Invertido Entendiendo la base de Elasticsearch

Slide 29

Slide 29 text

29 Entendiendo el Índice Invertido Entendiendo la base de Elasticsearch ¿Y... sí se guarda así?

Slide 30

Slide 30 text

Tus datos se enriquecen por medio de analyzers, filters, tokenizers, para que se adecuen a tu caso de uso, cualquiera que sea, en el lenguaje que sea, en la cantidad que sea

Slide 31

Slide 31 text

31 Y si aguanta? Si podemos confiar en Elasticsearch para manejo de grandes cantidades de datos? 10,000,000 millones de docs?

Slide 32

Slide 32 text

32 Mi último caso de uso, solucionado con Elasticsearch Un sistema de sinónimos de palabras junto con reglas de uso por país Carro Automóvil Camioneta Coche Auto Vehículo Nave

Slide 33

Slide 33 text

33 Mi último caso de uso, solucionado con Elasticsearch Un sistema de sinónimos de palabras junto con reglas de uso por país Carro Automóvil Camioneta Coche Auto Vehículo Nave

Slide 34

Slide 34 text

34 Mi último caso de uso ,solucionado con Elasticsearch Un sistema de sinónimos de palabras junto con reglas de uso por país

Slide 35

Slide 35 text

Puedes aplicar reglas por key extendiendo así múltiples reglas por documento, que puede o no puede traer esos datos, porque tienes el beneficio de que es un document storage

Slide 36

Slide 36 text

36 Haciendo combinaciones de usos en Elasticsearch Una vez que empiezas a descubrir el poder detrás de Elasticsearch

Slide 37

Slide 37 text

37 ¿Porqué Elasticsearch? Creo que queda corta estas definiciones para un sistema tan poderoso y complejo

Slide 38

Slide 38 text

Gracias! Bienvenidas las preguntas, comentarios, quejas y sugerencias [email protected] https://mx.linkedin.com/in/osvaldomercado @omercadocoss Querétaro Software Development Meetup Patrocinadores del mes:

Slide 39

Slide 39 text

Links Recomendados Recomendaciones personales acerca del tema Elasticsearch Queries: A Thorough Guide https://logz.io/blog/elasticsearch-queries/ Synonyms in Elasticsearch https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis- synonym-tokenfilter.html Amazon Elasticsearch Service https://aws.amazon.com/es/elasticsearch-service/pricing/ Inverted Index https://xlinux.nist.gov/dads/HTML/invertedIndex.html Getting Started with Elasticsearch https://www.elastic.co/guide/en/elasticsearch/guide/master/getting-started.html Document Oriented Database https://en.wikipedia.org/wiki/Document-oriented_database Elastic Cloud https://www.elastic.co/cloud/ Kibana https://www.elastic.co/products/kibana Elasticsearch ICU now understands emoji! https://jolicode.com/blog/elasticsearch-icu-now-understands-emoji Elasticsearch explain - analyze https://www.elastic.co/guide/en/elasticsearch/reference/6.8/_explain_analyze.html An overview of Elasticsearch and its usages https://towardsdatascience.com/an-overview-on-elasticsearch-and-its-usage-e26df1d1d 24a What happens when a document is indexed in Elasticsearch https://medium.com/elasticsearch/what-happens-when-a-document-is-indexed-in-elasti csearch-16b7ae3415bc A dive into Elasticsearch Storage https://www.elastic.co/blog/found-dive-into-elasticsearch-storage