Comme expliqué dans l’article intitulé « Tout trouver grâce au moteur de recherche de ClickOnSite », nous savons que nos clients doivent pouvoir trouver rapidement des informations spécifiques parmi la grande quantité de données stockées afin d’être efficaces dans leurs activités.
Notre Directeur Technique, François Pouilloux, a une expérience de 10 ans dans l’intégration et le développement de technologies de recherche avec certains des meilleurs laboratoires universitaires en Europe. Avant de rejoindre ITD, il travaillait pour des sociétés proposant des services spécialisés de recherche pour les entreprises. Avec de telles compétences à portée de main, j’ai saisi l’occasion pour approfondir nos connaissances sur le sujet en lui posant quelques questions.
En quoi la recherche globale de ClickOnSite est-elle différente de ce que les gens sont habitués à trouver sur le Web ?
François : Il y a deux façons d’envisager la question :
- La saisie des utilisateurs : nous avons essayé de la garder très proche de la recherche Web classique : un champ de recherche et aucun paramètre. L’utilisateur entre des mots-clés / phrases, les meilleurs résultats sont affichés en premier. De cette façon, ça reste familier.
- l’affichage des résultats : C’est la nature des informations que la recherche a numérisées et récupérées. Et c’est différent de la plupart des recherches sur le Web, qui sont principalement des pages Web (y compris des documents qui y sont incorporés), les axes de recherche dans ClickOnSite sont les:
- Informations sur les pages intranet (telles que les recherches sur le Web)
- Documents (comme des recherches sur le Web)
- Informations dans les entités (base de données)
- Informations dans les tâches (BPMN 2.0)
Cela signifie que l’utilisateur obtient un résultat agrégé mélangeant des entités, des documents et des tâches.
La structure de la liste de résultats est également assez minimaliste et différente de ce que vous trouvez dans la recherche Web : nous n’incluons ni extrait de résumé, ni mot-clé en surbrillance. Notre philosophie est que, dans le contexte de ClickOnSite, ils ne seraient pas aussi utiles et encombreraient inutilement les résultats. Les données gérées par nos clients sont plus ciblées et plus spécifiques à leur activité, un titre, un identifiant et un type de document sont probablement suffisants pour permettre à un utilisateur de décider s’il vaut la peine de naviguer dans un résultat.
Pourquoi ITD a-t-il choisi Elasticsearch comme moteur de recherche ?
François : Elasticsearch est l’un des moteurs de recherche les plus performants et les plus puissants du marché. Il est largement utilisé, Open Source, flexible et nous pouvons le modifier. Il est reconnu, très stable et utilisé dans de nombreux contextes. C’est donc un environnement très riche.
Il est supporté par une large communauté, qui fournit des contributions telles que du code, du support, des idées et de l’innovation. Nous voulons faire partie de cette communauté et contribuer là où nous le pourrons.
En bref, Elasticsearch englobe tous les éléments qui font le succès de l’Open Source.
Quand les gens pensent à l’Open Source, ils pensent généralement que le principal facteur est qu’il est « gratuit », que vous n’avez pas besoin de payer une licence pour cela. Je tiens à souligner que le fait que nous n’ayons pas à payer de licence n’est pas la raison pour laquelle nous avons choisi Elasticsearch. Nous l’utilisons pour les raisons que je viens d’énoncer – flexibilité, stabilité et grande communauté. Dans le cas d’Elasticsearch, le fait d’être piloté par la communauté des utilisateurs signifie qu’il est plus puissant que s’il était géré par une seule entreprise.
Quels sont les avantages d’Elasticsearch pour les utilisateurs de ClickOnSite ? Pourquoi Elasticsearch est-il la bonne solution pour les clients d’ITD ?
François : De nos jours, tout le monde a l’habitude d’aller directement dans un champ de recherche pour trouver des informations. Les gens ne se soucient pas de la façon dont les informations sont stockées, ils veulent juste pouvoir les trouver et y accéder.
Le type de recherche auquel la plupart des gens pensent, est une recherche sur plusieurs pages Web. Elasticsearch est polyvalent et peut également être optimisé pour être agrégé à partir de bases de données. Il y a une différence subtile entre les deux ; en particulier la manière dont les données sont mises en contexte et liées à d’autres données.
Encore une fois, la plupart des gens pensent que la recherche est quelque chose qu’ils utilisent lorsqu’ils veulent aller chercher de l’information. Mais avec Elasticsearch qui surveille l’ensemble de l’écosystème de données, vous bénéficiez d’avantages importants, même subtils :
- Il est plus facile pour les membres de l’équipe de projet de trouver des informations pertinentes provenant de nombreuses sources.
- Vous ne raterez pas d’informations car elles sont toutes au même endroit, toutes indexées et correctes et ceci en temps quasi réel.
- Il améliore la convivialité des informations stockées dans ClickOnSite. Vous pouvez rassembler des éléments de différentes manières et les exporter pour les analyser ou les partager
Un autre avantage pour nos clients est réel au niveau informatique : si une entreprise utilise déjà Elasticsearch, ou une technologie de recherche comparable, pour son intranet, nous pouvons imaginer fédérer, à savoir intégrer, les résultats. Cela signifie que les données d’entreprise peuvent être intégrées à ClickOnSite ou que les données ClickOnSite peuvent être intégrées dans la recherche d’entreprise. Cela permet d’éliminer les silos de données au sein de l’entreprise.
Donc, vous voyez, la recherche est plus qu’une simple recherche d’informations, c’est une méthode pour organiser et utiliser les informations dans toute l’entreprise.
Elasticsearch est également conçu en fonction de l’évolutivité et dispose de capacités de regroupement sur étagère, permettant d’indexer d’énormes quantités d’informations simplement en ajoutant du matériel et une expertise appropriée dans une configuration de cluster. De plus, Elasticsearch fournit également des fonctionnalités « d’entreprise » encore plus avancées avec des licences payantes. Par conséquent, si de telles fonctionnalités sont nécessaires, il est techniquement facile d’intégrer ces fonctionnalités.
Quelles sont les informations de ClickOnSite qui sont indexées ?
François : Le contenu des vues de ClickOnSite est le candidat naturel pour l’indexation car il contient déjà la plupart des informations les plus significatives pour les entités associées. Sont également indexées :
- Les tâches (par exemple, recherche de candidats, TSSR, bons de travail) :
- y compris texte à l’intérieur de la tâche : nom, référence, pièces jointes, dates
- La liste blanche des entités que vous souhaitez indexer (sites, actifs, baux) :
- Nous indexons les entités configurées dans une liste blanche pour éviter l’indexation de contenu non pertinent
- Les pièces jointes :
- Tous les documents textes standards, du même type que les documents Word ou PDF, ainsi que les formats WVG, en allant jusqu’au texte des noms des fichiers.
Pouvez-vous nous expliquer comment la pertinence des résultats est calculée / déterminée ?
François : Des tokens sont extraits du texte de la requête (au moment de la requête) et des documents indexés (au moment de l’index) : la combinaison des tokens crée une sorte de signature pour la requête et pour chaque « document ». Lors de l’exécution de la requête, le moteur évalue dans quelle mesure les signatures des documents correspondent à la signature de la requête : très approximativement, la pertinence indique dans quelle mesure la signature du document correspond à la signature de la requête.
Il existe différentes manières de calculer la pertinence, telles que TF / IDF (fréquence de terme / fréquence de document inverse), le problème étant de trouver un calcul à la fois très rapide et résistant à la diversité des langues / contenus.
Comme la « signature » est basée sur des tokens, il est facile de comprendre que la génération de tokens a un impact important sur le résultat final. Habituellement, les tokens sont générés à partir de texte brut par un pipeline d’analyseurs linguistiques, certains agnostiques et d’autres spécifiques à chaque langue.
Nous avons mis en œuvre différents types d’analyseurs, y compris un analyseur de détection de langue, afin de pouvoir prendre en charge des analyseurs spécifiques à une langue pour les langues courantes.
La plupart de ces analyseurs sont également à code source ouvert, mais nécessitent un réglage approprié pour produire de bons tokens à partir de notre contenu.
Comment voyez-vous l’avenir de la recherche dans ClickOnSite ?
François : Je pense que la valeur d’un moteur de recherche va au-delà du simple fait de penser à un mot-clé, de le saisir dans un champ et de rechercher des informations connexes : l’indexation et la recherche peuvent être un moyen pour vous de synthétiser vos données.
Dans cette optique, je pense notamment aux développements futurs :
- Lorsque vous disposez de la technologie, vous pouvez intégrer de nombreuses vues différentes :
- classification
- catégorisation
- Des observateurs et des moniteurs qui avertissent les gens lorsque des informations ont été modifiées ou mises à jour.
- défini par l’utilisateur
- défini par le gestionnaire
- à l’échelle du système
- Des requêtes quotidiennes pour voir les changements et analyser les données
- Des visualisations de vos données
- Une visualisation des résultats de la recherche sur une carte
#MakeTheEverydayBetter