SlideShare ist ein Scribd-Unternehmen logo
1 von 139
Solr
Aurélien MAZOYER
Olivier TAVARD
Introduction
A propos de moi :





Cofondateur de la société France Labs
Développeur (principalement Java)
Formateur Solr (France Labs, Lucidworks)
Enseignant vacataire (Polytech’Nice-Sophia)

A propos de France Labs :



Startup créée en 2011
Partenaire officiel de LucidWorks pour la France
Introduction
Domaine:


Moteurs de recherche d'entreprise Open Source

2 activités:



Consulting/support/formation sur
Lucene/Solr/Constellio/LucidWorks
R&D (algorithmes de ranking, connecteurs, réseaux
sociaux)
Pourquoi Lucene/Solr?
Besoins d'entreprise : avoir une bonne solution
logicielle, avec un support fiable
Par conséquent notre choix de Lucene/Solr :





Large communauté autour de Lucene/Solr
Schémas de support professionnel pour Lucene/Solr
Solr 4 pensé pour le Big Data
Utilisé par Twitter, Linkedin, eBay, Salesforce, IBM, Apple
Présentation de Solr








Architecture SOLR
Scoring
Indexation
Requêtage
Fonctionnalités
Solr Cloud

Solr et son écosystème
Présentation de Solr








Architecture SOLR
Scoring
Indexation
Requêtage
Fonctionnalités
Solr Cloud

Solr et son écosystème
La recherche est un oignon!
La recherche est un oignon!
La recherche est un oignon matricielle!
Lucene
Lucene
Créé en 2000 par Doug Cutting. Version Actuelle :
Lucene v. 4.6 (Novembre 2013)
Projet Open Source, Apache depuis 2001
Librairie de recherche “full-text”
Rapide, stable, performant, modulable
100% Java (pas de dépendances)
Lucene
Un outil qui permet:


De créer un index à partir de
documents

INDEX
Index
Document, fields, terms





Document : unité d’indexation
Field : partie d’un document, contient les données
Term : unité atomique d’un champ
Si on veut indexer un livre, on aura:
•
•

•
•
•

Title : Lucene in Action
Author : Erik Hatcher, Otis Gospodnetid
Description : Lucene is a gem in the open-source...
Content : …
Term
Field
…

Document
Lucene
Un outil qui permet:
De créer un index à partir de
documents
 D’effectuer des recherches
dans cet index


INDEX
Lucene
Différence avec une base de données :





Optimisé pour récupérer un doc à partir de son
contenu
Résultats scorés
Non relationnelle, structure non fixe
Champs qui peuvent contenir plusieurs valeurs
Indexation - Architecture

Crawler

Lucene
analyzer

Indexer
INDEX
Lucene
Requêtage - Architecture
type:voitures AND prix:[3000 TO 5000]

Query
Parser

Lucene
analyzer

Index
Searcher

Lucene

INDEX
Analyzer
Document

Requête

Coquilles SaintJacques

Coquilles saint-jacques

Lucene
analyzer

coquilles

saint

Lucene
analyzer

jacques

coquilles

Index

Indexation

saint

Requête

coquilles

saint
Jacques
….

Match!

jacques
Lucene
Lucene est une simple bibliothèque
Besoin d’une couche serveur…
Solr
Solr par rapport à Lucene
Lucene « embarqué » dans une webapp
Créé en 2004 par Yonik Seeley à CENT Networks
In 2006, Solr devient open-source et été cédé à la
Apache Software Foundation
En 2010, fusion des projets Lucene et Solr
Version Actuelle : Solr 4.6 (Novembre 2013)
Solr par rapport à Lucene
APIs XML/HTTP de type REST
Configuration par fichiers XML
Mécanisme de Cache, Réplication
Interface admin web
Solr par rapport à Lucene
Interfaces HTTP pour :


ajouter des documents (POST)
•



http://localhost:8983/solr/update

effectuer des recherches (GET)
•

http://localhost:8983/solr/select
Intéraction Solr / Monde extérieur

Update Handler

Search Handler

Lucene
Solr
© www,oblady,com
Architecture
(Virtual) Machine
OS
Java Virtual Machine

Conteneur de servlet (Jetty, Tomcat)
Solr

faceting, replication, caching, distributed search,
admin, Lucene best practices

Lucene Java
core search, analysis tools, hit highlighting,
spell checking

© www,oblady,com
Surcouche
Surcouche
Besoin (parfois) d’une surcouche:





Interface WEB pour le client
Crawl des documents sur les différents systèmes
Gestions de la sécurité
Statistiques

Exemples de solutions « clé en main » :
Constellio
 LucidWorks
 Datafari

Des questions???
Présentation de Solr








Architecture SOLR
Scoring
Indexation
Requêtage
Fonctionnalités
Solr Cloud

Solr et son écosystème
Scoring
Scoring en Lucene

Formule paramètrable
Combinaison de



Boolean Model (Match)
Vector Space Model (Scoring)
•
•



Term Frequency
Inverse Document Frequency…

Boosts…
TF-IDF
Term Frequency (TF) :


Fréquence d’un Terme dans un document

France Labs
Bienvenue sur le site de France Labs.
Créée en 2011, France Labs est une
société composée d'experts en
gestion de l'information. Que ce soit
pour de l'expertise, pour nos produits
ou pour nos solutions métiers, nous
faisons en sorte que vous augmentiez
votre efficacité par une meilleure
exploitation de vos données.

France Labs, spécialiste des outils
de recherche open source, propose
des plugins innovants et des
services de conseil, intégration et
maintenance, sur Lucene, Solr et
Constellio. Europe, nous sommes le
partenaire de Constellio, solution
complète de recherche.
TF-IDF
Inverse Document Frequency (IDF):


Rareté du terme dans l’ensemble de l’index

Expertise Lucene
Souhaitant intervenir plus en amont
dans la vie de l’entreprise, pour vous
proposer toujours plus de conseils à
partir de nos expertises, Expertise &
Conseil a créé Formation & Conseil :
une structure de formation destinée
aux acteurs de performance de
l’entreprise.

Apache Lucene, la fameuse
technologie pour l’indexation, la
recherche et l’analyse du texte est la
base de plusieurs serveurs Open
Source. La présentation détaillera
Solr et ElasticSearch sous la forme «
Tools in Action » - démonstrations
en direct des différents outils.
TF-IDF
Norms :


Taille des champs

Solr
Titre : Les moteurs de recherche
Content :
Apache Solr est une librairie de
recherche full text en open source.
Elle propose des API REST, des
mécanismes de cache, réplication et
mise à l’échelle.

Titre : Encyclopédie
Content :
Solr est une moteur de recherche
open source. Elastic Search est un
moteur de recherche open source
(mais quand même un peu moins
bien)
….
….
…. Le chat est une animal de

compagnie avec des oreilles.
Boosts
Boosts:







Privilégier un doc en particulier…
Privilégier un champ par rapport à un autre…
Privilégier les phrases exactes…
Privilégier les docs qui matchent une requête…
Privilégier les docs par rapport au résultat d’une fonction …
Privilégier les docs géolocalisé les plus proches….
Boosts
Boosts:


Boost sur le Titre

Fonctionnalités
Titre : Fonctionnalités
Content :
Interface d'administration en HTML,
Réplication, Mise en cache
Recherche distribuée, Recherche à
facettes, Recherche géospatiale ,API
HTTP/XML, JSON et bibliothèques
pour les langages de script Python et
Ruby, Intégration des bases de
données

Titre : Highlighter
Content :
Cette fonctionnalité permet de mettre
en surbrillance les termes recherchés.
Ce principe est le même que les pages
"en cache" de Google où les termes
recherchés apparaissent surlignés en
jaune.
C'est une fonctionnalité puissante et
pratique.
Scoring en Lucene
Des questions???
Présentation de Solr








Architecture SOLR
Scoring
Indexation
Requêtage
Fonctionnalités
Solr Cloud

Solr et son écosystème
Crawling
Le crawling de documents n’est PAS
le job de Solr
Mais il existe de nombreux outils
pour cela :
DIH
 Nutch
 Aperture
 Manifold CF
 Google Connectors

Indexation
Préparer les documents



Convertir en XML, JSON, CSV (ou document riche avec Tika)
Peut contenir plusieurs Docs
Indexation
Poster les documents par HTTP


Avec cURL (linux)
•



Ex : curl http://localhost:8983/solr/collection1/update -H
"Content-type:text/xml" --data-binary @mem.xml

Post.jar et Post.sh
•

