Cette présentation donne un comparatif sur les technologie de recherche open source que sont Apache Solr et ElasticSearch. Après avoir introduit brièvement les notions de moteur de recherche open source pour entreprise, Lucene, Solr et ElasticSearch seront expliqués.
5. Rappel ((très) rapide)
Un moteur de recherche estun outil qui permet:
• De créerun index à partir de documents
• D’effectuerdes recherches dans cet index
Index
14. Recoder son moteur de recherche ? Non !
Pourquoi ne pas le faire soi-même avec une bonne vieille requête sql ?
Moteur de recherche :
• Résultats scorés
• Optimisé pour récupérer un doc à partir de son contenu
• Non relationnel, structure non fixe
• Possibilités d’utiliser des fonctionnalités spécifiques au search
17. Solr ?
Lucene « embarqué » dans une webapp
Moteur de recherche full text scalable
Créé en 2004 par YonikSeeley à CENT Networks
En 2010, fusion des projets Lucene : tous les deux sous la fondationApache
Version Actuelle : Solr 6.0.1 (Mai 2016)
18. ElasticSearch ?
Basé sur Lucene
Moteur de recherche full text orienté analytics scalable
Elasticsearch a été créé par Shay Banon en 2004
Licence Apache 2.0
Version actuelle : 2.3.3 (Mai 2016)
20. Moteur de recherche et Big Data – Les shards
Sharding :
• Un shard est un morceau d’index
• Une recherche distribuée se fait sur tous les shards (donc l’index complet)
• Utile pour gérerun gros index
Shard3
Queries
Shard1 Shard2
Aggregated
queries
Subqueries
21. Moteur de recherche et Big Data :
Leaders/Replicas
Leaders etreplicaspour la réplication:
• Pas de « maître/esclave » mais des « leaders/replicas » (un replica peut devenir un
leader)
• Un leaderet ses replicas contiennent le même shard
• Utile pour gérerune grosse charge de requêtes et pour la haute disponibilité
Leader
Shard 1
Replica
2 Shard
2
Replica
1 Shard 1
Load Balancer
Queries Queries Queries
22. Moteur de recherche et Big Data
Illustration
On veutrépartirl’index sur 2 shards
On veutun réplica par shard
D’où 4 machines
INDEX
23. Différences Solr et ElasticSearch
• 95% des fonctionnalités en commun
• Quelques différences :
• ElasticSearch
• Percolator
• Elastic s’oriente vers Analytics
• Outils ES puissants mais peuventêtre payants : Kibana, LogStash, Marvel, Shield…
• Solr
• Historiquement : focus sur fonctionnalités, cloud après
• Cross data center replication Solr 6
• Outils Solr : équivalents de ceux d’ES peuventêtre moins complets mais en licence Apache : console
admin, LogStash for Solr, Banana…
25. C’est l’heure du quiz
Quelle est la version actuelle de Lucene/Solr ?
• A) 2.3.3
• B) 42
• C) 6.0.1
Répondez vite en tweetant sur @TechConfQuiz
26. Ecosytème - Crawler
Roles:
• Connection au système externe
• Crawl des données
• Gère les autorisations
• Early Binding
• Late Binding
27. Ecosytème - Crawler
Roles:
• Push or pull mode
• Extraction du contenu (Tika)
• Crawling normal ou delta
• Attention à l’impactsur le système crawlé
• Throttling
• Scheduling
29. Ecosytème - Crawler
Scénario de moteur de recherche fédéré :
• 1ère source : crawl de fichiers avecautorisation
• Environnement :
• File Share Windows
• Active Directory
• 2e source de données : crawl d’un CMS interne
• Phase de recherche fédérée enrespectant les autorisations
30. Ecosytème - Crawler
Scénario de moteur de recherche pour l’indexation de logs:
• Parsing de fichiers de logs avec LogStash
• Indexation dans ElasticSearch
• Visualisation avec Kibana
31. Use cases
Solr
• BOX:
• Index de 10 To
• 10 Mds docs
• 100 M requêtes / jour
• Documents bureautique
ElasticSearch
• Verizon
• 500 milliards docs
• Logs
32. CONTACT
N’hésitez pas à nous contacter pour toute demande
d’information
Notre site web : www.francelabs.com
Email: contact@francelabs.com
Tél: 09 72 43 72 85
Fax: 09 72 29 28 14
Adresse:
France Labs
CEEI – Nice Premium
1 boulevard Maître Maurice Slama
06200 Nice, France
Twitter: francelabs