SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
Elasticsearch
Aggregations
E eu?2
Waldemar Neto @waldemarnt
http://walde.co/
Quanto mais, melhor!3
Vamos falar de que?4
Vamos falar de que?5
AGGREGATIONS
Elasticsearch
” Banon. Shay
7
“Elasticsearch is a search server based on Lucene. It provides
a distributed, multitenant-capable full-text search engine
with a RESTful web interface and schema-free JSON
documents. Elasticsearch is developed in Java and is released
as open source under the terms of the Apache License.”
8 Quem usa?
Fonte: https://www.elastic.co/use-cases
O Apache Lucene9
REST API10
Termos comuns
● Cluster
● Node
● Index
● Shard
● Replica
● Type
● Document
● Term
11
Índice invertido, onde a magia acontece
Term Doc_1 Doc_2 Doc_3
Waldemar x x
Bicicleta x x x
Avião x
12
1. Score
1.1. Bicicleta 3
1.2. Waldemar 2
1.3. Avião 1
Overview do ecossistema13
CLUSTER
NODE
SHARD REPLICA
Escalonamento14
CLUSTER
NODE 1 - MASTER
SHARD1
REPLICA
3
NODE 2
SHARD2
REPLICA
1
NODE 3
SHARD3
REPLICA
2
Indexando um documento15
CLUSTER
NODE 1 - MASTER
SHARD1
REPLICA
3
NODE 2
SHARD2
REPLICA
1
NODE 3
SHARD3
REPLICA
2
CLIENT
Buscando documentos16
CLUSTER
NODE 1 - MASTER
SHARD1
REPLICA
3
NODE 2
SHARD2
REPLICA
1
NODE 3
SHARD3
REPLICA
2
CLIENT
Interagindo com o servidor17
Estrutura de dados
1. Index
2. Type
3. Document
18
1 2
3
RESTful Response
Na linha do RESTful
index
type
document reference(id)
19
parameters
Mapping
▹ NoSql style
▹ Pode ser criado manualmente
▹ Pode ser alterado dinamicamente
20
O que o elasticsearch me oferece?
▹ Queries
▹ Filtros
▹ Geolocation
▹ Aggregations
▹ Full Text Search
▹ Escalabilidade
▹ Comunicação RESTful
21
O que são aggregations?
”
Com aggregations é possível ter um overview
dos dados. Ao invés de olhar por documentos
individuais. É possível analisar e classificar
completamente um grupo de dados.
23
Aggregations na vida real!
24
Bora ver na prática?
25 Buckets
Itens a serem agrupados26
Agrupando por marcas27
Resultado28
Agrupando por tamanhos29
Resultado30
31 Metrics
32 Valor médio das cervejas
Tipos de Buckets33
● Children Aggregation
● Date Histogram Aggregation
● Date Range Aggregation
● Filter Aggregation
● Filters Aggregation
● Geo Distance Aggregation
● GeoHash grid Aggregation
● Global Aggregation
● Histogram Aggregation
● IPv4 Range Aggregation
● Missing Aggregation
● Nested Aggregation
● Range Aggregation
● Reverse nested Aggregation
● Sampler Aggregation
● Significant Terms
Aggregation
● Terms Aggregation
Tipos de Metrics
● Avg Aggregation
● Cardinality Aggregation
● Extended Stats Aggregation
● Geo Bounds Aggregation
● Geo Centroid Aggregation
● Max Aggregation
● Min Aggregation
● Percentiles Aggregation
● Percentile Ranks Aggregation
● Scripted Metric Aggregation
34
● Stats Aggregation
● Sum Aggregation
● Top hits Aggregation
● Value Count Aggregation
35
36
37
38
39
40
Onde aprende?
42
43
44
E ERAS ISSO
Thanks!
Perguntas?
https://github.com/waldemarnt
https://twitter.com/waldemarnt
https://fb.com/waldemarnt
http://walde.co
45

Weitere ähnliche Inhalte

Andere mochten auch

Zabbix API at FISL12 by Takanori Suzuki
Zabbix API at FISL12 by Takanori SuzukiZabbix API at FISL12 by Takanori Suzuki
Zabbix API at FISL12 by Takanori Suzuki
takanori suzuki
 

Andere mochten auch (19)

Desenvolvendo com PHP e Docker
Desenvolvendo com PHP e DockerDesenvolvendo com PHP e Docker
Desenvolvendo com PHP e Docker
 
Zabbix - Alem da Infraestrutura - Parte 2
Zabbix - Alem da Infraestrutura - Parte 2Zabbix - Alem da Infraestrutura - Parte 2
Zabbix - Alem da Infraestrutura - Parte 2
 