Ex : java -jar post.jar *.xml
Clients
Avec des clients spécifiques:


SolrJ
•









Client le plus évolué

SolrNet
rsolr
SolPython
SolPerl
SolPHP
scalikesolr
…
Latence d’indexation
Documents visibles une fois commités
Possibilité d’utiliser le « soft-commit »
Pour avoir du NRT
Pour la configuration de Solr

Pour la configuration de Solr
(Presque) tout se passe dans 2 fichiers:


Schema.xml
•



Décrit les données à indexer

SolrConfig.xml
•

Comportement interne du serveur et
interactions avec le monde extérieur
Schema

Déclaration des champs fixes:

Ou dynamiques:
Schema

Et des types de champs:
Entier
 Date
 String


•



Un seul morceau

Text
•
•

Text découpé et normalisé
Avec un analyzer spécifique
Analyzer
Document Analysis

Query Analysis

Coquilles SaintJacques

Coquilles saint-jacques

WhitespaceTokenizer

WhitespaceTokenizer

Coquilles

SaintJacques

Coquilles

WordDelimiter

Coquilles

Saint

WordDelimiter
Jacques

Coquilles

LowerCaseFilter
coquilles

saint

saint-jacques

saint

jacques

LowerCaseFilter
jacques

coquilles

saint

jacques
Schema : Analyzer
Analyzers
Beaucoup d’analyzers prédéfinis


Spécifiques au langage

Mais modulables : beaucoup de
composants disponibles :



Ajout de synonymes
Stemming
•




manger, mangera => mang

Phonétique
…
Des questions???
Présentation de Solr








Architecture SOLR
Scoring
Indexation
Requêtage
Fonctionnalités
Solr Cloud

Solr et son écosystème
Première requête
URL :


http://localhost:8983/solr/collection1/select...

HTTP GET request





Web browser
Curl
SolrJ
…
Structure de la requête
http://localhost:8983/solr/collection1/select
?q=*:*&start=0&rows=10&fl=description
/solr/ : contexte de l’application web où Solr est installé
 /collection1: Collection (ou index) de Solr
 select : request handler
 Après le ? => paramètres non ordonnés

Exemple de retour
Type de requêtes
Type

But

Exemple

TermQuery

Simple terme
Peut être spécifique à un
champ

Tarte
Type:Dessert

PhraseQuery

Match de plusieurs
termes dans l’ordre

« tarte aux pommes"

RangeQuery

Fourchette

[A TO Z]
{A TO Z}

WildcardQuery

Lettres manquantes

j*v?
f??bar

PrefixQuery

Tous les termes qui
commencent par X.

cheese*

FuzzyQuery

Distance de Levenshtein

manger~

BooleanQuery

Agrégation de plusieurs
queries

manger AND
cheese* -cheesecake
Requêtage
L’utilisateur peut donc faire des requêtes
complexe:
Requêtage
Mais fera plutôt des requêtes de ce type:

A nous de faire avec… 
Présentation de Solr








Architecture SOLR
Scoring
Indexation
Requêtage
Fonctionnalités
Solr Cloud

Solr et son écosystème
Spellchecker
Autocomplete
Facettes
Facettes
Géolocalisation
Autres fonctionnalités
More Like This



Obtenir des documents similaires à un
document
Similarité textuelle

Highlighting
Et les vôtres…
Solr est très orienté plugin
Possibilité de surcharger quasiment tout…
Configuration de Solr

Pour la configuration de Solr
(Presque) tout se passe dans 2 fichiers:


Schema.xml
•



Décrit les données à indexer

SolrConfig.xml
•

Comportement interne du serveur et
interaction avec le monde extérieur
Exemple:

Solrconfig.xml permet le paramètrage :
Request Handler
 Composants associés (autocomplete, highlighting)
 Caches, Fréquences de commits etc…
 Bref, presque tout le reste…

Des questions???
Demo

Démo !
Présentation de Solr








Architecture SOLR
Scoring
Indexation
Requêtage
Fonctionnalités
Solr Cloud

Solr et son écosystème
Solr Cloud
Nouvelle architecture de Solr pour gérer la scalabilité
Nouveau système de mise à l’échelle de Solr


Pack 2 en 1
•

Distribution
- Volumétrie élevée

•

Réplication
- Répartition de la charge
- Haute dispo

Architecture flexible
Zookeeper
Logiciel de gestion de configurations pour
système distribués
Contient les configs des indexs de Solr
Cloud
Les Solr s’enregistrent et se désenregistrent
auprès du Zookeeper
Statuts des shards enregistrés
Nouvelles notions
Sharding




Un Shard est un morceau d’index
Une recherche distribuée se fait sur tous les shards (ie sur
tout l’index)
Utile pour gérer une grosse volumétrie de document
Sous-Requêtes

Shard1
Requêtes

Résultats
Aggrégés

Shard2

Shard3
Nouvelles notions
Leader et Replica pour la réplication


On n’a pas de maître/esclave mais des leader/replica
•




Un replica peut devenir leader si son leader tombe

Le leader et le replica contienne le même shard
Utile pour répartir la charge/assurer une haute dispo
Leader
Shard 1
Requêtes

Replica 2
Shard 2

Replica 1
Shard 1
Requêtes

Requêtes

Load Balancer
1 index- 2 shards – 2 replicas
Un exemple!
On veut un index, réparti sur 2 shards
(ie : coupé en 2)
Chaque shard sera répliqué 1 fois
Donc 4 machines

INDEX
Solr Cloud
On démarre le première machine, envoie la
configuration et spécifie le nombre de shards voulus

ConfigIndex1
Leader Shard1
Zookeeper
Solr Cloud
On démarre la deuxième machine, sans lui spécifier
de configuration mais en pointant sur le Zookeeper

Leader Shard1
Zookeeper

Leader Shard2
Solr Cloud
On démarre la 3ème machine, sans lui spécifier de
configuration mais en pointant sur le Zookeeper

Leader Shard1
Zookeeper

Replica Shard1

Leader Shard2
Solr Cloud
On démarre la 4ème machine, sans lui spécifier de
configuration mais en pointant sur le Zookeeper

Leader Shard1

Leader Shard2

Zookeeper

Replica Shard1

Replica Shard2
Indexation
Distribution automatique des updates
Comment?
On envoie les docs à n’importe quelle machine


Solr se charge de les transmettre à la bonne machine
Solr Cloud

Indexer

Leader 1

Leader 2

Replica 1

Replica 2
Recherche
Distribution des recherches automatique
Hors SolrJ :


On registre les shards dans le load balancer

Avec SolrJ :


On utilise un objet CloudSolrServer
•
•

Pointé sur Zookeeper
Gère le load balancing
Solr Cloud

Search

Search

Leader 1

Leader 2

Replica 1

Replica 2
Avantages
Architecture très flexible


En cas d’augmentation de charge
•
•



Ajout de machines qui pointent sur Zookeeper
Enregistrement des machines dans le Load Balancer

En cas de diminution de charge
•

Eteindre des machines

Zookeeper



Gestion centralisée des configurations
Visualisation du statut des shards
Avantages
Réplication


Automatique et fiable

Support du NRT
Distribution automatique des MAJs
Distribution automatique des recherches
Des questions???
Demo

Démo !
Présentation de Solr
Solr et son écosystème
 Crawling des données
 Exemple de UI
 Outils sémantiques
 Hadoop
Présentation de Solr
Solr et son écosystème
 Crawling des données
 Exemple de UI
 Outils sémantiques
 Hadoop
Role
Solr ne crawle PAS les données
Besoin d’un crawler pour :




Connection au système externe à crawler
Récupération des données
Gestions des autorisations
Role
Mode Push ou Pull
Crawling normal ou incrémental
Réglage de l’impact sur le système
crawlé



Throttling
Scheduling

En cas de documents riches (Pdf, Word):
 Extraction du contenu
Extraction de contenu
Apache Tika
Contribution de Solr



Détection du Mime-type
Embarque des librairies pour:
•
•



Lire le contenu
Extraire les meta-données

Extension supportés:
•

•
•
•
•
•
•

XHTML
MS Office (OLE2 and OOXML)
OpenDocument
PDF
RTF
Zip
Audio/Video/Image files
Les crawlers
Differents Crawlers


Nutch
•



DIH
•
•



Crawler web distribué
Contrib de Solr
Crawl DB, XML

Aperture
•

File, Web

Et Framework



