Upload
francelabs
View
276
Download
3
Embed Size (px)
Citation preview
Besoin derien envie deSearch
OLIVIERTAVARDFRANCELABS
TELECOMVALLEYTECHCONF SEARCH31/05/16
L’importance businessdusearchExempledueCommerce• 96%desvisiteursd’unsitedee-commerceconsidèrentl’utilisationd’unmoteurderechercheinternecommefaisantpartiedeleurprocessusd’achat.
• 73%desvisiteurs d’unsited’eCommerce quittent lesiteauboutdedeux minutess’ils netrouvent pasce qu’ils cherchent
Exempleenterprise search• Uningénieur passe9hparsemaineàchercherdesdocuments (source: IDC)
Rappel((très)rapide)Un moteur de recherche est un outil qui permet:
• De créer un index à partir de documents
Index
Index
Rappel((très)rapide)Un moteur de recherche est un outil qui permet:
• De créer un index à partir de documents
• D’effectuer des recherches dans cet index
Index
Rappel((très)rapide)
Index
coquilles
saint
Jacques
….
Document Requête
coquilles saint jacques
Coquilles saint-jacques
coquilles saint jacques
Coquilles SaintJacques
Analyser Analyser
Indexation Requête
Match!
Fonctionnalités deSearch:trouver en– de2min
Facettes:
Permet auclientd’affinersa recherche,etdetrouver sonproduit enmoins de2minutes.
Fonctionnalités deSearch:trouver en– de2min
Facettes:destypesvariés etconfigurables:
Catégorie
Fenêtre deprix
Couleur
Taille…
Fonctionnalités deSearch:trouver en– de2min
Autocompletion:
Permet deguiderleclientlors desa requête
Fonctionnalités deSearch:suggérer desachats
Suggestions:
Proposedesalternatives
Fonctionnalités deSearch:Moteur derecommandationsRecommandations:• Ex:CarrierBuilder
• Génèredessuggestionsdepostessuivantunprofilutilisateur
Fonctionnalités deSearch:Analyse deslogs
Fonctionnalités deSearch:Géolocalisation
Recoder sonmoteur derecherche ?Non!Pourquoinepaslefairesoi-mêmeavecunebonnevieillerequêtesql ?Moteurderecherche:• Résultatsscorés
• Optimisépour récupérerundocàpartirdesoncontenu
• Nonrelationnel, structurenonfixe
• Possibilitésd’utiliserdesfonctionnalités spécifiquesausearch
Lestechnos derecherche opensourcelesplusconnuesApacheLucene
ApacheSolr
ElasticSearch
Lucene?Créé en 2000parDougCutting.Versionactuelle:Lucene 6.0.1(Mai2016)
Projet delafondationApachedepuis 2001
Librairie derecherche full-text
Rapide,fiable,customisable,flexible
100 %java(pasdedépendences)
Solr ?Lucene « embarqué »dans une webapp
Moteur derecherche fulltextscalable
Créé en2004parYonik Seeleyà CENTNetworks
En2010,fusiondesprojets Lucene :tous lesdeux souslafondationApache
VersionActuelle :Solr 6.0.1(Mai2016)
ElasticSearch ?Basé sur Lucene
Moteur derecherche fulltextorienté analyticsscalable
Elasticsearch aété créé parShayBanon en2004
Licence Apache2.0
Versionactuelle :2.3.3(Mai2016)
Moteur derecherche etBigDataScalabilité
Haute disponibilité
Consistance
Simplicité
Elasticité
Moteur de recherche et Big Data – Les shardsSharding :• Un shard est un morceau d’index
• Une recherche distribuée se fait sur tous les shards (donc l’index complet)
• Utile pour gérer un gros index
Shard3
Queries
Shard1 Shard2Aggregatedqueries
Subqueries
Moteur de recherche et Big Data : Leaders/Replicas
Leaders et replicas pour la réplication:• Pas de « maître/esclave » mais des « leaders/replicas » (un replica peut devenir un
leader)
• Un leader et ses replicas contiennent le même shard
• Utile pour gérer une grosse charge de requêtes et pour la haute disponibilité
Leader Shard 1
Replica2 Shard
2
Replica1 Shard 1
Load Balancer
Queries Queries Queries
Moteur de recherche et Big Data Illustration
On veut répartir l’index sur 2 shards
On veut un réplica par shard
D’où 4 machinesINDEX
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…
Clusters de serveurs
C’est l’heure du quizQuelle est la version actuelle de Lucene/Solr ?• A) 2.3.3
• B) 42
• C) 6.0.1
Répondez vite en tweetant sur @TechConfQuiz
Ecosytème - CrawlerRoles :• Connection au système externe
• Crawl des données
• Gère les autorisations• Early Binding• Late Binding
Ecosytème - CrawlerRoles :• Push or pull mode
• Extraction du contenu (Tika)
• Crawling normal ou delta
• Attention à l’impact sur le système crawlé• Throttling
• Scheduling
Ecosytème - CrawlerDifferents Crawlers
• Aperture• File, Web
• Nutch• Web
• DIH• DB, XML
• Beats• LogStash
Framework• Apache Manifold CF
Ecosytème - CrawlerScénario de moteur de recherche fédéré : • 1ère source : crawl de fichiers avec autorisation
• Environnement :• File Share Windows
• Active Directory
• 2e source de données : crawl d’un CMS interne
• Phase de recherche fédérée en respectant les autorisations
Ecosytème - CrawlerScénario de moteur de recherche pour l’indexation de logs: • Parsing de fichiers de logs avec LogStash
• Indexation dans ElasticSearch
• Visualisation avec Kibana
Use casesSolr• BOX:
• Index de 10 To• 10 Mds docs
• 100 M requêtes / jour• Documents bureautique
ElasticSearch• Verizon
• 500 milliards docs
• Logs
CONTACT
N’hésitez pas à nous contacter pour toute demande d’information
Notre site web : www.francelabs.com
Email: [email protected]él: 09 72 43 72 85Fax: 09 72 29 28 14
Adresse: France Labs
CEEI – Nice Premium1 boulevard Maître Maurice Slama
06200 Nice, FranceTwitter : francelabs