Geneva jug Lucene Solr

Preview:

DESCRIPTION

Geneva JUG 04 novembre 2014 Présentation Lucene Solr France Labs

Citation preview

Apache SolrGeneva JUG

Aurélien MAZOYER

Olivier TAVARD

04/11/14

Introduction

A propos : Cofondateur de la société France Labs

Développeur (principalement Java)

Formateur Solr

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/LucidWorks/Datafari

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 matriciel!

Lucene

Lucene

Créé en 2000 par Doug Cutting. Version Actuelle : Lucene v. 4.10.2 (Octobre 2014)

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

FieldTerm

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 Gospodnetić

• Description : Lucene is a gem in the open-source...

• Content : …

• …

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

Lucene

Indexation - Architecture

CrawlerLucene

analyzerIndexer

INDEX

Lucene

Requêtage - Architecture

QueryParser

Luceneanalyzer

Index Searcher

type:voitures AND prix:[3000 TO 5000]

INDEX

Analyzer

Index

coquilles

saint

Jacques

….

Document Requête

coquilles saint jacques

Coquilles saint-jacques

coquilles saint jacques

Coquilles SaintJacques

Luceneanalyzer

Luceneanalyzer

Indexation Requête

Match!

Lucene est une simple bibliothèque

Besoin d’une couche serveur…

Lucene

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.10.2 (Octobre 2014)

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

© www,oblady,com

Intéraction Solr / Monde extérieur

Solr

Update Handler Search Handler

Lucene

© 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 Javacore search, analysis tools, hit highlighting, spell checking

Surcouche

Surcouche

Besoin (parfois) d’une surcouche: Interface WEB pour le client

Crawl des documents sur les différents systèmes

Gestion 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

Récupérer les bons résultats…

… et seulement ceux là

Precision Pourcentage de docs pertinents sur les

docs retournés

Matchs corrects/total retourné

Recall Pourcentage de docs pertinents

retournés sur le total des docs pertinents

Matches corrects/(matchscorrects+matchs manqués)

Trouver un bon compromis…

Documents Pertinents

Document Retournés

Documents Pertinents

Docs retournéset pertinents

Recherche pertinente

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 unesociété composée d'experts engestion de l'information. Que ce soitpour de l'expertise, pour nos produitsou pour nos solutions métiers, nousfaisons en sorte que vous augmentiezvotre efficacité par une meilleureexploitation de vos données.

France Labs, spécialiste des outilsde recherche open source, proposedes plugins innovants et desservices de conseil, intégration etmaintenance, sur Lucene, Solr etConstellio. Europe, nous sommes lepartenaire de Constellio, solutioncomplète de recherche.

TF-IDF

Inverse Document Frequency (IDF): Rareté du terme dans l’ensemble de l’index

Expertise Lucene

Souhaitant intervenir plus en amontdans la vie de l’entreprise, pour vousproposer toujours plus de conseils àpartir de nos expertises, Expertise &Conseil a créé Formation & Conseil :une structure de formation destinéeaux acteurs de performance del’entreprise.

Apache Lucene, la fameusetechnologie pour l’indexation, larecherche et l’analyse du texte est labase de plusieurs serveurs OpenSource. La présentation détailleraSolr et ElasticSearch sous la forme «Tools in Action » - démonstrationsen direct des différents outils.

TF-IDF

Norms : Taille des champs

Solr

Titre : Les moteurs de rechercheContent :Apache Solr est une librairie derecherche full text en open source.Elle propose des API REST, desmécanismes de cache, réplication etmise à l’échelle.

Titre : EncyclopédieContent :Solr est une moteur de rechercheopen source. Elastic Search est unmoteur de recherche open source(mais quand même un peu moinsbien)….….

…. Le chat est une animal decompagnie avec des oreilles.

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

Boosts: Boost sur le Titre

Fonctionnalités

Titre : FonctionnalitésContent :Interface d'administration en HTML,Réplication, Mise en cacheRecherche distribuée, Recherche àfacettes, Recherche géospatiale ,APIHTTP/XML, JSON et bibliothèquespour les langages de script Python etRuby, Intégration des bases dedonnées

Titre : HighlighterContent :Cette fonctionnalité permet de mettreen surbrillance les termes recherchés.Ce principe est le même que les pages"en cache" de Google où les termesrecherchés apparaissent surlignés en