Google Enterprise Connector
Manifold CF
Manifold CF
Basé sur « Connector Framework » développé par
Karl Wright pour la MetaCarta Appliance
Donné à l’Apache Software Foundation en 2009
(première version 2011)
Mai 2012 : sortie d’incubation
Version actuelle 1.5.1 (Février 2014)
Manifold CF
Crawling incrémental
Gère les autorisations
Configuration par UI et API
Créé pour Solr
Architecture en mode plugin
Manifold CF
Differents connecteurs pour :


Content Repositories :
•
•
•

•
•
•



Authorities:
•
•



SharePoint
Windows Share
CMIS (Alfresco)
DB
RSS
Wiki
AD
LDAP

Output repositories :
•
•

Solr
Elastic Search
Manifold CF
2 composants principaux:


Pull agent:
•
•
•

Contient les connecteurs (repository et output connectors)
Récupère les données à partir des différents repositories
Et les push avec leurs ACLs aux output connectors

Pull Agent
Manifold CF
2 composants principaux:


Authority service:
•
•

Contient les authority connectors
Liste de tous les tokens pour l’utilisateur courant
Manifold CF
Intégration avec Solr


Exemple : crawl de fichiers avec autorisation
•

Environnement :
- File Share Windows
- Active Directory

•

Indexer les fichiers et respecter les droits à la requête
Manifold CF
Configuration côté Manifold CF




Configuration du connecteur JCIFS
Configuration du connecteur AD
Configuration du connecteur Solr
Manifold CF
Modification du schéma Solr


Ajout de champs pour indexés les ACLs
•



AllowFile, DenyFile, AllowDirectory, DenyDirectory…

Ajout d’un plugin à Solr (MCF Search Plugin) pour interroger Manifold CF pour
obtenir les infos d’utilisateur
Manifold CF
Repositories
Windows
Share

Connecteur
AD

Connecteur
JCIFS

Manifold CF
pull Agent

Indexation

Authorities

Manifold CF

AD

Manifold CF
authority
service

Connecteur
Solr

Get User
access token

Docs and
access tokens

Solr

MCF
Search
Plugin

Output
Manifold CF
Repositories
Windows
Share

Connecteur
JCIFS

Manifold CF
pull Agent
Connecteur
Solr

Requête
Front End

Docs and
access tokens

Search authentifié
Résultats autorisés

Authorities

Manifold CF
Connecteur
AD

AD

Manifold CF
authority
service
Get User
access token

MCF
Filtre les docs suivant
leur ACLsSearch infos
et les
Solr
Plugin
d’utilisateur

Output
Des questions???
Présentation de Solr
Solr et son écosystème
 Crawling des données
 Exemple de UI
 Outils sémantiques
 Hadoop
AjaxFranceLabs
Inspiré de AjaxSolr
Client Javascript/Ajax
Fournit plusieurs composants:


Un Manager
•



Gère la connexion avec le serveur

Et des widgets
•

Composant graphique et logique
AjaxFranceLabs
SearchBarWidget

Manager
FacetWidget

ResultWidget
Demo

Démo !
Présentation de Solr
Solr et son écosystème
 Crawling des données
 Exemple de UI
 Outils sémantiques
 Hadoop
Sémantique
Le sémantique n‘est pas le travail de Solr
Fait seulement de la recherche full-text (mais
le fait bien )
Solr


Il existe des plugins pour cela
•
•
•

UIMA
GATE
OpenNLP
Sémantique
UIMA (Unstructured Information Management Architecture)





Framework apache
Plugin Solr
Côté indexation
Contient un pipeline d’Annotators
•
•
•
•



Open Calais
AlchemyAPI
OpenNLP
…

Chaque annotator va rajouter des métadonnées au document
UIMA
Ex : OpenNLP



Coté indexation ou requêtage
Part of speech
•



Verbe nom…

Extraction d’entités
•
•

Lieu
Personne
Natural Langage Processing
Solr + OpenNLP + custom code => outils de recherche en langage
naturel
Voir livre « Taming Text » de Grant Ingersoll
Présentation de Solr
Solr et son écosystème
 Crawling des données
 Exemple de UI
 Outils sémantiques
 Hadoop
Hadoop
Créé par Doug Cutting
Framework open source
Inspiré par les papiers sur Google Map Reduce
et Google File System
Hadoop
Traiter des grands volumes de données en un
minimum de temps
Stocker des immenses volumes de données
Fonctionne sur machines de configuration faible et
peu coûteuses
Hadoop
Architecture (très) simplifiée de Hadoop

Nœud 1

Couche Traitement (Map Reduce)
Nœud 2
Nœud 3
Couche Stockage (HDFS)

Nœud 4
Hadoop
Couche stockage (HDFS)





Système de fichier distribué
Utilise les disques « normaux » de chacun
des nœuds…
…pour donner l’impression de n’utiliser
qu’un seul énorme disque
Fiable (données répliquées 3 fois)
Hadoop
Couche traitement (Map Reduce)



Hadoop exécute des jobs Map Reduce
Notre algo doit donc implémenter:
•
•



Un mapper
Un reducer

Pour être executé de manière distribuée par
Hadoop en tant que job
Hadoop
Mapper



Prend des données en entrée
Et les transforme en paire de clé valeur

Clé1 : Val1
Clé2 : Val2
Clé3 : Val3
Clé4 : Val4
Mapper
Hadoop
Reducer


Combine les valeurs ayant la même clé

Clé 1 : Val1
Clé 2 : Val2
Clé 1 : Val3
Clé 2 : Val4

Clé1 : Val5
Clé2 : Val6
Reducer
Hadoop
Un exemple simple?





On a en entrée plusieurs textes
On veut compter le nombre d’occurrence
des mots
De manière distribuée
En utilisant un job Map Reduce

Solr

Datafari

Apache Solr est une
couche web open source
basée sur la librairie de
recherche Apache
Lucene. Elle ajoute des
fonctionnalités de
serveur web, du
faceting.

Datafari est notre
solution open source de
recherche d'entreprises,
basée sur Lucene, Solr,
et le framework de
connecteurs Apache
ManifoldCF.

Lucene
Apache Lucene est un
moteur de recherche et
d'indexation, en open
source.
Hadoop
Solr
Apache Solr est une
couche web open source
basée sur la librairie de
recherche Apache
Lucene. Elle ajoute des
fonctionnalités de
serveur web, du
faceting.

Datafari
Datafari est notre
solution open source de
recherche d'entreprises,
basée sur Lucene, Solr,
et le framework de
connecteurs Apache
ManifoldCF.

Mapper

Mapper

Lucene
Apache Lucene est un
moteur de recherche et
d'indexation, en open
source.

Apache : 1
Apache : 1
Solr : 1
Lucene : 1
…
Apache : 1
Solr : 1
Lucene : 1
…

Apache : 1
Lucene : 1
…
Mapper

Apache : 4
Solr : 2
Lucene : 3
…
Reducer
Hadoop
Distribution du l’algo en Map Reduce

Apache : 13
Lucene : 10
Nœud 1

Open : 19
Nœud 2
Solr : 10

Apache : 44
Nœud
Solr : 10 3

Apache : 2
Nœud 4
Manifold : 1
Hadoop
Opération Map sur les documents sur chacun
des noeuds

Apache : 1
Lucene : 1
Nœud 1
Map

Apache : 1
Open : 1
Nœud 2
Solr : 1
Map
Source : 1

Apache : 1
Nœud
Solr : 1 3
SolrMap
:1

Apache : 1
Nœud 4
Manifold : 1
Map
Source : 1
Hadoop
Echange des données entre les nœud (shuffle)
Apache : 1
Lucene : 1

Nœud 1

Apache : 1
Open : 1
Solr : 1
Source : 1

Apache : 1
Solr : 1
Solr : 1

Apache : 1
Manifold : 1

Nœud 2

Nœud 3

Nœud 4

Source : 1
Hadoop
Opération de Reduce sur chacun des noeuds
Apache : 1
Apache : 1
Apache : 1
Apache : 1
Nœud 1
Apache : 4
Reduce

Lucene : 1
Manifold : 1
Open : 1

Lucene : 1
Nœud 2
Manifold : 1
Reduce
Open : 1

Solr : 1
Solr : 1
Solr : 1

Source : 1

Nœud 3
Solr : 3
Reduce

Nœud 4
Source : 2
Reduce

Source : 1
Nutch
Créé par Doug Cutting
Crawler Web
Permet de crawler un large
volume de données
Basé sur Hadoop
Behemoth
Projet Apache
Surcouche d’Hadoop
Permet de déployer sur Hadoop des
traitements tel que:




