Technique

Présentation du robot d'indexation d'Elastic App Search

Dans Elastic Enterprise Search 7.11, nous sommes très heureux d'annoncer le lancement en version bêta du robot d'indexation d'Elastic App Search. Cet outil simple mais puissant permet d'ingérer le contenu web disponible publiquement pour qu'il devienne instantanément recherchable sur votre site web.

Pour rendre le contenu des sites web recherchable, il existe plusieurs méthodes. Elastic App Search permet déjà aux utilisateurs d'ingérer du contenu en téléchargeant ou en insérant du JSON et en utilisant les points de terminaison d'une API. Dans cette version, le lancement du robot d'indexation en version bêta offre aux utilisateurs un autre outil pratique pour l'ingestion de contenu.

Disponible aussi bien pour les déploiements autogérés que pour les déploiements sur Elastic Cloud, le robot d'indexation récupère des informations à partir des sites web accessibles au public et rend le contenu recherchable dans vos moteurs App Search. App Search effectue pour vous le gros du travail en arrière-plan afin que le contenu recherchable soit pertinent et facile à ajuster grâce à des curseurs (et non du code). 

Vous vous demandez peut-être pourquoi nous lançons le robot d'indexation dans App Search ? C'est ce que nous allons voir tout de suite.

En quoi ce robot d'indexation est-il différent ? 

Pour faire court, surprise, Elastic Cloud ! 

Si vous suivez Elastic Enterprise Search depuis des années (spéciale dédicace à notre fan club !), vous vous rappellerez que le robot d'indexation était (et est toujours) disponible dans Elastic Site Search. Toutefois, seules les applications Elastic App Search et Workplace Search sont disponibles sur le très populaire Elastic Cloud

Et donc ? 

Eh bien, le fait d'intégrer à App Search sur Elastic Cloud un robot d'indexation dont la conception a été totalement repensée présente des avantages significatifs :

  • Une vraie tranquillité d'esprit : en tant que service géré d'Elasticsearch et de Kibana, Elastic Cloud fournit la vitesse, la scalabilité et la pertinence qui caractérisent Elastic. Mises à niveau en un clic, scaling simple, gestion du cycle de vie... Autant de raisons qui font que les clients adorent Elastic Cloud. Et si vous êtes déjà client d'Elastic Observability ou d'Elastic Security, vous pouvez gérer l'intégralité de votre déploiement dans une seule console puissante.
  • Vos données, votre choix : Elastic Cloud est disponible dans plus de 40 régions mondiales chez les plus grands fournisseurs cloud : Google Cloud (GCP), Microsoft Azure et Amazon Web Services (AWS). Ce sont vos données, votre cloud, votre approche.
  • Tarifs : avec la tarification révolutionnaire d'Elastic basée sur les ressources, pas besoin de vous préoccuper d'obscurs indicateurs comme le nombre d'utilisateurs, le nombre de requêtes, la taille des documents ou encore les agents déployés. Vos coûts sont calculés en fonction du matériel que vous utilisez pour stocker et analyser vos données mais aussi pour effectuer des recherches, indépendamment du cas d'utilisation.

Même si nous parlons principalement des déploiements sur le cloud dans ce blog, il est important de noter que le robot d'indexation App Search sera aussi proposé en tant que méthode de déploiement autogéré, ce qui n'est pas le cas avec Elastic Site Search (ou Swiftype).

Que fait exactement un robot d'indexation ?

Avant de nous pencher sur la configuration du robot d'indexation, voyons d'abord ce qu'il fait et les informations qu'il récupère sur les sites web publics que vous indiquez.

Lorsque vous fournissez une URL au robot d'indexation, par exemple http://www.elastic.co, celui-ci visite la page web correspondante. De là, le robot d'indexation suivra chaque nouveau lien de la page et en extraira le contenu aux fins d'ingestion dans votre moteur App Search. C'est ce qu'on appelle la découverte de contenu. Chaque lien découvert est extrait de la même manière. L'arborescence ci-dessous présente le fonctionnement d'un point de vue général.

Robot d'indexation App Search, extrayant le contenu d'une arborescence de pages liées

Dans l'image ci-dessus, toutes les pages bleues ont été extraites et indexées. En revanche, aucune page n'est liée à la page rose. Celle-ci ne sera donc ni extraite, ni indexée. Pour que le robot d'indexation visite une page qui n'est pas liée, la page doit être fournie directement en tant que point d'entrée ou incluse dans le plan du site. Nous allons voir comment configurer des points d'entrée dans cet article.

Types de contenus extraits

Avec la version bêta du robot d'indexation, vous pouvez extraire le contenu suivant à partir des pages HTML :

  • Titre de la page
  • Description (méta)
  • Mots clés (méta)
  • Corps (normalisé, sans balises html)
  • URL canonique
  • URL supplémentaires (pour le même document)
  • Liens

Place à la pratique : premiers pas avec le robot d'indexation