Zabbix meetup RJ: Integrações e opensource
Zabbix meetup RJ: Integrações e opensourceZabbix meetup RJ: Integrações e opensource
Zabbix meetup RJ: Integrações e opensource
 
Aula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMPAula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMP
 
Zabbix meetup RJ: Infra, tuning e documentação
Zabbix meetup RJ: Infra, tuning e documentaçãoZabbix meetup RJ: Infra, tuning e documentação
Zabbix meetup RJ: Infra, tuning e documentação
 
Gerenciamento de Redes com Zabbix
Gerenciamento de Redes com ZabbixGerenciamento de Redes com Zabbix
Gerenciamento de Redes com Zabbix
 
Monitoramento Opensource com Zabbix
Monitoramento Opensource com ZabbixMonitoramento Opensource com Zabbix
Monitoramento Opensource com Zabbix
 
What's new in Elasticsearch v5
What's new in Elasticsearch v5What's new in Elasticsearch v5
What's new in Elasticsearch v5
 
Zabbix: Apresentação meetup Fortaleza/CE (Brasil)
Zabbix: Apresentação meetup Fortaleza/CE (Brasil)Zabbix: Apresentação meetup Fortaleza/CE (Brasil)
Zabbix: Apresentação meetup Fortaleza/CE (Brasil)
 
Workshop de Monitoramento com Zabbix e OCS
Workshop de Monitoramento com Zabbix e OCSWorkshop de Monitoramento com Zabbix e OCS
Workshop de Monitoramento com Zabbix e OCS
 
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
 
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro SalesAula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
 
Monitoramento de ativos com zabbix
Monitoramento de ativos com zabbixMonitoramento de ativos com zabbix
Monitoramento de ativos com zabbix
 
Zabbix API at FISL12 by Takanori Suzuki
Zabbix API at FISL12 by Takanori SuzukiZabbix API at FISL12 by Takanori Suzuki
Zabbix API at FISL12 by Takanori Suzuki
 
Elasticsearch Introduction to Data model, Search & Aggregations
Elasticsearch Introduction to Data model, Search & AggregationsElasticsearch Introduction to Data model, Search & Aggregations
Elasticsearch Introduction to Data model, Search & Aggregations
 
Zabbix Smart problem detection - FISL 2015 workshop
Zabbix Smart problem detection - FISL 2015 workshopZabbix Smart problem detection - FISL 2015 workshop
Zabbix Smart problem detection - FISL 2015 workshop
 
Monitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHELMonitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHEL
 
ELK introduction
ELK introductionELK introduction
ELK introduction
 
Zabbix FLISOL Campinas 28-04-2012
Zabbix FLISOL Campinas 28-04-2012Zabbix FLISOL Campinas 28-04-2012
Zabbix FLISOL Campinas 28-04-2012
 

Ähnlich wie Elasticsearch Aggregations

Indexação e busca baseada em metadados em um sistema P2P Híbrido
Indexação e busca baseada em metadados em um sistema P2P HíbridoIndexação e busca baseada em metadados em um sistema P2P Híbrido
Indexação e busca baseada em metadados em um sistema P2P Híbrido
Marco André Machado
 

Ähnlich wie Elasticsearch Aggregations (20)

Como o elasticsearch salvou minhas buscas
Como o elasticsearch salvou minhas buscasComo o elasticsearch salvou minhas buscas
Como o elasticsearch salvou minhas buscas
 
Symfony2 e Elasticsearch com FosElasticaBundle
Symfony2 e Elasticsearch com FosElasticaBundleSymfony2 e Elasticsearch com FosElasticaBundle
Symfony2 e Elasticsearch com FosElasticaBundle
 
cakephp 3.0 o bolo ainda serve muita gente
cakephp 3.0 o bolo ainda serve muita gentecakephp 3.0 o bolo ainda serve muita gente
cakephp 3.0 o bolo ainda serve muita gente
 
Cakephp 3.0 o bolo ainda serve muita gente
Cakephp 3.0 o bolo ainda serve muita genteCakephp 3.0 o bolo ainda serve muita gente
Cakephp 3.0 o bolo ainda serve muita gente
 
Pesquisa do Sapo
Pesquisa do SapoPesquisa do Sapo
Pesquisa do Sapo
 
Apresentação
ApresentaçãoApresentação
Apresentação
 
TDC2016SP - Trilha Banco de Dados
TDC2016SP - Trilha Banco de DadosTDC2016SP - Trilha Banco de Dados
TDC2016SP - Trilha Banco de Dados
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documento
 