Identification de language
Extraction de contenu (Tika)
Pipeline UIMA
Solr directement couplé avec Hadoop
Possibilité de stocker l’index de Solr sur HDFS




Stockage de gros volume de donnée
Gestion de la réplication
Utilisation d’un cluster Hadoop existant

A venir: Possibilité de créer l’index à l’aide de
job Map Reduce


Augmentation performance d’indexation sur de
gros volumes de données
Exemples d’utilisation d’Hadoop
Calcul du scoring des docs


Ex: PageRank calculé par le Google Map/Reduce

Web

Google Map/Reduce
(≠ Hadoop
Mapreduce) :
Calcul PageRank

Moteur de recherche
(≠ Lucene Solr)
Exemples d’utilisation d’Hadoop
Calcul de recommandation


Ex: Linkedin
Exemples d’utilisation d’Hadoop
Voldemort
(Linkedin
filesystem)

Hadoop
(pour le calcul)

Web Server
(pour l’affichage)

Données brutes
Calcul distribué
des recommandations
Injection des recommandations
par utilisateur

Lecture des données utilisateur et
leur recommandations
Hadoop
Voldemort
(Linkedin
filesystem)

Lucene
(pour le search)

Web Server (pour
l’affichage)

Données brutes

Indexation des utilisateurs

Recherche d’utilisateurs

Lecture des données utilisateur spécifique
Des questions???
Merci!!!
Site web : www.francelabs.com
Email : aurelien.mazoyer@francelabs.com
Twitter : Francelabs

Weitere ähnliche Inhalte

Was ist angesagt?

BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian Lilia Sfaxi
 
وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه
وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه
وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه Safiya Najeh
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learningQuentin Ambard
 
Big Data : concepts, cas d'usage et tendances
Big Data : concepts, cas d'usage et tendancesBig Data : concepts, cas d'usage et tendances
Big Data : concepts, cas d'usage et tendancesJean-Michel Franco
 
méthode push et méthode pull
méthode push et méthode pullméthode push et méthode pull
méthode push et méthode pullAmaniFarhati
 
CV Ingénieur développeur JAVA/EE
CV Ingénieur développeur JAVA/EECV Ingénieur développeur JAVA/EE
CV Ingénieur développeur JAVA/EESid Ahmed Benkraoua
 
Comment faire la veille sur internet outils et techniques
Comment faire la veille sur internet  outils et techniquesComment faire la veille sur internet  outils et techniques
Comment faire la veille sur internet outils et techniquesArnaud Dapa
 
Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...
Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...
Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...Jean-Baptiste Dayez
 
Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01Alain Marois
 
Cv Moez HAMZAOUI JAVA J2EE FULL STACK
Cv Moez HAMZAOUI JAVA J2EE FULL STACKCv Moez HAMZAOUI JAVA J2EE FULL STACK
Cv Moez HAMZAOUI JAVA J2EE FULL STACKMoez Hamzaoui
 
Introduction à la veille technologique S2E01 (2013)
Introduction à la veille technologique S2E01 (2013)Introduction à la veille technologique S2E01 (2013)
Introduction à la veille technologique S2E01 (2013)Alain Marois
 
Présentation amazon final
Présentation amazon finalPrésentation amazon final
Présentation amazon finalAbderraouf Hadef
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence Yassine Badri
 
Alphorm.com Formation Big Data & Hadoop : Le Guide Complet
Alphorm.com Formation Big Data & Hadoop : Le Guide CompletAlphorm.com Formation Big Data & Hadoop : Le Guide Complet
Alphorm.com Formation Big Data & Hadoop : Le Guide CompletAlphorm
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & SparkAlexia Audevart
 
Recherche d'informations sur internet : méthodologie et outils disponibles
Recherche d'informations sur internet : méthodologie et outils disponiblesRecherche d'informations sur internet : méthodologie et outils disponibles
Recherche d'informations sur internet : méthodologie et outils disponiblesURFIST de Paris
 
Apache SPARK ML : principes, concepts et mise en œuvre
Apache SPARK  ML : principes, concepts et  mise en œuvre Apache SPARK  ML : principes, concepts et  mise en œuvre
Apache SPARK ML : principes, concepts et mise en œuvre MICHRAFY MUSTAFA
 

Was ist angesagt? (20)

BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian
 
وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه
وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه
وثيقة التحليل لنظام البيع في شركة الخندقاوي التجاريه
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learning
 
Big Data : concepts, cas d'usage et tendances
Big Data : concepts, cas d'usage et tendancesBig Data : concepts, cas d'usage et tendances
Big Data : concepts, cas d'usage et tendances
 
méthode push et méthode pull
méthode push et méthode pullméthode push et méthode pull
méthode push et méthode pull
 
CV Ingénieur développeur JAVA/EE
CV Ingénieur développeur JAVA/EECV Ingénieur développeur JAVA/EE
CV Ingénieur développeur JAVA/EE
 
Comment faire la veille sur internet outils et techniques
Comment faire la veille sur internet  outils et techniquesComment faire la veille sur internet  outils et techniques
Comment faire la veille sur internet outils et techniques
 
Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...
Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...
Les outils de veille informationnelle, d’archivage, de rediffusion et de cur...
 
Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01
 
Cv Moez HAMZAOUI JAVA J2EE FULL STACK
Cv Moez HAMZAOUI JAVA J2EE FULL STACKCv Moez HAMZAOUI JAVA J2EE FULL STACK
Cv Moez HAMZAOUI JAVA J2EE FULL STACK
 
Introduction à la veille technologique S2E01 (2013)
Introduction à la veille technologique S2E01 (2013)Introduction à la veille technologique S2E01 (2013)
Introduction à la veille technologique S2E01 (2013)
 
Présentation amazon final
Présentation amazon finalPrésentation amazon final
Présentation amazon final
 
Une introduction à Hive
Une introduction à HiveUne introduction à Hive
Une introduction à Hive
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence
 
Alphorm.com Formation Big Data & Hadoop : Le Guide Complet
Alphorm.com Formation Big Data & Hadoop : Le Guide CompletAlphorm.com Formation Big Data & Hadoop : Le Guide Complet
Alphorm.com Formation Big Data & Hadoop : Le Guide Complet
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & Spark
 
Recherche d'informations sur internet : méthodologie et outils disponibles
Recherche d'informations sur internet : méthodologie et outils disponiblesRecherche d'informations sur internet : méthodologie et outils disponibles
Recherche d'informations sur internet : méthodologie et outils disponibles
 
Soutenance projet
Soutenance projetSoutenance projet
Soutenance projet
 
Apache SPARK ML : principes, concepts et mise en œuvre
Apache SPARK  ML : principes, concepts et  mise en œuvre Apache SPARK  ML : principes, concepts et  mise en œuvre
Apache SPARK ML : principes, concepts et mise en œuvre
 
Td dw1
Td dw1Td dw1
Td dw1
 

Andere mochten auch

Marseille JUG Novembre 2013 Lucene Solr France Labs
Marseille JUG Novembre 2013 Lucene Solr France LabsMarseille JUG Novembre 2013 Lucene Solr France Labs
Marseille JUG Novembre 2013 Lucene Solr France Labsfrancelabs
 
Introduction to Apache Solr
Introduction to Apache SolrIntroduction to Apache Solr
Introduction to Apache SolrAndy Jackson
 
Analyse loi NOTRe - texte adopté par 2 chambres
Analyse loi NOTRe - texte adopté par 2 chambresAnalyse loi NOTRe - texte adopté par 2 chambres
Analyse loi NOTRe - texte adopté par 2 chambresGroupe Alpha
 
T3UNI12 : SOLR workshop
T3UNI12 : SOLR workshopT3UNI12 : SOLR workshop
T3UNI12 : SOLR workshopPaul Blondiaux
 
Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...
Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...
Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...Anne-Gaëlle Gaudion
 
Visite de la Ferme des Enfants et du Hameau des Buis
Visite de la Ferme des Enfants et du Hameau des BuisVisite de la Ferme des Enfants et du Hameau des Buis
Visite de la Ferme des Enfants et du Hameau des BuisThomas Hémery
 
Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...
Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...
Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...PMI-Montréal
 
What Makes Great Infographics
What Makes Great InfographicsWhat Makes Great Infographics
What Makes Great InfographicsSlideShare
 
Masters of SlideShare
Masters of SlideShareMasters of SlideShare
Masters of SlideShareKapost
 
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareSTOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareEmpowered Presentations
 
10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation Optimization10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation OptimizationOneupweb
 