jaune.C'est une fonctionnalité puissante etpratique.

Scoring en Lucene

Des questions???

Présentation de Solr Architecture SOLR

Scoring

Indexation

Requêtage

Fonctionnalités

Solr Cloud

Solr et son écosystème

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

Crawling

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

Indexation

Avec des clients spécifiques: SolrJ

• Client le plus évolué

SolrNet

rsolr

SolPython

SolPerl

Solarium

scalikesolr

Clients

Documents visibles une fois commités

Possibilité d’utiliser le « soft-commit »

Pour avoir du NRT

Latence d’indexation

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

Coquilles SaintJacques

WordDelimiter

Coquilles Saint Jacques

Document Analysis

coquilles saint jacques

LowerCaseFilter

WhitespaceTokenizer

Coquilles SaintJacques

Coquilles saint-jacques

WordDelimiter

Coquilles saint jacques

Query Analysis

coquilles saint jacques

LowerCaseFilter

WhitespaceTokenizer

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

TermQuerySimple termePeut être spécifique à un champ

TarteType:Dessert

PhraseQueryMatch de plusieurstermes dans l’ordre

« tarte aux pommes"

RangeQuery Fourchette[A TO Z]{A TO Z}

WildcardQuery Lettres manquantesj*v?f??bar

PrefixQueryTous les termes qui commencent par X.

cheese*

FuzzyQuery Distance de Levenshtein manger~

BooleanQueryAgrégation de plusieursqueries

manger ANDcheese* -cheesecake

Requêtage

L’utilisateur peut donc faire des requêtes complexes :

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

Fonctionnalité

Joining Possibilité de faire une jointure sur plusieurs

indexes (clé primaire -> clé secondaire)

Mais à éviter

Préférer la dénormalisation

Aplatir les données Dénormalisation

Données redondantes

Recherche rapide sur un seul index (pas de join)

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 SolrCloud

Les Solr s’enregistrent et se désenregistrentauprè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

Shard3

Requêtes

Shard1 Shard2

RésultatsAggrégés

Sous-Requêtes

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 contiennent le même shard

Utile pour répartir la charge/assurer une haute dispo

Leader Shard 1

Replica 2 Shard 2

Replica 1 Shard 1

Load Balancer

Requêtes Requêtes Requêtes

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

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

Solr Cloud

Zookeeper

ConfigIndex1

Leader Shard1

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

Solr Cloud

Zookeeper

Leader Shard2Leader Shard1

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

Solr Cloud

Zookeeper

Leader Shard2

Replica Shard1

Leader Shard1

Replica Shard1

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

Solr Cloud

Zookeeper

Leader Shard2

Replica Shard2

Leader Shard1

Indexation

Distribution automatique des updates

Comment?

On envoie les docs à n’importe quelle machine Solr se charge de les transmettre à la bonne machine

Leader 1 Leader 2

Replica 1 Replica 2

Solr Cloud

Indexer

Recherche

Distribution des recherches automatiques

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

Leader 1 Leader 2

Replica 1 Replica 2

Solr Cloud

Search

Search

Avantages

Architecture très flexible En cas d’augmentation de charge

• Ajout de machines qui pointent sur Zookeeper

• Si pas de client intelligent- 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

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

Role

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

Extraction de contenu

Les crawlers

Differents Crawlers Nutch

• Crawler web distribué

DIH• 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.7.1 (Septembre 2014)

Manifold CF

Crawling incrémental

Gère les autorisations

Configuration par UI et API

Créé pour Solr

Architecture en mode plugin

Differents connecteurs pour : Content Repositories :

• SharePoint• Windows Share• CMIS (Alfresco)• DB• RSS• Wiki

Authorities:• 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

Manifold CF

Pull Agent

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 Samba

Configuration du connecteur AD

Configuration du connecteur Solr

Manifold CF

Modification du schéma Solr Ajout de champs pour indexer 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

Manifold CF

AD

Manifold CF pull Agent

ConnecteurJCIFS

Connecteur Solr

Docs andaccess tokens

Get User access token

Repositories Authorities

Manifold CF

OutputSolr

MCF SearchPlugin

Indexation

Manifold CF authority

service

