Découverte d’Elastic Search:
{
“nom”: ”Jemli Fathi”,
“job”: “Software Engineer”,
“institute”: “ISSATSo”,
“community”: ”TB3...
Jemli Fathi
Troisième année ingénierie génie logiciel à ISSATSo
Vice président du Tunisian Big Data and Cloud Computing Co...
● Moteur de recherche
○ Crée en 2010 par Shay Banon
○ Basé sur Apache Lucene (+multi-nodes)
○ Développé en Java
○ Open sou...
● Les clients
○ Facebook
○ Wikipédia
○ Banque de France
○ etc
Un moteur de recherche ?
● Indexation efficace des données
● Recherche et indexation portant sur tous les champs / combina...
Pourquoi utiliser un moteur de recherche ?
● Une base de données(relationnelle surtout) n’est pas conçue pour la recherche...
Pourquoi Elasticsearch ?
● Open source
● Cache la complexité d’Apache Lucene
● Accessible à travers le cloud
● Une collect...
Elasticsearch Stack
Installation
● Rendez vous sur https://www.elastic.
co/downloads/elasticsearch
● Choisissez la version stable
● Décompress...
Installation de l’extension Sense
● Allez sur https://chrome.google.com/webstore/detail/sense-
beta/lhjgkmllcaadmopgmanpap...
Installation de l’extension ES Toolbox
● Allez sur https://chrome.google.com/webstore/detail/sense-
beta/lhjgkmllcaadmopgm...
Manipulation de Elasticsearch
Soit le modèle suivant
Sauvegarder des données dans Elasticsearch
POST /bd3c/formation
{
"titre": "Elastic search",
"duree": 60,
"tags": ["elasti...
Sélectionner des données dans Elasticsearch
GET /bd3c/formation/AVFzwj5sTY7bO17jCaPH
avec:
AVFzwj5sTY7bO17jCaPH: est l’id ...
Modifier des données dans Elasticsearch
POST /bd3c/formation
{
"titre": "Langage R",
"duree": 30,
"tags": ["R", "data_mini...
Supprimer des données dans Elasticsearch
DELETE /bd3c/formation/AVFzzOuvTY7bO17jCaPL
GET /bd3c/formation/AVFzzOuvTY7bO17jC...
La recherche avec Elasticsearch
POST /bd3c/formation/_search
{
"query":{
"match": {"tags":"nosql"}
}
}
La recherche avec Elasticsearch
POST /bd3c/formation/_search
{
"query":{
"query_string":{
"query":"nosql"
}
}
}
POST /bd3c...
Manipulation de Elasticsearch avac Java
● On va utiliser Resty pour les appels
REST
○ Avec Maven
<dependency>
<groupId>us....
Manipulation de Elasticsearch avac Java
try {
Resty resty = new Resty();
JSONObject jSONObject = resty.json("http://localh...
Vue d’ensemble sur Logstash
● Stocker, traiter et redirectionner les évènements et les
messages(exemple: les messages LOG)...
Vue d’ensemble sur Kibana
● Plate forme de visualisation en temps réel de
données open source pour Elastic search.
● Des c...
Le monitoring avec Kibana
Merci pour votre attention
Découverte de Elastic search
Découverte de Elastic search
Prochain SlideShare
Chargement dans…5
×

Découverte de Elastic search

562 vues

Publié le

Elastic search
Moteur de recherche
Crée en 2010 par Shay Banon
Basé sur Apache Lucene (+multi-nodes)
Développé en Java
Open source (Licence Apache)
La société a été crée en 2012
La version courante est 2.0
Site officiel: https://www.elastic.co/

Publié dans : Données & analyses
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
562
Sur SlideShare
0
Issues des intégrations
0
Intégrations
13
Actions
Partages
0
Téléchargements
14
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Découverte de Elastic search

  1. 1. Découverte d’Elastic Search: { “nom”: ”Jemli Fathi”, “job”: “Software Engineer”, “institute”: “ISSATSo”, “community”: ”TB3C” } “You know, for Search”
  2. 2. Jemli Fathi Troisième année ingénierie génie logiciel à ISSATSo Vice président du Tunisian Big Data and Cloud Computing Community
  3. 3. ● Moteur de recherche ○ Crée en 2010 par Shay Banon ○ Basé sur Apache Lucene (+multi-nodes) ○ Développé en Java ○ Open source (Licence Apache) ○ La société a été crée en 2012 ○ La version courante est 2.0 ○ Site officiel: https://www.elastic.co/ Elastic search ?
  4. 4. ● Les clients ○ Facebook ○ Wikipédia ○ Banque de France ○ etc
  5. 5. Un moteur de recherche ? ● Indexation efficace des données ● Recherche et indexation portant sur tous les champs / combinaison de champs ● Analyse des données ● Recherche de texte ● Filtration ● Classement par pertinence
  6. 6. Pourquoi utiliser un moteur de recherche ? ● Une base de données(relationnelle surtout) n’est pas conçue pour la recherche ○ Les jointures ○ Les contraintes
  7. 7. Pourquoi Elasticsearch ? ● Open source ● Cache la complexité d’Apache Lucene ● Accessible à travers le cloud ● Une collection de produits très performants
  8. 8. Elasticsearch Stack
  9. 9. Installation ● Rendez vous sur https://www.elastic. co/downloads/elasticsearch ● Choisissez la version stable ● Décompressez l’archive ● Lancez l’agent Elasticsearch ○ Windows: elasticsearch.bat ○ Linux: ./bin/elasticsearch ● Vérifiez qu’Elasticsearch est en marche en allant sur http://localhost:9200/
  10. 10. Installation de l’extension Sense ● Allez sur https://chrome.google.com/webstore/detail/sense- beta/lhjgkmllcaadmopgmanpapmpjgmfcfig?utm_source=chrome-ntp-icon ● Ajouter l’extension Sense à Google Chrome ● Ouvrirez l’extension et donnez localhost:9200 comme serveur On est parti !
  11. 11. Installation de l’extension ES Toolbox ● Allez sur https://chrome.google.com/webstore/detail/sense- beta/lhjgkmllcaadmopgmanpapmpjgmfcfig?utm_source=chrome-ntp-icon ● Ajouter l’extension ES Toolbox à Google Chrome ● Ouvrirez l’extension et donnez localhost:9200 comme url en haut à gauche On est parti !
  12. 12. Manipulation de Elasticsearch Soit le modèle suivant
  13. 13. Sauvegarder des données dans Elasticsearch POST /bd3c/formation { "titre": "Elastic search", "duree": 60, "tags": ["elasticsearch", "nosql", "json"], "prix":100 } ● “_id”: code unique varie suivant la version ● “version”: un numéro qui indique la version de ce documentOn appelle: ● “bd3c”: un index ● “formation”: type
  14. 14. Sélectionner des données dans Elasticsearch GET /bd3c/formation/AVFzwj5sTY7bO17jCaPH avec: AVFzwj5sTY7bO17jCaPH: est l’id du document ajouté précédemment POST /bd3c/formation/_search { "query":{ "match_all": {} } } Pour Sélectionner tous documents sous formation
  15. 15. Modifier des données dans Elasticsearch POST /bd3c/formation { "titre": "Langage R", "duree": 30, "tags": ["R", "data_mining", "statistics", "data_statistics"], "prix":150 } PUT /bd3c/formation/AVF0EhaSTY7bO17jCaPS { "titre": "Langage R", "duree": 30, "tags": ["R", "data_mining", "statistics", "data_analysis"], "prix":100 }
  16. 16. Supprimer des données dans Elasticsearch DELETE /bd3c/formation/AVFzzOuvTY7bO17jCaPL GET /bd3c/formation/AVFzzOuvTY7bO17jCaPL
  17. 17. La recherche avec Elasticsearch POST /bd3c/formation/_search { "query":{ "match": {"tags":"nosql"} } }
  18. 18. La recherche avec Elasticsearch POST /bd3c/formation/_search { "query":{ "query_string":{ "query":"nosql" } } } POST /bd3c/formation/_search { "query":{ "query_string":{ "query":"redis" , "fields": ["tags"] } } } POST /bd3c/formation/_search { "query":{ "query_string":{ "query":"tags:redis titre:Elastic search" } } } POST /bd3c/formation/_search { "query":{ "query_string":{ "query":"nosq~" } } }
  19. 19. Manipulation de Elasticsearch avac Java ● On va utiliser Resty pour les appels REST ○ Avec Maven <dependency> <groupId>us.monoid.web</groupId> <artifactId>resty</artifactId> <version>0.3.2</version> </dependency> ○ Lien http://repo2.maven. org/maven2/us/monoid/web/resty/0.3.2 /resty-0.3.2.jar https://beders.github.io/Resty/Resty/Overview. html
  20. 20. Manipulation de Elasticsearch avac Java try { Resty resty = new Resty(); JSONObject jSONObject = resty.json("http://localhost:9200/bd3c/formation/AVFz9pkbTY7bO17jCaPR"). toObject(); System.out.println("Le document entier: "+jSONObject.getString("_source")); JSONObject result = jSONObject.getJSONObject("_source"); String titre = result.getString("titre"); System.out.println("La valeur du titre"+titre); } catch (Exception e) { e.printStackTrace(); }
  21. 21. Vue d’ensemble sur Logstash ● Stocker, traiter et redirectionner les évènements et les messages(exemple: les messages LOG). ● Les sources des données: des fichiers, des paquets (TCP, UDP) et d’autres types de messages(Twitter, etc). ● Filtres avec des motifs prédéfinies. ● Les résultats: stocker ou envoyer vers de multiples programmes et supports, principalement Elasticsearch, Redis, Nagios, des fichiers.
  22. 22. Vue d’ensemble sur Kibana ● Plate forme de visualisation en temps réel de données open source pour Elastic search. ● Des composants graphiques riches: Barres, des camemberts(pie charts), nuage de points, des cartes, etc.
  23. 23. Le monitoring avec Kibana
  24. 24. Merci pour votre attention

×