Bpifrance - Bilan Activite 2014
Bpifrance  - Bilan Activite 2014Bpifrance  - Bilan Activite 2014
Bpifrance - Bilan Activite 2014Bpifrance
 
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content MarketingHow To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content MarketingContent Marketing Institute
 
Appretsupercap refait
Appretsupercap refaitAppretsupercap refait
Appretsupercap refaitibndawood
 
Placage de la lentille lunettes de soleil prada pas cher
Placage de la lentille lunettes de soleil prada pas cherPlacage de la lentille lunettes de soleil prada pas cher
Placage de la lentille lunettes de soleil prada pas cherJoe Gowey
 

Andere mochten auch (20)

Marseille JUG Novembre 2013 Lucene Solr France Labs
Marseille JUG Novembre 2013 Lucene Solr France LabsMarseille JUG Novembre 2013 Lucene Solr France Labs
Marseille JUG Novembre 2013 Lucene Solr France Labs
 
Introduction to Apache Solr
Introduction to Apache SolrIntroduction to Apache Solr
Introduction to Apache Solr
 
Analyse loi NOTRe - texte adopté par 2 chambres
Analyse loi NOTRe - texte adopté par 2 chambresAnalyse loi NOTRe - texte adopté par 2 chambres
Analyse loi NOTRe - texte adopté par 2 chambres
 
T3UNI12 : SOLR workshop
T3UNI12 : SOLR workshopT3UNI12 : SOLR workshop
T3UNI12 : SOLR workshop
 
Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...
Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...
Portails, blogs et wikis, des outils pour la médiathèque - CNFPT Corse - sept...
 
Premiers pas avec Facebook
Premiers pas avec FacebookPremiers pas avec Facebook
Premiers pas avec Facebook
 
Solr formation Sparna
Solr formation SparnaSolr formation Sparna
Solr formation Sparna
 
RH et entreprise20
RH et entreprise20 RH et entreprise20
RH et entreprise20
 
Visite de la Ferme des Enfants et du Hameau des Buis
Visite de la Ferme des Enfants et du Hameau des BuisVisite de la Ferme des Enfants et du Hameau des Buis
Visite de la Ferme des Enfants et du Hameau des Buis
 
Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...
Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...
Atelier sur le WBS (Work Breakdown Structure) - L’outil numéro 1 au monde en ...
 
What Makes Great Infographics
What Makes Great InfographicsWhat Makes Great Infographics
What Makes Great Infographics
 
Masters of SlideShare
Masters of SlideShareMasters of SlideShare
Masters of SlideShare
 
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareSTOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
 
You Suck At PowerPoint!
You Suck At PowerPoint!You Suck At PowerPoint!
You Suck At PowerPoint!
 
10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation Optimization10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation Optimization
 
Bpifrance - Bilan Activite 2014
Bpifrance  - Bilan Activite 2014Bpifrance  - Bilan Activite 2014
Bpifrance - Bilan Activite 2014
 
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content MarketingHow To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
 
Gravure Du Metal
Gravure Du MetalGravure Du Metal
Gravure Du Metal
 
Appretsupercap refait
Appretsupercap refaitAppretsupercap refait
Appretsupercap refait
 
Placage de la lentille lunettes de soleil prada pas cher
Placage de la lentille lunettes de soleil prada pas cherPlacage de la lentille lunettes de soleil prada pas cher
Placage de la lentille lunettes de soleil prada pas cher
 

Ähnlich wie Solr, c'est simple et Big Data ready - prez au Lyon jug Fév 2014

Geneva jug Lucene Solr
Geneva jug Lucene Solr Geneva jug Lucene Solr
Geneva jug Lucene Solr francelabs
 
Solr + Hadoop - Fouillez facilement dans votre système Big Data
Solr + Hadoop - Fouillez facilement dans votre système Big DataSolr + Hadoop - Fouillez facilement dans votre système Big Data
Solr + Hadoop - Fouillez facilement dans votre système Big Datafrancelabs
 
Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014
Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014
Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014francelabs
 
Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)Thibaud Vibes
 
code4lib 2011 : choses vues et entendues par l'ABES
code4lib 2011 : choses vues et entendues par l'ABEScode4lib 2011 : choses vues et entendues par l'ABES
code4lib 2011 : choses vues et entendues par l'ABESABES
 
Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012David Pilato
 
Panorama de l'offre de logiciels libres pour bibliothèque v2
Panorama de l'offre de logiciels libres pour bibliothèque v2Panorama de l'offre de logiciels libres pour bibliothèque v2
Panorama de l'offre de logiciels libres pour bibliothèque v2Marc Maisonneuve
 
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...Véronique Gambier
 
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...Véronique Gambier
 
Apache solr andré bois-crettez 08
Apache solr   andré bois-crettez 08Apache solr   andré bois-crettez 08
Apache solr andré bois-crettez 08Loïc Descotte
 
Les micro orm, alternatives à entity framework
Les micro orm, alternatives à entity frameworkLes micro orm, alternatives à entity framework
Les micro orm, alternatives à entity frameworkMSDEVMTL
 
Normandy JUG - Elasticsearch
Normandy JUG - ElasticsearchNormandy JUG - Elasticsearch
Normandy JUG - ElasticsearchDavid Pilato
 
Alphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm
 
T3UNIFR11 - TYPO3 et les moteurs de recherche
T3UNIFR11 - TYPO3 et les moteurs de rechercheT3UNIFR11 - TYPO3 et les moteurs de recherche
T3UNIFR11 - TYPO3 et les moteurs de recherchesitengo
 
Presentation dublincore l3
Presentation dublincore l3Presentation dublincore l3
Presentation dublincore l3DublinCore2b
 
OpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - Canada
OpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - CanadaOpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - Canada
OpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - CanadaJonathan Le Lous
 
Eclipse day paris
Eclipse day parisEclipse day paris
Eclipse day parisLeTesteur
 
Développement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchDéveloppement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchRobert Viseur
 
Lyon JUG - Elasticsearch
Lyon JUG - ElasticsearchLyon JUG - Elasticsearch
Lyon JUG - ElasticsearchDavid Pilato
 

Ähnlich wie Solr, c'est simple et Big Data ready - prez au Lyon jug Fév 2014 (20)

Geneva jug Lucene Solr
Geneva jug Lucene Solr Geneva jug Lucene Solr
Geneva jug Lucene Solr
 
Solr + Hadoop - Fouillez facilement dans votre système Big Data
Solr + Hadoop - Fouillez facilement dans votre système Big DataSolr + Hadoop - Fouillez facilement dans votre système Big Data
Solr + Hadoop - Fouillez facilement dans votre système Big Data
 
Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014
Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014
Migration d'Exalead vers Solr - IFCE et France Labs - Search Day 2014
 
Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)
 
code4lib 2011 : choses vues et entendues par l'ABES
code4lib 2011 : choses vues et entendues par l'ABEScode4lib 2011 : choses vues et entendues par l'ABES
code4lib 2011 : choses vues et entendues par l'ABES
 
Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012
 
Panorama de l'offre de logiciels libres pour bibliothèque v2
Panorama de l'offre de logiciels libres pour bibliothèque v2Panorama de l'offre de logiciels libres pour bibliothèque v2
Panorama de l'offre de logiciels libres pour bibliothèque v2
 
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
 
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
Panoramadeloffredelogicielslibrespourbibliothque 150123082251-conversion-gate...
 
Apache solr andré bois-crettez 08
Apache solr   andré bois-crettez 08Apache solr   andré bois-crettez 08
Apache solr andré bois-crettez 08
 
Show de boucane pour ELK
Show de boucane pour ELKShow de boucane pour ELK
Show de boucane pour ELK
 
Les micro orm, alternatives à entity framework
Les micro orm, alternatives à entity frameworkLes micro orm, alternatives à entity framework
Les micro orm, alternatives à entity framework
 
Normandy JUG - Elasticsearch
Normandy JUG - ElasticsearchNormandy JUG - Elasticsearch
Normandy JUG - Elasticsearch
 
Alphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentaux
 
T3UNIFR11 - TYPO3 et les moteurs de recherche
T3UNIFR11 - TYPO3 et les moteurs de rechercheT3UNIFR11 - TYPO3 et les moteurs de recherche
T3UNIFR11 - TYPO3 et les moteurs de recherche
 
Presentation dublincore l3
Presentation dublincore l3Presentation dublincore l3
Presentation dublincore l3
 
OpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - Canada
OpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - CanadaOpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - Canada
OpenStack: stratégies et composants - Mars 2014 - Montréal - Québec - Canada
 
Eclipse day paris
Eclipse day parisEclipse day paris
Eclipse day paris
 