Connecteur AD

Windows Share

Manifold CF

AD

Manifold CF pull Agent

ConnecteurJCIFS

Connecteur Solr

Docs andaccess tokens

Get User access token

Repositories Authorities

Manifold CF

Output

Windows Share

Solr

MCF SearchPlugin

Requête

Manifold CF authority

service

Connecteur AD

Front End Search authentifié

Filtre les docs suivant leur ACLs et les infos

d’utilisateurRésultats autorisés

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

Manager

SearchBarWidget

ResultWidget

FacetWidget

Demo

Démo !

Présentation de Solr

Solr et son écosystème

Crawling des données

Exemple de UI

Outils sémantiques

Hadoop

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

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 Part of speech

• Verbe nom…

Extraction d’entités• Lieu

• Personne

Présentation de Solr

Solr et son écosystème

Crawling des données

Exemple de UI

Outils sémantiques

Analytics

Hadoop

LogStash for Solr + Solr + Banana

Banana

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 Reduceet Google File System

Hadoop

1999

2002

2004

2010

2005

Hadoop

Scénarios Big Data Text mining

Création et analyse de graphes

Reconnaissance de patterns

Moteurs de recommandations, ciblage publicité

Analyse de menaces, surveillances de marchés

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 Nœud 3Nœud 2 Nœud 4Couche Traitement (Map Reduce)

Couche Stockage (HDFS)

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

Clé1 : Val1Clé2 : Val2Clé3 : Val3Clé4 : Val4

Hadoop

Mapper Prend des données en entrée

Et les transforme en paire de clé valeur

Mapper

Clé 1 : Val1Clé 2 : Val2Clé 1 : Val3Clé 2 : Val4

Reducer Combine les valeurs ayant la même clé

Clé1 : Val5Clé2 : Val6

Reducer

Hadoop

Hadoop

Un exemple simple? On a en entrée plusieurs textes

On veut compter le nombre d’occurrences des mots

De manière distribuée

En utilisant un job Map Reduce

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

SolrApache 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.

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

Apache : 4Solr : 2Lucene : 3…

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

Apache : 1Solr : 1Lucene : 1…

Apache : 1Lucene : 1…

Hadoop

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

SolrApache 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.

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

Reducer

Mapper

Mapper

Mapper

Hadoop

Distribution du l’algo en Map Reduce

Apache : 13 Apache : 44 Apache : 2Lucene : 10

Open : 19

Solr : 10Solr : 10 Manifold : 1Nœud 1 Nœud 3Nœud 2 Nœud 4

Opération Map sur les documents sur chacun des noeuds

Hadoop

Apache : 1Apache : 1

Apache : 1 Apache : 1Lucene : 1

Open : 1

Solr : 1Solr : 1Solr : 1

Manifold : 1

Source : 1Source : 1

Nœud 1 Nœud 3Nœud 2 Nœud 4

Map Map Map Map

Hadoop

Echange des données entre les nœud (shuffle)

Nœud 1 Nœud 3Nœud 2 Nœud 4

Apache : 1Apache : 1

Apache : 1 Apache : 1Lucene : 1

Open : 1

Solr : 1Solr : 1Solr : 1

Manifold : 1

Source : 1Source : 1

Lucene : 1Manifold : 1Open : 1

Opération de Reduce sur chacun des noeuds

Hadoop

Apache : 1

Apache : 1

Apache : 1

Apache : 1

Lucene : 1

Open : 1

Solr : 1

Solr : 1Solr : 1

Manifold : 1

Source : 1

Source : 1

Apache : 4 Solr : 3 Source : 2

Nœud 4

Reduce

Nœud 3

Reduce

Nœud 1

Reduce

Nœud 2

Reduce

Créé par Doug Cutting

Crawler Web

Permet de crawler un large volume de données

Basé sur Hadoop

Nutch

Projet Apache

Surcouche d’Hadoop

Permet de déployer sur Hadoop des traitements tel que: Identification de language

Extraction de contenu (Tika)

Pipeline UIMA

Avant l’ingestion dans Solr

Behemoth

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

Solr directement couplé avec Hadoop

Des questions???

Merci!!!

Site web : www.francelabs.com

Email : olivier.tavard@francelabs.com

Twitter : Francelabs

Recommended