Retour au journal
•Recherche e-commerce

Migration d'Algolia vers Meilisearch: comment nous avons réduit de 90% le coût de la recherche d'un site e-commerce

La recherche interne d'une boutique en ligne d'une certaine taille peut coûter plusieurs dizaines de milliers d'euros par an. Meilisearch, moteur open source qui s'installe sur un serveur propre, fait le même travail pour bien moins cher. Nous avons mené la migration complète d'un catalogue de treize mille produits totalisant 3,3 millions de recherches par mois, et nous l'avons mesurée: les performances sont équivalentes, le travail du service commercial est conservé dans son intégralité, et l'examen des données a fait apparaître bien d'autres choses.

M
Massimo Ivaldi
Auteur

La recherche interne d'un site e-commerce est une pièce essentielle du dispositif de vente, et elle représente un poste de dépense important dès lors que l'on souhaite maintenir un bon niveau d'efficacité en s'appuyant sur des solutions d'entreprise.

Le service le plus répandu, Algolia, se paie à la consommation: chaque requête saisie par un client est facturée, et avec quelques millions de recherches par mois la note atteint sans peine plusieurs dizaines de milliers d'euros par an.

Meilisearch fait le même métier et n'a pas d'abonnement. C'est un moteur open source qui ne se loue pas mais s'installe sur un serveur, de sorte que la dépense cesse de dépendre du trafic et devient celle de l'infrastructure: pour une charge comparable, quelques milliers d'euros par an.

L'écart peut atteindre 90%, et la question qui suit est toujours la même: à quoi renonce-t-on?

Les performances restent les mêmes, et nous l'avons mesuré

Nous avons mené la migration complète d'un catalogue de treize mille produits recevant 3,3 millions de recherches par mois, en confrontant les deux systèmes sur les mêmes requêtes, extraites du trafic réel.

Les temps de réponse sont équivalents, deux millièmes de seconde contre un, un écart qu'aucun client n'est en mesure de percevoir. Mais la comparaison qui compte n'est pas celle de deux listes de produits, c'est celle avec le comportement des personnes. Nous avons pris quarante mille clics effectivement enregistrés, c'est-à-dire les articles que les clients avaient réellement ouverts après une recherche, et vérifié dans combien de cas cet article figurait parmi les douze premiers résultats: 84% avec Algolia, 83,7% avec Meilisearch.

Configuration de Meilisearch

La migration du moteur est pourtant la partie la moins complexe. La difficulté tient à ce que l'on installe autour, à commencer par la configuration de la pertinence, et qui aborde la migration comme une simple installation se retrouve avec une recherche moins bonne que celle dont il disposait.

Le premier écueil concerne le travail du service commercial. Dans presque toutes les boutiques, quelqu'un a établi à la main, pour les recherches les plus importantes, quels produits présenter et dans quel ordre: les articles à meilleure marge, ceux qui sont en promotion, ceux dont il faut écouler le stock. Dans le cas que nous avons suivi, il s'agissait de soixante-dix-neuf sélections de ce type, constituées au fil des années, pour un total de sept cent soixante-dix positions décidées une par une.

Les transférer est possible, et dans notre projet nous les avons reconstituées intégralement. Les recopier telles quelles, en revanche, ne fonctionne pas: les deux moteurs n'évaluent pas de la même façon le moment où une sélection doit entrer en action, et comme ces conditions étaient presque toutes rédigées au pluriel, toutes les recherches au singulier seraient restées à découvert.

Le second écueil est le moteur lui-même. Meilisearch, à l'installation, traite les pluriels, les mots incomplets et les dimensions écrites d'un seul tenant autrement qu'Algolia. Ce sont trois réglages à arrêter, non trois défauts, mais qui se borne à installer et à charger le catalogue obtient de moins bons résultats et en conclut, de bonne foi, que le moteur n'est pas à la hauteur.

La migration, en somme, est la partie facile. C'est la configuration qui décide du résultat.

Une part essentielle est l'analyse des données

Pour reproduire fidèlement un système, il faut d'abord le comprendre, et en le comprenant on trouve presque toujours davantage que ce que l'on cherchait.

Dans le cas présent, la recherche Algolia travaillait sur cinq champs du produit, dont deux étaient restés vides depuis le jour où le système avait été construit. La description étendue, celle qui contient les dimensions, les matériaux et les couleurs, existait sur 99% des articles mais n'avait jamais été rendue visible au moteur: en cherchant une essence de bois, on n'obtenait rien, alors que ce bois figurait sur plus de mille produits. Le même canapé, par ailleurs, était présent dix fois, une par tissu disponible: sur les douze emplacements du panneau de recherche, cinq ou six montraient le même canapé dans une autre teinte, et le client avait devant lui douze images pour six produits.

Remettre de l'ordre dans tout cela et procéder à l'enrichissement du catalogue, c'est-à-dire ajouter aux produits les mots par lesquels les clients les cherchent réellement, a porté les emplacements utiles de la moitié à 96% et récupéré des milliers de recherches mensuelles qui auparavant ne renvoyaient rien. Aucune de ces interventions ne concerne le moteur: elles portent sur les données, et ce sont elles qui pèsent le plus sur les ventes.

Notre prestation

Nous prenons en charge l'opération complète: analyse du système existant, migration, configuration et enrichissement du catalogue, avec la possibilité d'héberger nous-mêmes Meilisearch et d'en assurer l'exploitation, de sorte qu'aucune charge d'administration ne reste en interne.
La méthode, les mesures et les résultats complets sont réunis dans notre livre blanc, téléchargeable depuis l'étude de cas D'Algolia à Meilisearch. Qui préfère en parler d'abord peut nous écrire : le volume de recherches mensuelles et la taille du catalogue suffisent à établir, en quelques minutes, ce qu'il y a à économiser.
Mots-clés :AlgoliaMeilisearchmigrationconfigurationenrichissement du cataloguerecherche interne e-commercealternative à Algoliacoût recherche e-commercemoteur de recherche open sourcehébergement Meilisearch