TDC2016POA | Trilha PHP - Desenvolvendo um buscador com PHP e Elasticsearch
TDC2016POA | Trilha PHP - Desenvolvendo um buscador com PHP e ElasticsearchTDC2016POA | Trilha PHP - Desenvolvendo um buscador com PHP e Elasticsearch
TDC2016POA | Trilha PHP - Desenvolvendo um buscador com PHP e Elasticsearch
 
Elasticsearch: o desafio como banco principal e cuidados em produção
Elasticsearch: o desafio como banco principal e cuidados em produçãoElasticsearch: o desafio como banco principal e cuidados em produção
Elasticsearch: o desafio como banco principal e cuidados em produção
 
Tdc2016 trilha-banco-influx.ppt
Tdc2016 trilha-banco-influx.pptTdc2016 trilha-banco-influx.ppt
Tdc2016 trilha-banco-influx.ppt
 
InfluxDb: como monitorar milhares de dados por segundo em real time
InfluxDb: como monitorar milhares de dados por segundo em real time InfluxDb: como monitorar milhares de dados por segundo em real time
InfluxDb: como monitorar milhares de dados por segundo em real time
 
Desenvolvendo um buscador com PHP e Elasticsearch - Fernando Silva - Tchelinu...
Desenvolvendo um buscador com PHP e Elasticsearch - Fernando Silva - Tchelinu...Desenvolvendo um buscador com PHP e Elasticsearch - Fernando Silva - Tchelinu...
Desenvolvendo um buscador com PHP e Elasticsearch - Fernando Silva - Tchelinu...
 
Mongo db
Mongo dbMongo db
Mongo db
 
Primeiros Passos Com Elasticsearch
Primeiros Passos Com ElasticsearchPrimeiros Passos Com Elasticsearch
Primeiros Passos Com Elasticsearch
 
Introdução no sql mongodb java
Introdução no sql mongodb javaIntrodução no sql mongodb java
Introdução no sql mongodb java
 
Instanciando a Arquitetura Lambda com GraphX e Elasticsearch 2.0 em uma apl...
Instanciando a Arquitetura Lambda com  GraphX e Elasticsearch 2.0  em uma apl...Instanciando a Arquitetura Lambda com  GraphX e Elasticsearch 2.0  em uma apl...
Instanciando a Arquitetura Lambda com GraphX e Elasticsearch 2.0 em uma apl...
 
Indexação e busca baseada em metadados em um sistema P2P Híbrido
Indexação e busca baseada em metadados em um sistema P2P HíbridoIndexação e busca baseada em metadados em um sistema P2P Híbrido
Indexação e busca baseada em metadados em um sistema P2P Híbrido
 
Como arquiteturas de dados quebram
Como arquiteturas de dados quebramComo arquiteturas de dados quebram
Como arquiteturas de dados quebram
 
Garinpando no MongoDB sem picareta e com elegância
Garinpando no MongoDB sem picareta e com elegânciaGarinpando no MongoDB sem picareta e com elegância
Garinpando no MongoDB sem picareta e com elegância
 

Mehr von Waldemar Neto

Mehr von Waldemar Neto (10)

12 Factor App Docker na Cloud e outras buzzwords
12 Factor App Docker na Cloud e outras buzzwords12 Factor App Docker na Cloud e outras buzzwords
12 Factor App Docker na Cloud e outras buzzwords
 
12 Factor APPS, docker na cloud e outras buzzwords
12 Factor APPS, docker na cloud e outras buzzwords12 Factor APPS, docker na cloud e outras buzzwords
12 Factor APPS, docker na cloud e outras buzzwords
 
Construindo APIs testáveis com Node.js - RSJS
Construindo APIs testáveis com Node.js - RSJSConstruindo APIs testáveis com Node.js - RSJS
Construindo APIs testáveis com Node.js - RSJS
 
O que é docker?
O que é docker?O que é docker?
O que é docker?
 
No mundo das ap is com Restful webservices
No mundo das ap is com Restful webservicesNo mundo das ap is com Restful webservices
No mundo das ap is com Restful webservices
 
No sql no mundo da persistencia poliglota
No sql no mundo da persistencia poliglotaNo sql no mundo da persistencia poliglota
No sql no mundo da persistencia poliglota
 
Android para padawns
Android para padawnsAndroid para padawns
Android para padawns
 
CakePHP workshop ifsul
CakePHP workshop ifsulCakePHP workshop ifsul
CakePHP workshop ifsul
 
O que é esteganografia
O que é esteganografiaO que é esteganografia
O que é esteganografia
 
Divisão de conhecimento e open source
Divisão de conhecimento e open sourceDivisão de conhecimento e open source
Divisão de conhecimento e open source
 

Elasticsearch Aggregations