Présentation d'Elasticsearch lors de Devoxx France 2012
Contenu en français
English translation available here : http://www.slideshare.net/dadoonet/elasticsearch-devoxx-france-2012-english-version
3. Abstract
• Un moteur ? Pourquoi faire ?
• Elasticsearch : une solution simple, complète, performante
• Et si on indexait Twitter ?
Faites du bruit sur @DevoxxFR
avec le hashtag #elasticsearch !
3
5. Cas d'école « SQL old school »
Un document dans une base de données :
• Un attribut date : 19/04/2012
• Un attribut codifié pays : FR
• Correspondant à la table d’association code/libellé
• Code : FR
• Libellé : France
• Un attribut commentaire : "J’observe une erreur de saisie dans la
désignation commerciale du produit. Songer à téléphoner à David."
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
5
6. Cas d'école « SQL old school »
Un document dans une base de données : doc pays
• Un attribut date : 19/04/2012 date code
• Un attribut codifié pays : FR pays libelle
• Correspondant à la table d’association code/libellé commentaire
• Code : FR
• Libellé : France
• Un attribut commentaire : "J’observe une erreur de saisie dans la
désignation commerciale du produit. Songer à téléphoner à David."
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
5
7. Cas d'école « SQL old school »
• Cherche moi un document de décembre 2011 portant sur la
france et contenant saisie et david
• En SQL :
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
6
8. Cas d'école « SQL old school »
• Cherche moi un document de décembre 2011 portant sur la
france et contenant saisie et david
• En SQL :
SELECT
doc.*, pays.*
FROM
doc, pays
WHERE
doc.pays_code = pays.code AND
doc.date_doc > to_date('2011-12', 'yyyy-mm') AND
doc.date_doc < to_date('2012-01', 'yyyy-mm') AND
lower(pays.libelle) = 'france' AND
lower(doc.commentaire) LIKE ‘%saisie%' AND
lower(doc.commentaire) LIKE ‘%david%';
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
6
9. Performances du like ‘%’
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
7
10. Performances du like ‘%’
Voir aussi : http://www.cestpasdur.com/2012/04/01/elasticsearch-vs-mysql-recherche
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
7
11. C'est quoi un moteur ?
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
8
12. C'est quoi un moteur ?
• Un moteur de recherche est composé de :
• un moteur d’indexation de documents
• un moteur de recherche sur les index
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
8
13. C'est quoi un moteur ?
• Un moteur de recherche est composé de :
• un moteur d’indexation de documents
• un moteur de recherche sur les index
• De fait, un moteur de recherche est énormément plus rapide qu’une
base de données pour faire des recherches :
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
8
14. C'est quoi un moteur ?
• Un moteur de recherche est composé de :
• un moteur d’indexation de documents
• un moteur de recherche sur les index
• De fait, un moteur de recherche est énormément plus rapide qu’une
base de données pour faire des recherches :
c’est son métier !
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
8
18. Elasticsearch
• Moteur de recherche pour la génération NoSQL
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
10
19. Elasticsearch
• Moteur de recherche pour la génération NoSQL
• Basé sur le standard Apache Lucene
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
10
20. Elasticsearch
• Moteur de recherche pour la génération NoSQL
• Basé sur le standard Apache Lucene
• Masque la complexité Java/Lucene à l’aide de services standards HTTP /
RESTful / JSON
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
10
21. Elasticsearch
• Moteur de recherche pour la génération NoSQL
• Basé sur le standard Apache Lucene
• Masque la complexité Java/Lucene à l’aide de services standards HTTP /
RESTful / JSON
• Utilisable à partir de n’importe quelle technologie
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
10
22. Elasticsearch
• Moteur de recherche pour la génération NoSQL
• Basé sur le standard Apache Lucene
• Masque la complexité Java/Lucene à l’aide de services standards HTTP /
RESTful / JSON
• Utilisable à partir de n’importe quelle technologie
• Ajoute la couche cloud manquante à Lucene
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
10
23. Elasticsearch
• Moteur de recherche pour la génération NoSQL
• Basé sur le standard Apache Lucene
• Masque la complexité Java/Lucene à l’aide de services standards HTTP /
RESTful / JSON
• Utilisable à partir de n’importe quelle technologie
• Ajoute la couche cloud manquante à Lucene
• C’est un moteur, pas une interface graphique !
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
10
25. Points clés
• Simple ! En quelques minutes (Zero Conf), on dispose d’un moteur
complet prêt à recevoir nos documents à indexer et à faire des recherches.
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
11
26. Points clés
• Simple ! En quelques minutes (Zero Conf), on dispose d’un moteur
complet prêt à recevoir nos documents à indexer et à faire des recherches.
• Efficace ! Il suffit de démarrer des nœuds Elasticsearch pour bénéficier
immédiatement de la réplication, de l’équilibrage de charge.
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
11
27. Points clés
• Simple ! En quelques minutes (Zero Conf), on dispose d’un moteur
complet prêt à recevoir nos documents à indexer et à faire des recherches.
• Efficace ! Il suffit de démarrer des nœuds Elasticsearch pour bénéficier
immédiatement de la réplication, de l’équilibrage de charge.
• Puissant ! Basé sur Lucene, il en parallélise les traitements pour donner
des temps de réponse acceptables (en général inférieurs à 100ms)
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
11
28. Points clés
• Simple ! En quelques minutes (Zero Conf), on dispose d’un moteur
complet prêt à recevoir nos documents à indexer et à faire des recherches.
• Efficace ! Il suffit de démarrer des nœuds Elasticsearch pour bénéficier
immédiatement de la réplication, de l’équilibrage de charge.
• Puissant ! Basé sur Lucene, il en parallélise les traitements pour donner
des temps de réponse acceptables (en général inférieurs à 100ms)
• Complet ! Beaucoup de fonctionnalités : analyse et facettes, percolation,
rivières, plugins, …
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
11
30. Ranger ses données
• Document : Un objet représentant les données (au sens NoSQL).
Penser "recherche", c'est oublier le SGBDR et penser "Documents"
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
12
31. Ranger ses données
• Document : Un objet représentant les données (au sens NoSQL).
Penser "recherche", c'est oublier le SGBDR et penser "Documents"
{
"text": "Bienvenue à la conférence #elasticsearch pour #devoxxfr",
"created_at": "2012-04-06T20:45:36.000Z",
"source": "Twitter for iPad",
"truncated": false,
Un tweet
"retweet_count": 0,
"hashtag": [ { "text": "elasticsearch", "start": 27, "end": 40 },
{ "text": "devoxxfr", "start": 47, "end": 55 } ],
"user": { "id": 51172224, "name": "David Pilato",
"screen_name": "dadoonet", "location": "France",
"description": "Soft Architect, Project Manager, Senior Developper.rnAt this time, enjoying NoSQL
world : CouchDB, ElasticSearch.rnDeeJay 4 times a year, just for fun !" }
}
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
12
32. Ranger ses données
• Document : Un objet représentant les données (au sens NoSQL).
Penser "recherche", c'est oublier le SGBDR et penser "Documents"
{
"text": "Bienvenue à la conférence #elasticsearch pour #devoxxfr",
"created_at": "2012-04-06T20:45:36.000Z",
"source": "Twitter for iPad",
"truncated": false,
Un tweet
"retweet_count": 0,
"hashtag": [ { "text": "elasticsearch", "start": 27, "end": 40 },
{ "text": "devoxxfr", "start": 47, "end": 55 } ],
"user": { "id": 51172224, "name": "David Pilato",
"screen_name": "dadoonet", "location": "France",
"description": "Soft Architect, Project Manager, Senior Developper.rnAt this time, enjoying NoSQL
world : CouchDB, ElasticSearch.rnDeeJay 4 times a year, just for fun !" }
}
• Type : Regroupe des documents de même type
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
12
33. Ranger ses données
• Document : Un objet représentant les données (au sens NoSQL).
Penser "recherche", c'est oublier le SGBDR et penser "Documents"
{
"text": "Bienvenue à la conférence #elasticsearch pour #devoxxfr",
"created_at": "2012-04-06T20:45:36.000Z",
"source": "Twitter for iPad",
"truncated": false,
Un tweet
"retweet_count": 0,
"hashtag": [ { "text": "elasticsearch", "start": 27, "end": 40 },
{ "text": "devoxxfr", "start": 47, "end": 55 } ],
"user": { "id": 51172224, "name": "David Pilato",
"screen_name": "dadoonet", "location": "France",
"description": "Soft Architect, Project Manager, Senior Developper.rnAt this time, enjoying NoSQL
world : CouchDB, ElasticSearch.rnDeeJay 4 times a year, just for fun !" }
}
• Type : Regroupe des documents de même type
• Index : Espace logique de stockage des documents dont les types sont
fonctionnellement communs
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
12
34. Interagir avec Elasticsearch
API REST : http://host:port/[index]/[type]/[_action/id]
Méthodes HTTP : GET, POST, PUT, DELETE
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
13
35. Interagir avec Elasticsearch
API REST : http://host:port/[index]/[type]/[_action/id]
Méthodes HTTP : GET, POST, PUT, DELETE
Documents
• curl -XPUT http://localhost:9200/twitter/tweet/1
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
13
50. Les résultats de recherche
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
16
51. Les résultats de recherche
• Elasticsearch ne renvoie que les 10 premiers résultats (même sur
plusieurs millions)
• Elasticsearch permet ensuite de se "balader" dans les résultats
$ curl "localhost:9200/twitter/tweet/_search?q=elasticsearch&from=10&size=10"
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
16
52. Les résultats de recherche
• Elasticsearch ne renvoie que les 10 premiers résultats (même sur
plusieurs millions)
• Elasticsearch permet ensuite de se "balader" dans les résultats
$ curl "localhost:9200/twitter/tweet/_search?q=elasticsearch&from=10&size=10"
• La pertinence est calculée suivant le nombre d'occurrences plus ou
moins exactes de chaque terme dans un document
$ curl "localhost:9200/twitter/tweet/_search?q=elasticsearch&explain=true"
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
16
53. Quelques types de recherche
Langage QueryDSL pour les recherches avancées
Type Description
Recherche tout le contenu (pratique avec des filtres)
Recherche avec analyse, jokers (syntaxe Lucene possible* +, -, FROM, TO, ^)
Recherche d'un terme sans analyse préalable
Recherche d'un texte avec analyse (par défaut OR sur chaque token)
Recherche avec joker (*, ?)
Recherche multi-critères (MUST, MUST NOT, SHOULD)
Recherche intervalle (>, >=, <, <=)
Utile pour faire de l'autocomplétion
Filtrage (couplage de filtres et de queries)
Permet des recherches par vraisemblance de termes
Permet de trouver des documents avec un minimum de termes
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
17
54. Quelques types de recherche
Langage QueryDSL pour les recherches avancées
Type Description
Match All Recherche tout le contenu (pratique avec des filtres)
QueryString Recherche avec analyse, jokers (syntaxe Lucene possible* +, -, FROM, TO, ^)
Term Recherche d'un terme sans analyse préalable
Text Recherche d'un texte avec analyse (par défaut OR sur chaque token)
Wildcard Recherche avec joker (*, ?)
Bool Recherche multi-critères (MUST, MUST NOT, SHOULD)
Range Recherche intervalle (>, >=, <, <=)
Prefix Utile pour faire de l'autocomplétion
Filtered Filtrage (couplage de filtres et de queries)
Fuzzy like this Permet des recherches par vraisemblance de termes
More like this Permet de trouver des documents avec un minimum de termes
* http://lucene.apache.org/core/old_versioned_docs/versions/3_5_0/queryparsersyntax.html
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
17
71. Rivers
• CouchDB River
• MongoDB River
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
25
72. Rivers
• CouchDB River
• MongoDB River
• Wikipedia River
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
25
73. Rivers
• CouchDB River
• MongoDB River
• Wikipedia River
• Twitter River
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
25
74. Rivers
• CouchDB River
• MongoDB River
• Wikipedia River
• Twitter River
• RabbitMQ River
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
25
75. Rivers
• CouchDB River
• MongoDB River
• Wikipedia River
• Twitter River
• RabbitMQ River
• RSS River
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
25
76. Rivers
• CouchDB River
• MongoDB River
• Wikipedia River
• Twitter River
• RabbitMQ River
• RSS River
• Dick Rivers
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
25
77. La puissance des facettes ! Faites parler vos données en les regardant sous différentes facettes !
ANALYSE DES RÉSULTATS (EN TEMPS QUASI RÉEL)
26
94. Usage "site marchand"
Ranges
Term
Term
Ranges
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
34
95. La navigation par facettes
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
35
96. La navigation par facettes
Critère fixe
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
35
97. La navigation par facettes
Critère fixe
Résultats
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
35
98. La navigation par facettes
Critère fixe
Term
Résultats
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
35
99. La navigation par facettes
Critère fixe
Term
Date histogram
Résultats
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
35
100. La navigation par facettes
Critère fixe
Term
Ranges Date histogram
Résultats
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
35
101. La navigation par facettes
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
36
102. La navigation par facettes
Critères
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
36
103. Analyse temps-réel des données
• Faire un matchAll sur l'ensemble des données
• Actualiser toutes les x secondes
• Indexer en même temps les nouvelles données
Date histogram
Term
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
37
115. Lexique
• Nœud (node) : Une instance d'Elasticsearch (~ machine ?)
• Cluster : Un ensemble de nœuds
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
41
116. Lexique
• Nœud (node) : Une instance d'Elasticsearch (~ machine ?)
• Cluster : Un ensemble de nœuds
• Partition (shard) : permet de découper un index en plusieurs parties pour y
distribuer les documents
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
41
117. Lexique
• Nœud (node) : Une instance d'Elasticsearch (~ machine ?)
• Cluster : Un ensemble de nœuds
• Partition (shard) : permet de découper un index en plusieurs parties pour y
distribuer les documents
• Réplication (replica) : recopie d’une partition en une ou plusieurs copies dans
l'ensemble du cluster
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
41
118. Lexique
• Nœud (node) : Une instance d'Elasticsearch (~ machine ?)
• Cluster : Un ensemble de nœuds
• Partition (shard) : permet de découper un index en plusieurs parties pour y
distribuer les documents
• Réplication (replica) : recopie d’une partition en une ou plusieurs copies dans
l'ensemble du cluster
• Partition primaire (primary shard) : partition élue "principale" dans
l'ensemble du cluster. C'est là que se fait l'indexation par Lucene. Il n'y en a qu'une
seule par shard dans l'ensemble du cluster.
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
41
119. Lexique
• Nœud (node) : Une instance d'Elasticsearch (~ machine ?)
• Cluster : Un ensemble de nœuds
• Partition (shard) : permet de découper un index en plusieurs parties pour y
distribuer les documents
• Réplication (replica) : recopie d’une partition en une ou plusieurs copies dans
l'ensemble du cluster
• Partition primaire (primary shard) : partition élue "principale" dans
l'ensemble du cluster. C'est là que se fait l'indexation par Lucene. Il n'y en a qu'une
seule par shard dans l'ensemble du cluster.
• Partition secondaire (secondary shard) : partitions secondaires stockant les
replicas des partitions primaires.
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
41
120. Créons un index
Cluster
Nœud 1
Client
CURL
Moteur Elasticsearch Rivers Facets Demo Architecture Communauté
42
Parcours :\n Ecole d'ing&#xE9; &#xE0; Brest, \n puis 3 ans en SSII, \n 3 ans chez SFR/Cegetel r&#xE9;seau de transmission (intranetisation du SI de supervision), \n 4 ans chez Vivendi Universal Net\n Depuis plus de 7 ans, je bosse pour la France &#xE0; la douane pour le d&#xE9;veloppement du SI, principalement\n D&#xE9;claration de douane en ligne (12 millions de marchandises d&#xE9;clar&#xE9;s import/export par an)\n Projet de gestion des contr&#xF4;les douanier\nPassions : \n Ma famille\n Mon job : j'adore mon job\n Le mix occasionnel (sur mon compte twitter un lien vers mes podcasts)\nContacts :\n Twitter : dadoonet et animateur elasticsearchfr\n Email : david@pilato.fr\n
Points abord&#xE9;s :\nA quels besoins essaye t on de r&#xE9;pondre ? A quoi servirait un moteur de recherche dans mon SI ?\nComment Elasticsearch r&#xE9;pond &#xE0; ces besoins et &#xE0; bien d'autres encore\nD&#xE9;mo Live : indexation de messages Twitter ! Faites du bruit en twittant sur @devoxxfr et #elasticsearch\n
Description de ma propre exp&#xE9;rience en arrivant en douane il y a 7 ans par un cas type de la recherche SQL classique.\n
\n
\n
\n
Faire remarquer le like avec des wildcards sur le champ commentaire tr&#xE8;s contre performant.\nTr&#xE8;s contre performant. Jusqu&#x2019;&#xE0; 500 000 documents, on arrivait encore &#xE0; tenir la charge avec des temps de r&#xE9;ponse de moins de 5 secondes.\n
Lorsqu&#x2019;on a atteint le million de d&#xE9;clarations en douane, obligation d&#x2019;enlever la fonctionnalit&#xE9; like pour faire seulement du &#xE9;gal &#xE0;.\n\n
Parmi les moteurs existants, il y a depuis maintenant plus de 2 ans, Elasticsearch...\n
Parmi les moteurs existants, il y a depuis maintenant plus de 2 ans, Elasticsearch...\n
Parmi les moteurs existants, il y a depuis maintenant plus de 2 ans, Elasticsearch...\n
Principe fondamental : Ce sont vos donn&#xE9;es : ce sera votre recherche. Il n'y a que vous qui puissiez savoir ce que s&#xE9;mantiquement repr&#xE9;sentent vos donn&#xE9;es, comment les chercher et comment pr&#xE9;senter les r&#xE9;sultats de recherche.\n
Principe fondamental : Ce sont vos donn&#xE9;es : ce sera votre recherche. Il n'y a que vous qui puissiez savoir ce que s&#xE9;mantiquement repr&#xE9;sentent vos donn&#xE9;es, comment les chercher et comment pr&#xE9;senter les r&#xE9;sultats de recherche.\n
Moteur clairement NOSQL de son orientation Document\nBas&#xE9; sur la formidable biblioth&#xE8;que Lucene dont il masque la complexit&#xE9; Java via des services HTTP / REST / JSON standards. Voir aussi la conf&#xE9;rence de vendredi &#xE0; 14H30 la conf&#xE9;rence de Majirus FANSI sur les fondements de Lucene.\nDe fait, s'utilise &#xE0; partir de n'importe quelle technologie\nAjoute la couche cloud qui manquait &#xE0; Lucene : distribution, partionnement, scalabilit&#xE9; pour en d&#xE9;cupler d'avantage la puissance en autant d&#x2019;instances de Lucene que n&#xE9;cessaire. \n\n\n
Moteur clairement NOSQL de son orientation Document\nBas&#xE9; sur la formidable biblioth&#xE8;que Lucene dont il masque la complexit&#xE9; Java via des services HTTP / REST / JSON standards. Voir aussi la conf&#xE9;rence de vendredi &#xE0; 14H30 la conf&#xE9;rence de Majirus FANSI sur les fondements de Lucene.\nDe fait, s'utilise &#xE0; partir de n'importe quelle technologie\nAjoute la couche cloud qui manquait &#xE0; Lucene : distribution, partionnement, scalabilit&#xE9; pour en d&#xE9;cupler d'avantage la puissance en autant d&#x2019;instances de Lucene que n&#xE9;cessaire. \n\n\n
Moteur clairement NOSQL de son orientation Document\nBas&#xE9; sur la formidable biblioth&#xE8;que Lucene dont il masque la complexit&#xE9; Java via des services HTTP / REST / JSON standards. Voir aussi la conf&#xE9;rence de vendredi &#xE0; 14H30 la conf&#xE9;rence de Majirus FANSI sur les fondements de Lucene.\nDe fait, s'utilise &#xE0; partir de n'importe quelle technologie\nAjoute la couche cloud qui manquait &#xE0; Lucene : distribution, partionnement, scalabilit&#xE9; pour en d&#xE9;cupler d'avantage la puissance en autant d&#x2019;instances de Lucene que n&#xE9;cessaire. \n\n\n
Moteur clairement NOSQL de son orientation Document\nBas&#xE9; sur la formidable biblioth&#xE8;que Lucene dont il masque la complexit&#xE9; Java via des services HTTP / REST / JSON standards. Voir aussi la conf&#xE9;rence de vendredi &#xE0; 14H30 la conf&#xE9;rence de Majirus FANSI sur les fondements de Lucene.\nDe fait, s'utilise &#xE0; partir de n'importe quelle technologie\nAjoute la couche cloud qui manquait &#xE0; Lucene : distribution, partionnement, scalabilit&#xE9; pour en d&#xE9;cupler d'avantage la puissance en autant d&#x2019;instances de Lucene que n&#xE9;cessaire. \n\n\n
Moteur clairement NOSQL de son orientation Document\nBas&#xE9; sur la formidable biblioth&#xE8;que Lucene dont il masque la complexit&#xE9; Java via des services HTTP / REST / JSON standards. Voir aussi la conf&#xE9;rence de vendredi &#xE0; 14H30 la conf&#xE9;rence de Majirus FANSI sur les fondements de Lucene.\nDe fait, s'utilise &#xE0; partir de n'importe quelle technologie\nAjoute la couche cloud qui manquait &#xE0; Lucene : distribution, partionnement, scalabilit&#xE9; pour en d&#xE9;cupler d'avantage la puissance en autant d&#x2019;instances de Lucene que n&#xE9;cessaire. \n\n\n
Moteur clairement NOSQL de son orientation Document\nBas&#xE9; sur la formidable biblioth&#xE8;que Lucene dont il masque la complexit&#xE9; Java via des services HTTP / REST / JSON standards. Voir aussi la conf&#xE9;rence de vendredi &#xE0; 14H30 la conf&#xE9;rence de Majirus FANSI sur les fondements de Lucene.\nDe fait, s'utilise &#xE0; partir de n'importe quelle technologie\nAjoute la couche cloud qui manquait &#xE0; Lucene : distribution, partionnement, scalabilit&#xE9; pour en d&#xE9;cupler d'avantage la puissance en autant d&#x2019;instances de Lucene que n&#xE9;cessaire. \n\n\n
Si je devais r&#xE9;sumer ES en quatre mots :\nIl est simple. Just run ! Pas de conf compliqu&#xE9;e &#xE0; faire. Comme la pub apple il y a une dizaine (ou vingtaine) : "1&#xE8;re &#xE9;tape : branchez, 2&#xE8;me &#xE9;tape, connectez, 3&#xE8;me &#xE9;tape ...... il n'y a pas de troisi&#xE8;me &#xE9;tape !"\nIl est efficace. On ajoute des n&#x153;uds et on b&#xE9;n&#xE9;ficie imm&#xE9;diatement de la r&#xE9;plication et de l'&#xE9;quilibrage de charge.\nIl est puissant. Bas&#xE9; sur Lucene, il parall&#xE9;lise ses traitements pour d&#xE9;cupler la puissance de Lucene.\nIl est complet. Beaucoup de fonctionnalit&#xE9;s natives ou sous forme de plugins.\nOn va voir &#xE7;a de fa&#xE7;on un peu plus pr&#xE9;cise maintenant&#x2026;\n
Si je devais r&#xE9;sumer ES en quatre mots :\nIl est simple. Just run ! Pas de conf compliqu&#xE9;e &#xE0; faire. Comme la pub apple il y a une dizaine (ou vingtaine) : "1&#xE8;re &#xE9;tape : branchez, 2&#xE8;me &#xE9;tape, connectez, 3&#xE8;me &#xE9;tape ...... il n'y a pas de troisi&#xE8;me &#xE9;tape !"\nIl est efficace. On ajoute des n&#x153;uds et on b&#xE9;n&#xE9;ficie imm&#xE9;diatement de la r&#xE9;plication et de l'&#xE9;quilibrage de charge.\nIl est puissant. Bas&#xE9; sur Lucene, il parall&#xE9;lise ses traitements pour d&#xE9;cupler la puissance de Lucene.\nIl est complet. Beaucoup de fonctionnalit&#xE9;s natives ou sous forme de plugins.\nOn va voir &#xE7;a de fa&#xE7;on un peu plus pr&#xE9;cise maintenant&#x2026;\n
Si je devais r&#xE9;sumer ES en quatre mots :\nIl est simple. Just run ! Pas de conf compliqu&#xE9;e &#xE0; faire. Comme la pub apple il y a une dizaine (ou vingtaine) : "1&#xE8;re &#xE9;tape : branchez, 2&#xE8;me &#xE9;tape, connectez, 3&#xE8;me &#xE9;tape ...... il n'y a pas de troisi&#xE8;me &#xE9;tape !"\nIl est efficace. On ajoute des n&#x153;uds et on b&#xE9;n&#xE9;ficie imm&#xE9;diatement de la r&#xE9;plication et de l'&#xE9;quilibrage de charge.\nIl est puissant. Bas&#xE9; sur Lucene, il parall&#xE9;lise ses traitements pour d&#xE9;cupler la puissance de Lucene.\nIl est complet. Beaucoup de fonctionnalit&#xE9;s natives ou sous forme de plugins.\nOn va voir &#xE7;a de fa&#xE7;on un peu plus pr&#xE9;cise maintenant&#x2026;\n
Si je devais r&#xE9;sumer ES en quatre mots :\nIl est simple. Just run ! Pas de conf compliqu&#xE9;e &#xE0; faire. Comme la pub apple il y a une dizaine (ou vingtaine) : "1&#xE8;re &#xE9;tape : branchez, 2&#xE8;me &#xE9;tape, connectez, 3&#xE8;me &#xE9;tape ...... il n'y a pas de troisi&#xE8;me &#xE9;tape !"\nIl est efficace. On ajoute des n&#x153;uds et on b&#xE9;n&#xE9;ficie imm&#xE9;diatement de la r&#xE9;plication et de l'&#xE9;quilibrage de charge.\nIl est puissant. Bas&#xE9; sur Lucene, il parall&#xE9;lise ses traitements pour d&#xE9;cupler la puissance de Lucene.\nIl est complet. Beaucoup de fonctionnalit&#xE9;s natives ou sous forme de plugins.\nOn va voir &#xE7;a de fa&#xE7;on un peu plus pr&#xE9;cise maintenant&#x2026;\n
Un Document au sens NoSQL (tout est JSON dans Elasticsearch)\nPenser DOCUMENT ! Et non penser &#xE0; l&#x2019;organisation technique de ces documents (jointures, donn&#xE9;es de r&#xE9;f&#xE9;rence, ...).\nQUE CHERCHENT MES UTILISATEURS : \ndes produits ? \ndes logs des serveurs, \ndes forums ou des discussions dans des forums ?\n
Un Document au sens NoSQL (tout est JSON dans Elasticsearch)\nPenser DOCUMENT ! Et non penser &#xE0; l&#x2019;organisation technique de ces documents (jointures, donn&#xE9;es de r&#xE9;f&#xE9;rence, ...).\nQUE CHERCHENT MES UTILISATEURS : \ndes produits ? \ndes logs des serveurs, \ndes forums ou des discussions dans des forums ?\n
Un Document au sens NoSQL (tout est JSON dans Elasticsearch)\nPenser DOCUMENT ! Et non penser &#xE0; l&#x2019;organisation technique de ces documents (jointures, donn&#xE9;es de r&#xE9;f&#xE9;rence, ...).\nQUE CHERCHENT MES UTILISATEURS : \ndes produits ? \ndes logs des serveurs, \ndes forums ou des discussions dans des forums ?\n
Un Document au sens NoSQL (tout est JSON dans Elasticsearch)\nPenser DOCUMENT ! Et non penser &#xE0; l&#x2019;organisation technique de ces documents (jointures, donn&#xE9;es de r&#xE9;f&#xE9;rence, ...).\nQUE CHERCHENT MES UTILISATEURS : \ndes produits ? \ndes logs des serveurs, \ndes forums ou des discussions dans des forums ?\n
Un Document au sens NoSQL (tout est JSON dans Elasticsearch)\nPenser DOCUMENT ! Et non penser &#xE0; l&#x2019;organisation technique de ces documents (jointures, donn&#xE9;es de r&#xE9;f&#xE9;rence, ...).\nQUE CHERCHENT MES UTILISATEURS : \ndes produits ? \ndes logs des serveurs, \ndes forums ou des discussions dans des forums ?\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
Maintenant que nous avons ces bases, commen&#xE7;ons par indexer un document&#x2026;\n\n
On indexe notre TWEET. ES nous r&#xE9;pond que c'est OK. Il faut imaginer qu&#x2019;on vient juste de d&#xE9;marrer un noeud elasticsearch et qu&#x2019;on n&#x2019;a absolument rien configur&#xE9;. La commande est juste un PUT en CURL.\nES cr&#xE9;&#xE9; l&#x2019;index, le type et trouve tout seul le mapping correspondant &#xE0; chaque champ. Des chaines de caract&#xE8;res, des dates, des bool&#xE9;ens, des nombres, des tableaux, des objets, ...\nVous pouvez d&#xE9;finir votre propre mapping pour chaque champ ainsi que des propri&#xE9;t&#xE9;s d&#x2019;indexation. Par exemple, vous pourriez indiquer &#xE0; Elasticsearch que le champ text est &#xE0; analyser en FRANCAIS et donc qu&#x2019;il faut ignorer les mots comme un, une, le, la, ...\nParmi les mappings possibles, il existe aussi la possibilit&#xE9; d&#x2019;envoyer des documents PDF, oOo ou autres dans un champ texte en les encodant en BASE64. ES indexera alors automatiquement le contenu. Tr&#xE8;s puissant.\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Un cas tr&#xE8;s simple de recherche : en g&#xE9;n&#xE9;ral, on commence tous par l&#xE0; !\nOn cherche le mot cl&#xE9; elasticsearch\nES nous ram&#xE8;ne un document JSON en retour qui contient :\nLe nb total de documents trouv&#xE9;s\nUn tableau contenant les 10 premiers documents les plus pertinents avec pour chaque document :\n Ses coordonn&#xE9;es (dans quel index, quel est le type et quel est l'ID)\n Son score (autrement dit sa pertinence relative par rapport &#xE0; d'autres documents trouv&#xE9;s)\n Et surtout : directement le source du document JSON que vous avez index&#xE9; ! Pas besoin de retourner dans votre syst&#xE8;me d'information source pour afficher le r&#xE9;sultat aux utilisateurs. Vous avez tout sous la main !\n
Il est possible &#xE9;videmment de faire des recherches beaucoup plus complexes&#x2026;\n
Il est possible &#xE9;videmment de faire des recherches beaucoup plus complexes&#x2026;\n
Il est possible &#xE9;videmment de faire des recherches beaucoup plus complexes&#x2026;\n
Il est possible &#xE9;videmment de faire des recherches beaucoup plus complexes&#x2026;\n
Il est possible &#xE9;videmment de faire des recherches beaucoup plus complexes&#x2026;\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Il existe pour cela le langage QueryDSL :\nMatch all : ram&#xE8;ne tous les r&#xE9;sultats de mon cluster, de mon index ou de mon type.\nQueryString : tr&#xE8;s int&#xE9;ressant pour passer des requ&#xEA;tes type Lucene avec des + pour rendre obligatoire un terme ou &#x2013; pour en exclure)\nTerm : recherche d'un terme sans analyser le terme pass&#xE9; en argument\nText : recherche d'un texte qui sera analys&#xE9; (donc les mots inutiles seront exclus)\nWildcard : joker\nBool : permet de combiner des crit&#xE8;res : avec MUST : DOIT, MUST NOT : NE DOIT PAS, ou SHOULD : CA SERAIT BIEN SI IL Y &#xC9;TAIT&#x2026;\nRange : recherche dans un intervalle de valeurs (on l'a vu avec les dates)\nPrefix : recherche de ce qui commence par : tr&#xE8;s pratique pour l'autocompletion car rapide en plus\nFiltered : on vient de le voir sur le slide d'avant\nFuzzy like this : recherche par vraisemblance de termes. Il va prendre notre mot et en g&#xE9;n&#xE9;rer d'autres ressemblants puis faire la recherche.\nMore like this : Dans l'id&#xE9;e, cela permet de trouver des documents ressemblants &#xE0; d'autres\n\nNous avons donc abord&#xE9; jusqu'&#xE0; pr&#xE9;sent : la cr&#xE9;ation de documents, le mapping et la recherche.\nPour alimenter Elasticsearch, il faut aller puiser du contenu dans votre SI.\n\n\n
Principe : propager un contenu en &#xE9;volution permanente vers Elasticsearch\nL'image est : "les rivi&#xE8;res de donn&#xE9;es qui se d&#xE9;versent dans le fleuve de la recherche"\n\n
Principe : propager un contenu en &#xE9;volution permanente vers Elasticsearch\nL'image est : "les rivi&#xE8;res de donn&#xE9;es qui se d&#xE9;versent dans le fleuve de la recherche"\n\n
\n
\n
\n
\n
\n
\n
\n
\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Plus s&#xE9;rieusement, aborde un des points que je pr&#xE9;f&#xE8;re de ES : l&#x2019;analyse des donn&#xE9;es en temps r&#xE9;el\n
Regarder ses donn&#xE9;es sous un autre angle. Les pr&#xE9;senter sous des facettes diff&#xE9;rentes...\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Beaucoup d&#x2019;autres type de facettes existent comme par exemple geodistance qui permet de calculer le nombre d&#x2019;&#xE9;l&#xE9;ments autour de moi dans un rayon de 10, 20 ou 50 km\nUn syst&#xE8;me tr&#xE8;s puissant qu&#x2019;on peut donc retrouver sur les sites marchands\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Fiche entreprise avec liste des contr&#xF4;les douaniers\nDiff&#xE9;rentes facettes et la liste des r&#xE9;sultats en bas\nUn clic sur non conforme : ajout crit&#xE8;re, relance recherche, c-a-d, nouveaux r&#xE9;sultats et nouvelles facettes.\n
Ici, on pourra observer que les 6 cas de fraude ont &#xE9;t&#xE9; trouv&#xE9;s en d&#xE9;cembre 2010, Janvier, Octobre 2011 et Mars 2012.\n
Ici, on pourra observer que les 6 cas de fraude ont &#xE9;t&#xE9; trouv&#xE9;s en d&#xE9;cembre 2010, Janvier, Octobre 2011 et Mars 2012.\n
Profite de l&#x2019;indexation permanente de ES sans d&#xE9;gradation des performances de la recherche\nPour pr&#xE9;senter des r&#xE9;sultats en temps presque r&#xE9;el. D&#xE9;mo twitter.\n\n
Et nous allons v&#xE9;rifier si nous (ou plut&#xF4;t si VOUS) avez fait du bruit sur twitter&#x2026;\n\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
Vous avez donc twitt&#xE9; &#xE0; fond pendant toute cette conf&#xE9;rence. Ces tweets sont h&#xE9;berg&#xE9;s chez Twitter qui met &#xE0; notre disposition une API streaming qui permet d'&#xE9;couter en permanence le bruit de fond (the hoose).\nPour cela, j'ai pris une machine chez Amazon sur laquelle j'ai install&#xE9; ES.\nJ'ai ajout&#xE9; le plugin twitter et j'ai cr&#xE9;&#xE9; une rivi&#xE8;re twitter qui &#xE9;coute ce flux de tweets en filtrant sur le mot devoxxfr.\nAinsi depuis fin Mars, le contenu devoxxfr se d&#xE9;verse dans Elasticsearch.\nIl suffit ensuite de r&#xE9;aliser une petite application d'analyse. J'ai fait &#xE7;a en jQuery.\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n
50 contributeurs directs au projet. Plus de 2000 d&#xE9;veloppeurs qui surveillent le projet sur github et il y a presque 300 forks. Spring ou Hibernate c'est moins de 200 forks.\nPROD : Klout.com : 100 millions d&#x2019;utilisateurs dans le monde pour lesquels ES fait le calcul des perks\nSonian : archivage et recherche de documents dans le cloud (plus de 20 clusters et plus de 5 milliards de documents index&#xE9;s)\nYfrog : indexation des photos et vid&#xE9;os pour twitter (3 millions de tweets par jour)\nhttp://elasticsearch-users.115913.n3.nabble.com/some-ES-stats-at-yfrog-com-td3759891.html\nDouane : Gestion des contr&#xF4;les r&#xE9;alis&#xE9;s par les douaniers (500 000 documents index&#xE9;s dont 50% de documents oOo, pdf, &#x2026;). Moteur sur les d&#xE9;clarations de douane est en cours : un volume de plus 100 millions de marchandises &#xE0; traiter.\nRejoignez le mouvement ! Essayez et vous verrez &#xE0; quel point c&#x2019;est simple et efficace.\n\n