Commençons dès le début et créons un déploiement Elastic Enterprise Search sur Elastic Cloud. Si vous êtes client d'Elastic Site Search, de Swiftype ou tout nouveau client d'Elastic Cloud, profitez d'un essai gratuit de 14 jours pour juger par vous-même de la beauté du robot d'indexation.

  • Sur www.elastic.co, sélectionnez “Log in” (Connexion) en haut à droite.
  • Plusieurs méthodes d'authentification unique (SSO) sont disponibles. Vous pouvez aussi créer un compte.
  • Une fois connecté, sélectionnez "Create deployment" (Créer un déploiement).
  • Choisissez le modèle de déploiement Elastic Enterprise Search. Ce modèle est optimisé pour les sorties de processeur, le stockage et les zones de disponibilité. Tous les modèles de déploiement peuvent être adaptés à vos besoins par la suite.
  • Sélectionnez un fournisseur cloud dans la liste. Le choix vous appartient : Google Cloud (GCP), Microsoft Azure ou Amazon Web Services (AWS).
  • Donnez un nom à votre déploiement, puis cliquez sur "Create Deployment" (Créer un déploiement).
  • Un écran de notification s'affichera, indiquant que votre déploiement a été créé. 

Félicitations ! Vous allez bientôt créer votre premier moteur App Search.

La solution Elastic Enterprise Search comprend deux applications : App Search et Workplace Search. Pour ce tutoriel, sélectionnez le bouton "Launch App Search" (Lancer App Search).

Écran d'accueil du nouveau déploiement Elastic Enterprise Search

Bien joué ! Vous voilà désormais dans App Search, prêt à créer un robot d'indexation.

Le flux d'intégration vous aide à créer votre premier moteur de recherche. Donnez un nom simple à votre moteur (par exemple, "my-elastic-search-engine" fera très bien l'affaire). Un écran s'affichera ensuite, dans lequel vous pourrez choisir parmi quatre méthodes pour ingérer vos données : en copiant du JSON, en chargeant un fichier JSON, en réalisant une indexation par l'API ou en utilisant le robot d'indexation. Devinez de quelle méthode nous allons nous servir...

À ce stade, vous pouvez choisir d'ajouter votre propre site web comme URL de domaine à explorer ou, si vous préférez, le site elastic.co pour vous amuser. Pour rappel, le robot d'indexation se rendra sur la page que vous lui avez indiquée afin d'extraire tout le contenu associé. Il suivra chaque nouveau lien apparaissant sur les pages découvertes jusqu'à ce qu'il tombe dans une impasse.

C'est à ce stade que la fonctionnalité Entry Points (Points d'entrée) s'avère pratique. S'il existe une page isolée, qui n'est pas liée aux autres pages, ajoutez tout simplement son URL complète comme point d'entrée. De là, le robot d'indexation commencera à indexer le contenu et à suivre les liens découverts pour en extraire le contenu jusqu'à ce qu'il n'ait plus rien à explorer.

À partir de la page de la même console, vous pouvez créer des règles d'exploration. Celles-ci permettent aux administrateurs d'inclure ou d'exclure les pages dont l'URL correspond aux critères définis. Supposons que votre service marketing utilise des pages d'accueil de campagne, indiquées par l'élément de chemin /lp. Ces pages d'accueil sont utiles pour générer de nouvelles activités avec du contenu ciblé, mais ce n'est peut-être pas le type de contenu que vous souhaitez inclure dans votre moteur de recherche. 

Dans la section des règles d'exploration, ajoutez une nouvelle politique qui rejette l'indexation du contenu des URL contenant l'élément /lp.  

Suspense ! C'est parti pour l'exploration ! Quand tous vos points d'entrée et vos règles d'exploration sont définis, sélectionnez le bouton Start a Crawl (Lancer une exploration). 

Cliquez sur l'onglet Documents et observez l'ingestion de votre contenu dans le moteur App Search. Ou cliquez sur l'icône Query Tester (Outil de test de requêtes) en haut à droite de l'écran pour rechercher votre moteur n'importe où dans l'interface utilisateur App Search.

Si vous souhaitez immédiatement tester vos résultats dans une zone de recherche, sélectionnez l'onglet Reference UI (Interface utilisateur de référence). À partir de là, vous pouvez utiliser la zone de recherche prête à l'emploi, basée sur React. Ou mieux, vous pouvez créer et personnaliser votre expérience de recherche à l'aide des bibliothèques JavaScript de Search UI d'Elastic.

À vous de jouer

Nous espérons que vous apprécierez la conception simple mais efficace du robot d'indexation. Jugez-en par vous-même !

Le robot d'indexation Elastic App Search est proposé actuellement en version bêta sur tous les niveaux d'abonnement, ainsi que sur les déploiements autogérés et sur Elastic Cloud. Les clients qui utilisent déjà Elastic Cloud peuvent accéder à Enterprise Search directement depuis la console Elastic Cloud

Vous découvrez Elastic Cloud ? Jetez un œil à nos guides de démarrage rapide, qui sont de courtes vidéos pour vous aider à vous lancer rapidement. Puis, profitez d'un essai gratuit de 14 jours pour tester Elastic Enterprise Search. Vous pouvez aussi télécharger les versions autogérées d'App Search ou de Workplace Search gratuitement.

Ressources :

Blog : Nouveautés d'Elastic Enterprise Search : robot d'indexation et Box en tant que source de contenu

Documentation : Robot d'indexation App Search

Premiers pas : Elastic Cloud : essai gratuit de 14 jours