Slide 1

Slide 1 text

#elasticsearch MAKE SENSE OF YOUR (BIG) DATA! David Pilato Technical advocate ! elasticsearch. @dadoonet

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

StartUp #elasticsearch data ?

Slide 4

Slide 4 text

StartUp #elasticsearch

Slide 5

Slide 5 text

StartUp #elasticsearch

Slide 6

Slide 6 text

StartUp #elasticsearch

Slide 7

Slide 7 text

StartUp #elasticsearch

Slide 8

Slide 8 text

StartUp #elasticsearch

Slide 9

Slide 9 text

#elasticsearch BIG data ?

Slide 10

Slide 10 text

#elasticsearch Source: http://www.csc.com/insights/flxwd/78931-big_data_just_beginning_to_explode 35.000.000.000.000.000 mb

Slide 11

Slide 11 text

#elasticsearch Source: http://www.thebigdatainsightgroup.com/site/article/big-data-infographic

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

StartUp #elasticsearch search = like % ? SELECT doc.*, country.* FROM doc, country WHERE doc.country_code = country.code AND doc.date_doc > to_date('2011-12', 'yyyy-mm') AND doc.date_doc < to_date('2012-01', 'yyyy-mm') AND lower(country.name) = 'france' AND lower(doc.comment) LIKE ‘%product%' AND lower(doc.comment) LIKE ‘%david%';

Slide 14

Slide 14 text

StartUp #elasticsearch Search engine ?

Slide 15

Slide 15 text

#elasticsearch elasticsearch ? plug & play REST/JSON scalable Apache 2 license Lucene elasticsearch

Slide 16

Slide 16 text

#elasticsearch Start… $ wget https://download.elasticsearch.org/elasticsearch/ elasticsearch/elasticsearch-1.1.0.tar.gz! $ tar -xf elasticsearch-1.1.0.tar.gz! $ ./elasticsearch-1.1.0/bin/elasticsearch! [INFO ][node ][Ghost Maker] {1.1.0}[5645]: initializing

Slide 17

Slide 17 text

#elasticsearch … and play! $ curl -XPUT localhost:9200/sessions/session/1 -d '{! "title" : "Elasticsearch",! "subtitle" : "Make sense of your (BIG) data !",! "date" : "2014-04-03T10:30:00",! "tags" : [ "elasticsearch", "cloudconf", "bigdata" ],! "speaker" : [{! "first_name" : "David", ! "last_name" : "Pilato" ! }]! }'

Slide 18

Slide 18 text

#elasticsearch Search! $ curl http://localhost:9200/sessions/session/_search -d' { "query": { "multi_match": { "query": "elasticsearch cloudconf david", "fields": [ "title^3", "tags^2", "speaker.first_name" ] } }, "post_filter": { "range": { "date": { "from": "2014-04", "to": "2014-05" } } } }'

Slide 19

Slide 19 text

StartUp #elasticsearch Compute?

Slide 20

Slide 20 text

#elasticsearch $ curl http://localhost:9200/sessions/session/_search -d' { "query": { ... }, "aggs": { "by_date": { "date_histogram": { "field": "date", "interval": "day", "format" : "dd/MM/yyyy" } } } }' "by_date": [ { "key_as_string": "03/04/2014", "doc_count": 1 }, { "key_as_string": "12/04/2014", "doc_count": 2 }, { "key_as_string": "16/04/2014", "doc_count": 3 } ] Compute!

Slide 21

Slide 21 text

#elasticsearch

Slide 22

Slide 22 text

#elasticsearch Let’s make sense of … • logs • twitter • github • marketing data • ... • your data • your big data

Slide 23

Slide 23 text

#elasticsearch { "name":"Pilato David", "dateOfBirth":"1971-12-26", "gender":"male", "children":3, "marketing":{ "fashion":334, "music":3363, "hifi":2351 }, "address":{ "country":"France", "city":"Paris", "location": [2.332395, 48.861871] } } Let’s make sense of … • logs • twitter • github • marketing data • ... • your data • your big data

Slide 24

Slide 24 text

démo #mstechdays #elasticsearch StartUp #elasticsearch MAKE SENSE OF YOUR (BIG) DATA! let’s inject some marketing documents…

Slide 25

Slide 25 text

#elasticsearch ELASTICSEARCH elastic? distributed?

Slide 26

Slide 26 text

StartUp #elasticsearch Distributed indices node 1 orders products 1 2 3 4 1 2 $ curl -XPUT localhost:9200/orders -d '{! "settings.index.number_of_shards" : 4,! "settings.index.number_of_replicas" : 1! }' $ curl -XPUT localhost:9200/products -d '{! "settings.index.number_of_shards" : 2,! "settings.index.number_of_replicas" : 0! }'

Slide 27

Slide 27 text

StartUp #elasticsearch Distributed indices node 1 orders products 1 2 3 4 1 2 node 2 $ bin/elasticsearch! [INFO ][cluster.service][Armageddon] detected_master [Ghost Maker]

Slide 28

Slide 28 text

StartUp #elasticsearch Distributed indices node 1 orders products 1 4 1 node 2 orders products 2 3 2 2 3 1 4 2 3 2

Slide 29

Slide 29 text

StartUp #elasticsearch node 3 Distributed indices node 1 orders products 1 4 1 node 2 orders products 2 3 2 2 3 1 4 $ bin/elasticsearch! [INFO ][cluster.service][Karnak] detected_master [Ghost Maker]

Slide 30

Slide 30 text

StartUp #elasticsearch node 3 products orders Distributed indices node 1 orders products 1 4 1 node 2 orders products 2 3 3 2 2 3 1 4 3 1 4

Slide 31

Slide 31 text

elasticsearch. elasticsearch kibana logstash Marvel

Slide 32

Slide 32 text

elasticsearch. Training (public and on-site) Development support Production support Marvel

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

@dadoonet questions ? we are hiring! [email protected]