Développement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchDéveloppement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend Search
 
Lyon JUG - Elasticsearch
Lyon JUG - ElasticsearchLyon JUG - Elasticsearch
Lyon JUG - Elasticsearch
 

Solr, c'est simple et Big Data ready - prez au Lyon jug Fév 2014

  • 2. Introduction A propos de moi :     Cofondateur de la société France Labs Développeur (principalement Java) Formateur Solr (France Labs, Lucidworks) Enseignant vacataire (Polytech’Nice-Sophia) A propos de France Labs :   Startup créée en 2011 Partenaire officiel de LucidWorks pour la France
  • 3. Introduction Domaine:  Moteurs de recherche d'entreprise Open Source 2 activités:   Consulting/support/formation sur Lucene/Solr/Constellio/LucidWorks R&D (algorithmes de ranking, connecteurs, réseaux sociaux)
  • 4. Pourquoi Lucene/Solr? Besoins d'entreprise : avoir une bonne solution logicielle, avec un support fiable Par conséquent notre choix de Lucene/Solr :     Large communauté autour de Lucene/Solr Schémas de support professionnel pour Lucene/Solr Solr 4 pensé pour le Big Data Utilisé par Twitter, Linkedin, eBay, Salesforce, IBM, Apple
  • 5. Présentation de Solr       Architecture SOLR Scoring Indexation Requêtage Fonctionnalités Solr Cloud Solr et son écosystème
  • 6. Présentation de Solr       Architecture SOLR Scoring Indexation Requêtage Fonctionnalités Solr Cloud Solr et son écosystème
  • 7. La recherche est un oignon!
  • 8. La recherche est un oignon!
  • 9. La recherche est un oignon matricielle!
  • 11. Lucene Créé en 2000 par Doug Cutting. Version Actuelle : Lucene v. 4.6 (Novembre 2013) Projet Open Source, Apache depuis 2001 Librairie de recherche “full-text” Rapide, stable, performant, modulable 100% Java (pas de dépendances)
  • 12. Lucene Un outil qui permet:  De créer un index à partir de documents INDEX
  • 13. Index
  • 14. Document, fields, terms     Document : unité d’indexation Field : partie d’un document, contient les données Term : unité atomique d’un champ Si on veut indexer un livre, on aura: • • • • • Title : Lucene in Action Author : Erik Hatcher, Otis Gospodnetid Description : Lucene is a gem in the open-source... Content : … Term Field … Document
  • 15. Lucene Un outil qui permet: De créer un index à partir de documents  D’effectuer des recherches dans cet index  INDEX
  • 16. Lucene Différence avec une base de données :     Optimisé pour récupérer un doc à partir de son contenu Résultats scorés Non relationnelle, structure non fixe Champs qui peuvent contenir plusieurs valeurs
  • 18. Requêtage - Architecture type:voitures AND prix:[3000 TO 5000] Query Parser Lucene analyzer Index Searcher Lucene INDEX
  • 20. Lucene Lucene est une simple bibliothèque Besoin d’une couche serveur…
  • 21. Solr
  • 22. Solr par rapport à Lucene Lucene « embarqué » dans une webapp Créé en 2004 par Yonik Seeley à CENT Networks In 2006, Solr devient open-source et été cédé à la Apache Software Foundation En 2010, fusion des projets Lucene et Solr Version Actuelle : Solr 4.6 (Novembre 2013)
  • 23. Solr par rapport à Lucene APIs XML/HTTP de type REST Configuration par fichiers XML Mécanisme de Cache, Réplication Interface admin web
  • 24. Solr par rapport à Lucene Interfaces HTTP pour :  ajouter des documents (POST) •  http://localhost:8983/solr/update effectuer des recherches (GET) • http://localhost:8983/solr/select
  • 25. Intéraction Solr / Monde extérieur Update Handler Search Handler Lucene Solr © www,oblady,com
  • 26. Architecture (Virtual) Machine OS Java Virtual Machine Conteneur de servlet (Jetty, Tomcat) Solr faceting, replication, caching, distributed search, admin, Lucene best practices Lucene Java core search, analysis tools, hit highlighting, spell checking © www,oblady,com
  • 28. Surcouche Besoin (parfois) d’une surcouche:     Interface WEB pour le client Crawl des documents sur les différents systèmes Gestions de la sécurité Statistiques Exemples de solutions « clé en main » : Constellio  LucidWorks  Datafari 
  • 30. Présentation de Solr       Architecture SOLR Scoring Indexation Requêtage Fonctionnalités Solr Cloud Solr et son écosystème
  • 32. Scoring en Lucene Formule paramètrable Combinaison de   Boolean Model (Match) Vector Space Model (Scoring) • •  Term Frequency Inverse Document Frequency… Boosts…
  • 33. TF-IDF Term Frequency (TF) :  Fréquence d’un Terme dans un document France Labs Bienvenue sur le site de France Labs. Créée en 2011, France Labs est une société composée d'experts en gestion de l'information. Que ce soit pour de l'expertise, pour nos produits ou pour nos solutions métiers, nous faisons en sorte que vous augmentiez votre efficacité par une meilleure exploitation de vos données. France Labs, spécialiste des outils de recherche open source, propose des plugins innovants et des services de conseil, intégration et maintenance, sur Lucene, Solr et Constellio. Europe, nous sommes le partenaire de Constellio, solution complète de recherche.
  • 34. TF-IDF Inverse Document Frequency (IDF):  Rareté du terme dans l’ensemble de l’index Expertise Lucene Souhaitant intervenir plus en amont dans la vie de l’entreprise, pour vous proposer toujours plus de conseils à partir de nos expertises, Expertise & Conseil a créé Formation & Conseil : une structure de formation destinée aux acteurs de performance de l’entreprise. Apache Lucene, la fameuse technologie pour l’indexation, la recherche et l’analyse du texte est la base de plusieurs serveurs Open Source. La présentation détaillera Solr et ElasticSearch sous la forme « Tools in Action » - démonstrations en direct des différents outils.
  • 35. TF-IDF Norms :  Taille des champs Solr Titre : Les moteurs de recherche Content : Apache Solr est une librairie de recherche full text en open source. Elle propose des API REST, des mécanismes de cache, réplication et mise à l’échelle. Titre : Encyclopédie Content : Solr est une moteur de recherche open source. Elastic Search est un moteur de recherche open source (mais quand même un peu moins bien) …. …. …. Le chat est une animal de compagnie avec des oreilles.
  • 36. Boosts Boosts:       Privilégier un doc en particulier… Privilégier un champ par rapport à un autre… Privilégier les phrases exactes… Privilégier les docs qui matchent une requête… Privilégier les docs par rapport au résultat d’une fonction … Privilégier les docs géolocalisé les plus proches….
  • 37. Boosts Boosts:  Boost sur le Titre Fonctionnalités Titre : Fonctionnalités Content : Interface d'administration en HTML, Réplication, Mise en cache Recherche distribuée, Recherche à facettes, Recherche géospatiale ,API HTTP/XML, JSON et bibliothèques pour les langages de script Python et Ruby, Intégration des bases de données Titre : Highlighter Content : Cette fonctionnalité permet de mettre en surbrillance les termes recherchés. Ce principe est le même que les pages "en cache" de Google où les termes recherchés apparaissent surlignés en jaune. C'est une fonctionnalité puissante et pratique.
  • 40. Présentation de Solr       Architecture SOLR Scoring Indexation Requêtage Fonctionnalités Solr Cloud Solr et son écosystème
  • 41. Crawling Le crawling de documents n’est PAS le job de Solr Mais il existe de nombreux outils pour cela : DIH  Nutch  Aperture  Manifold CF  Google Connectors 
  • 42. Indexation Préparer les documents   Convertir en XML, JSON, CSV (ou document riche avec Tika) Peut contenir plusieurs Docs
  • 43. Indexation Poster les documents par HTTP  Avec cURL (linux) •  Ex : curl http://localhost:8983/solr/collection1/update -H "Content-type:text/xml" --data-binary @mem.xml Post.jar et Post.sh • Ex : java -jar post.jar *.xml
  • 44. Clients Avec des clients spécifiques:  SolrJ •        Client le plus évolué SolrNet rsolr SolPython SolPerl SolPHP scalikesolr …
  • 45. Latence d’indexation Documents visibles une fois commités Possibilité d’utiliser le « soft-commit » Pour avoir du NRT
  • 46. Pour la configuration de Solr Pour la configuration de Solr (Presque) tout se passe dans 2 fichiers:  Schema.xml •  Décrit les données à indexer SolrConfig.xml • Comportement interne du serveur et interactions avec le monde extérieur
  • 47. Schema Déclaration des champs fixes: Ou dynamiques:
  • 48. Schema Et des types de champs: Entier  Date  String  •  Un seul morceau Text • • Text découpé et normalisé Avec un analyzer spécifique
  • 49. Analyzer Document Analysis Query Analysis Coquilles SaintJacques Coquilles saint-jacques WhitespaceTokenizer WhitespaceTokenizer Coquilles SaintJacques Coquilles WordDelimiter Coquilles Saint WordDelimiter Jacques Coquilles LowerCaseFilter coquilles saint saint-jacques saint jacques LowerCaseFilter jacques coquilles saint jacques
  • 51. Analyzers Beaucoup d’analyzers prédéfinis  Spécifiques au langage Mais modulables : beaucoup de composants disponibles :   Ajout de synonymes Stemming •   manger, mangera => mang Phonétique …
  • 53. Présentation de Solr       Architecture SOLR Scoring Indexation Requêtage Fonctionnalités Solr Cloud Solr et son écosystème
  • 54. Première requête URL :  http://localhost:8983/solr/collection1/select... HTTP GET request     Web browser Curl SolrJ …
  • 55. Structure de la requête http://localhost:8983/solr/collection1/select ?q=*:*&start=0&rows=10&fl=description /solr/ : contexte de l’application web où Solr est installé  /collection1: Collection (ou index) de Solr  select : request handler  Après le ? => paramètres non ordonnés 
  • 57. Type de requêtes Type But Exemple TermQuery Simple terme Peut être spécifique à un champ Tarte Type:Dessert PhraseQuery Match de plusieurs termes dans l’ordre « tarte aux pommes" RangeQuery Fourchette [A TO Z] {A TO Z} WildcardQuery Lettres manquantes j*v? f??bar PrefixQuery Tous les termes qui commencent par X. cheese* FuzzyQuery Distance de Levenshtein manger~ BooleanQuery Agrégation de plusieurs queries manger AND cheese* -cheesecake
  • 58. Requêtage L’utilisateur peut donc faire des requêtes complexe:
  • 59. Requêtage Mais fera plutôt des requêtes de ce type: A nous de faire avec… 
  • 60. Présentation de Solr       Architecture SOLR Scoring Indexation Requêtage Fonctionnalités Solr Cloud Solr et son écosystème
  • 65. Autres fonctionnalités More Like This   Obtenir des documents similaires à un document Similarité textuelle Highlighting
  • 66. Et les vôtres… Solr est très orienté plugin Possibilité de surcharger quasiment tout…
  • 67. Configuration de Solr Pour la configuration de Solr (Presque) tout se passe dans 2 fichiers:  Schema.xml •  Décrit les données à indexer SolrConfig.xml • Comportement interne du serveur et interaction avec le monde extérieur
  • 68. Exemple: Solrconfig.xml permet le paramètrage : Request Handler  Composants associés (autocomplete, highlighting)  Caches, Fréquences de commits etc…  Bref, presque tout le reste… 
  • 71. Présentation de Solr       Architecture SOLR Scoring Indexation Requêtage Fonctionnalités Solr Cloud Solr et son écosystème
  • 72. Solr Cloud Nouvelle architecture de Solr pour gérer la scalabilité Nouveau système de mise à l’échelle de Solr  Pack 2 en 1 • Distribution - Volumétrie élevée • Réplication - Répartition de la charge - Haute dispo Architecture flexible
  • 73. Zookeeper Logiciel de gestion de configurations pour système distribués Contient les configs des indexs de Solr Cloud Les Solr s’enregistrent et se désenregistrent auprès du Zookeeper Statuts des shards enregistrés
  • 74. Nouvelles notions Sharding    Un Shard est un morceau d’index Une recherche distribuée se fait sur tous les shards (ie sur tout l’index) Utile pour gérer une grosse volumétrie de document Sous-Requêtes Shard1 Requêtes Résultats Aggrégés Shard2 Shard3
  • 75. Nouvelles notions Leader et Replica pour la réplication  On n’a pas de maître/esclave mais des leader/replica •   Un replica peut devenir leader si son leader tombe Le leader et le replica contienne le même shard Utile pour répartir la charge/assurer une haute dispo Leader Shard 1 Requêtes Replica 2 Shard 2 Replica 1 Shard 1 Requêtes Requêtes Load Balancer
  • 76. 1 index- 2 shards – 2 replicas Un exemple! On veut un index, réparti sur 2 shards (ie : coupé en 2) Chaque shard sera répliqué 1 fois Donc 4 machines INDEX
  • 77. Solr Cloud On démarre le première machine, envoie la configuration et spécifie le nombre de shards voulus ConfigIndex1 Leader Shard1 Zookeeper
  • 78. Solr Cloud On démarre la deuxième machine, sans lui spécifier de configuration mais en pointant sur le Zookeeper Leader Shard1 Zookeeper Leader Shard2
  • 79. Solr Cloud On démarre la 3ème machine, sans lui spécifier de configuration mais en pointant sur le Zookeeper Leader Shard1 Zookeeper Replica Shard1 Leader Shard2
  • 80. Solr Cloud On démarre la 4ème machine, sans lui spécifier de configuration mais en pointant sur le Zookeeper Leader Shard1 Leader Shard2 Zookeeper Replica Shard1 Replica Shard2
  • 81. Indexation Distribution automatique des updates Comment? On envoie les docs à n’importe quelle machine  Solr se charge de les transmettre à la bonne machine
  • 82. Solr Cloud Indexer Leader 1 Leader 2 Replica 1 Replica 2
  • 83. Recherche Distribution des recherches automatique Hors SolrJ :  On registre les shards dans le load balancer Avec SolrJ :  On utilise un objet CloudSolrServer • • Pointé sur Zookeeper Gère le load balancing
  • 85. Avantages Architecture très flexible  En cas d’augmentation de charge • •  Ajout de machines qui pointent sur Zookeeper Enregistrement des machines dans le Load Balancer En cas de diminution de charge • Eteindre des machines Zookeeper   Gestion centralisée des configurations Visualisation du statut des shards
  • 86. Avantages Réplication  Automatique et fiable Support du NRT Distribution automatique des MAJs Distribution automatique des recherches
  • 89.
  • 90. Présentation de Solr Solr et son écosystème  Crawling des données  Exemple de UI  Outils sémantiques  Hadoop
  • 91. Présentation de Solr Solr et son écosystème  Crawling des données  Exemple de UI  Outils sémantiques  Hadoop
  • 92. Role Solr ne crawle PAS les données Besoin d’un crawler pour :    Connection au système externe à crawler Récupération des données Gestions des autorisations
  • 93. Role Mode Push ou Pull Crawling normal ou incrémental Réglage de l’impact sur le système crawlé   Throttling Scheduling En cas de documents riches (Pdf, Word):  Extraction du contenu
  • 94. Extraction de contenu Apache Tika Contribution de Solr   Détection du Mime-type Embarque des librairies pour: • •  Lire le contenu Extraire les meta-données Extension supportés: • • • • • • • XHTML MS Office (OLE2 and OOXML) OpenDocument PDF RTF Zip Audio/Video/Image files
  • 95. Les crawlers Differents Crawlers  Nutch •  DIH • •  Crawler web distribué Contrib de Solr Crawl DB, XML Aperture • File, Web Et Framework   Google Enterprise Connector Manifold CF
  • 96. Manifold CF Basé sur « Connector Framework » développé par Karl Wright pour la MetaCarta Appliance Donné à l’Apache Software Foundation en 2009 (première version 2011) Mai 2012 : sortie d’incubation Version actuelle 1.5.1 (Février 2014)
  • 97. Manifold CF Crawling incrémental Gère les autorisations Configuration par UI et API Créé pour Solr Architecture en mode plugin
  • 98. Manifold CF Differents connecteurs pour :  Content Repositories : • • • • • •  Authorities: • •  SharePoint Windows Share CMIS (Alfresco) DB RSS Wiki AD LDAP Output repositories : • • Solr Elastic Search
  • 99. Manifold CF 2 composants principaux:  Pull agent: • • • Contient les connecteurs (repository et output connectors) Récupère les données à partir des différents repositories Et les push avec leurs ACLs aux output connectors Pull Agent
  • 100. Manifold CF 2 composants principaux:  Authority service: • • Contient les authority connectors Liste de tous les tokens pour l’utilisateur courant
  • 101. Manifold CF Intégration avec Solr  Exemple : crawl de fichiers avec autorisation • Environnement : - File Share Windows - Active Directory • Indexer les fichiers et respecter les droits à la requête
  • 102. Manifold CF Configuration côté Manifold CF    Configuration du connecteur JCIFS Configuration du connecteur AD Configuration du connecteur Solr
  • 103. Manifold CF Modification du schéma Solr  Ajout de champs pour indexés les ACLs •  AllowFile, DenyFile, AllowDirectory, DenyDirectory… Ajout d’un plugin à Solr (MCF Search Plugin) pour interroger Manifold CF pour obtenir les infos d’utilisateur
  • 104. Manifold CF Repositories Windows Share Connecteur AD Connecteur JCIFS Manifold CF pull Agent Indexation Authorities Manifold CF AD Manifold CF authority service Connecteur Solr Get User access token Docs and access tokens Solr MCF Search Plugin Output
  • 105. Manifold CF Repositories Windows Share Connecteur JCIFS Manifold CF pull Agent Connecteur Solr Requête Front End Docs and access tokens Search authentifié Résultats autorisés Authorities Manifold CF Connecteur AD AD Manifold CF authority service Get User access token MCF Filtre les docs suivant leur ACLsSearch infos et les Solr Plugin d’utilisateur Output
  • 107. Présentation de Solr Solr et son écosystème  Crawling des données  Exemple de UI  Outils sémantiques  Hadoop
  • 108. AjaxFranceLabs Inspiré de AjaxSolr Client Javascript/Ajax Fournit plusieurs composants:  Un Manager •  Gère la connexion avec le serveur Et des widgets • Composant graphique et logique
  • 111. Présentation de Solr Solr et son écosystème  Crawling des données  Exemple de UI  Outils sémantiques  Hadoop
  • 112. Sémantique Le sémantique n‘est pas le travail de Solr Fait seulement de la recherche full-text (mais le fait bien ) Solr  Il existe des plugins pour cela • • • UIMA GATE OpenNLP
  • 113. Sémantique UIMA (Unstructured Information Management Architecture)     Framework apache Plugin Solr Côté indexation Contient un pipeline d’Annotators • • • •  Open Calais AlchemyAPI OpenNLP … Chaque annotator va rajouter des métadonnées au document
  • 114. UIMA Ex : OpenNLP   Coté indexation ou requêtage Part of speech •  Verbe nom… Extraction d’entités • • Lieu Personne
  • 115. Natural Langage Processing Solr + OpenNLP + custom code => outils de recherche en langage naturel Voir livre « Taming Text » de Grant Ingersoll
  • 116. Présentation de Solr Solr et son écosystème  Crawling des données  Exemple de UI  Outils sémantiques  Hadoop
  • 117. Hadoop Créé par Doug Cutting Framework open source Inspiré par les papiers sur Google Map Reduce et Google File System
  • 118. Hadoop Traiter des grands volumes de données en un minimum de temps Stocker des immenses volumes de données Fonctionne sur machines de configuration faible et peu coûteuses
  • 119. Hadoop Architecture (très) simplifiée de Hadoop Nœud 1 Couche Traitement (Map Reduce) Nœud 2 Nœud 3 Couche Stockage (HDFS) Nœud 4
  • 120. Hadoop Couche stockage (HDFS)    Système de fichier distribué Utilise les disques « normaux » de chacun des nœuds… …pour donner l’impression de n’utiliser qu’un seul énorme disque Fiable (données répliquées 3 fois)
  • 121. Hadoop Couche traitement (Map Reduce)   Hadoop exécute des jobs Map Reduce Notre algo doit donc implémenter: • •  Un mapper Un reducer Pour être executé de manière distribuée par Hadoop en tant que job
  • 122. Hadoop Mapper   Prend des données en entrée Et les transforme en paire de clé valeur Clé1 : Val1 Clé2 : Val2 Clé3 : Val3 Clé4 : Val4 Mapper
  • 123. Hadoop Reducer  Combine les valeurs ayant la même clé Clé 1 : Val1 Clé 2 : Val2 Clé 1 : Val3 Clé 2 : Val4 Clé1 : Val5 Clé2 : Val6 Reducer
  • 124. Hadoop Un exemple simple?     On a en entrée plusieurs textes On veut compter le nombre d’occurrence des mots De manière distribuée En utilisant un job Map Reduce Solr Datafari Apache Solr est une couche web open source basée sur la librairie de recherche Apache Lucene. Elle ajoute des fonctionnalités de serveur web, du faceting. Datafari est notre solution open source de recherche d'entreprises, basée sur Lucene, Solr, et le framework de connecteurs Apache ManifoldCF. Lucene Apache Lucene est un moteur de recherche et d'indexation, en open source.
  • 125. Hadoop Solr Apache Solr est une couche web open source basée sur la librairie de recherche Apache Lucene. Elle ajoute des fonctionnalités de serveur web, du faceting. Datafari Datafari est notre solution open source de recherche d'entreprises, basée sur Lucene, Solr, et le framework de connecteurs Apache ManifoldCF. Mapper Mapper Lucene Apache Lucene est un moteur de recherche et d'indexation, en open source. Apache : 1 Apache : 1 Solr : 1 Lucene : 1 … Apache : 1 Solr : 1 Lucene : 1 … Apache : 1 Lucene : 1 … Mapper Apache : 4 Solr : 2 Lucene : 3 … Reducer
  • 126. Hadoop Distribution du l’algo en Map Reduce Apache : 13 Lucene : 10 Nœud 1 Open : 19 Nœud 2 Solr : 10 Apache : 44 Nœud Solr : 10 3 Apache : 2 Nœud 4 Manifold : 1
  • 127. Hadoop Opération Map sur les documents sur chacun des noeuds Apache : 1 Lucene : 1 Nœud 1 Map Apache : 1 Open : 1 Nœud 2 Solr : 1 Map Source : 1 Apache : 1 Nœud Solr : 1 3 SolrMap :1 Apache : 1 Nœud 4 Manifold : 1 Map Source : 1
  • 128. Hadoop Echange des données entre les nœud (shuffle) Apache : 1 Lucene : 1 Nœud 1 Apache : 1 Open : 1 Solr : 1 Source : 1 Apache : 1 Solr : 1 Solr : 1 Apache : 1 Manifold : 1 Nœud 2 Nœud 3 Nœud 4 Source : 1
  • 129. Hadoop Opération de Reduce sur chacun des noeuds Apache : 1 Apache : 1 Apache : 1 Apache : 1 Nœud 1 Apache : 4 Reduce Lucene : 1 Manifold : 1 Open : 1 Lucene : 1 Nœud 2 Manifold : 1 Reduce Open : 1 Solr : 1 Solr : 1 Solr : 1 Source : 1 Nœud 3 Solr : 3 Reduce Nœud 4 Source : 2 Reduce Source : 1
  • 130. Nutch Créé par Doug Cutting Crawler Web Permet de crawler un large volume de données Basé sur Hadoop
  • 131. Behemoth Projet Apache Surcouche d’Hadoop Permet de déployer sur Hadoop des traitements tel que:    Identification de language Extraction de contenu (Tika) Pipeline UIMA
  • 132. Solr directement couplé avec Hadoop Possibilité de stocker l’index de Solr sur HDFS    Stockage de gros volume de donnée Gestion de la réplication Utilisation d’un cluster Hadoop existant A venir: Possibilité de créer l’index à l’aide de job Map Reduce  Augmentation performance d’indexation sur de gros volumes de données
  • 133. Exemples d’utilisation d’Hadoop Calcul du scoring des docs  Ex: PageRank calculé par le Google Map/Reduce Web Google Map/Reduce (≠ Hadoop Mapreduce) : Calcul PageRank Moteur de recherche (≠ Lucene Solr)
  • 134. Exemples d’utilisation d’Hadoop Calcul de recommandation  Ex: Linkedin
  • 135. Exemples d’utilisation d’Hadoop Voldemort (Linkedin filesystem) Hadoop (pour le calcul) Web Server (pour l’affichage) Données brutes Calcul distribué des recommandations Injection des recommandations par utilisateur Lecture des données utilisateur et leur recommandations
  • 136. Hadoop Voldemort (Linkedin filesystem) Lucene (pour le search) Web Server (pour l’affichage) Données brutes Indexation des utilisateurs Recherche d’utilisateurs Lecture des données utilisateur spécifique
  • 139. Site web : www.francelabs.com Email : aurelien.mazoyer@francelabs.com Twitter : Francelabs