Magento Search : Découvrir les avantages d'Elasticsearch, SOLR, Sphinx et MySQL

Publié: 2022-06-30

Les vitrines ne peuvent plus compter uniquement sur une bonne navigation. La recherche est devenue le principal chemin d'achat, les consommateurs qui l'utilisent étant 200 % plus susceptibles d'effectuer un achat que ceux qui ne l'utilisent pas.

Cet article examine les options de recherche disponibles pour les marchands Magento et décrit quatre des principaux outils disponibles ; y compris Elasticsearch, SOLR, Sphinx et MySQL. Il examine les avantages et les inconvénients de chacun et fournit des recommandations en fonction des besoins des commerçants.

Continuez à lire pour voir quelle option de recherche Magento convient à votre vitrine.

Les consommateurs qui utilisent la recherche sont 200 % plus susceptibles de convertir.

Remarque : cet article n'examinera pas en détail les multiples extensions de recherche Magento disponibles sur le marché, mais se concentrera plutôt sur des solutions externes plus puissantes.

Commencez avec un conteneur Elasicsearch activé en 1 clic. Apprendre encore plus.

Comment fonctionne la recherche Magento

Une fois qu'un moteur de recherche est installé, il se met immédiatement au travail en indexant le contenu de votre site. Pour les sites de commerce électronique, cela signifie créer une "liste" de produits avec leurs attributs. Ce processus d'indexation est continu. Chaque fois qu'une mise à jour est effectuée sur votre site (ajout d'un nouveau produit), la "liste" doit être actualisée.

Par exemple, vous pouvez ajouter un nouveau jeu d'écouteurs à votre site Web. Le moteur de recherche indexera alors des éléments tels que son titre, sa description et son prix. Il indexera également les attributs que vous avez spécifiés, tels que le type de connexion, s'il s'agit de la suppression du bruit, etc.

Lorsqu'un utilisateur entre une requête de recherche, le moteur de recherche trie la liste des produits et leurs attributs, puis ramène les plus pertinents. Différents moteurs de recherche le font de différentes manières et ont différentes fonctionnalités pour interpréter et filtrer des données plus complexes.

Elasticsearch, l'outil de recherche le plus populaire disponible, le fait principalement avec JSON (JavaScript Object Notation). Ici, différents attributs sont balisés lors de la création du produit, puis utilisés lors du processus de recherche pour compiler des résultats pertinents.

Étant donné que JSON est un langage de programmation puissant et rapide, Elasticsearch signifie que les marchands peuvent fournir des valeurs de recherche en dehors des chaînes textuelles . Dans le cas de certains autres moteurs de recherche (MySQL), cette fonctionnalité est très limitée.

Que rechercher avec Magento Search

Quel que soit le moteur de recherche que vous choisissez d'utiliser, vous devez vous concentrer sur six fonctionnalités :

  • Combien de temps durent les processus d'indexation et de compilation des résultats ? Plus ceux-ci prennent du temps, plus votre recherche sera lente.
  • Quelles langues le moteur de recherche peut-il gérer ? Décidez d'abord quelle langue convient le mieux à votre boutique, puis assurez-vous que votre moteur de recherche la prend en charge.
  • Quelles sont les fonctionnalités de traitement du langage naturel ? Ce n'est pas seulement important maintenant, ce sera également important pour la recherche vocale.
  • Comment fonctionne la recherche à facettes et dans quelle mesure les filtres peuvent-ils être détaillés ?
  • Quelle est la précision du moteur de recherche ? Cela vaut la peine d'essayer d'abord le moteur de recherche pour voir s'il fournit vraiment des résultats précis.
  • Gestion des synonymes (particulièrement important pour les magasins de niche)

Avec ces six fonctionnalités à l'esprit, nous avons examiné quatre des options de recherche les plus populaires disponibles pour les marchands Magento.

Chacune des options ci-dessous est acceptable pour une utilisation dans un magasin moderne. Cependant, il y en a un qui peut vraiment débloquer une recherche puissante pour les sites marchands.

Recherche élastique

Elasticsearch (ES) est actuellement l'option la plus populaire et l'option par défaut pour la recherche Magento.

En tant que magasin de documents basé sur Java, Elasticsearch est conçu pour stocker un grand nombre de documents JSON et leur parler de manière native. Ainsi, en plus de pouvoir gérer des requêtes textuelles, il peut également comprendre des requêtes analytiques avancées, y compris l'interprétation de données numériques et géographiques.

Là où Elasticsearch brille vraiment, c'est dans sa prise en charge complète de la recherche en temps réel d'Apache Lucene. Du point de vue du client, cela signifie qu'ES est en mesure de fournir des expériences de recherche plus rapides et plus pertinentes. Pour les propriétaires de magasins, cela signifie des conversions plus rapides.

Ajout d'Elasticsearch à l'interface du catalogue Magento

Actuellement, Elasticsearch est recommandé par nous et Magento. Une partie de la raison en est qu'il est facile à configurer. Sur les comptes Nexcess, il peut être activé sous l' onglet Environnement de votre portail client . Le point de terminaison peut ensuite être transféré dans Magento en suivant ce guide .

Pour le moment, Foursqaure et Github utilisent Elasticsearch.

Une option de recherche plus rapide et plus précise

Pour 74 % des consommateurs, la qualité et la pertinence des résultats de recherche sur un site de commerce électronique déterminent s'ils effectuent ou non un achat. Elasticsearch aide à rendre les recherches pertinentes même lorsque le chercheur n'est pas sûr de ce qu'il recherche grâce à la recherche floue.

La recherche floue permet aux magasins d'interpréter les requêtes des clients en prenant des requêtes textuelles et en les interprétant sur la base de plus que de simples comparaisons de 1 à 1 mots. Combiné avec l'interprétation des synonymes et des mots vides, cela place ES comme l'un des moteurs de recherche les plus performants disponibles pour les commerçants.

Elasticsearch est en mesure de fournir des expériences de recherche plus rapides et plus pertinentes, entraînant davantage de conversions.

ES permet également aux marchands de personnaliser les résultats de recherche en fonction de paramètres définis. L'une des technologies utilisées pour ce faire est celle des transducteurs à états finis. En anglais, cela signifie qu'ES peut gérer des requêtes de recherche qui tiennent compte à la fois de l'entrée et de la sortie, et peut ensuite fournir des résultats basés sur la relation entre ces deux éléments de données.

Prise en charge des requêtes de recherche complexes

Alors qu'Elasticsearch et SOLR (ci-dessous) sont basés sur l'analyse des requêtes Lucene, Elasticsearch prend en charge les requêtes structurées DSL . Cela permet des requêtes de recherche plus complexes non prises en charge par un moteur de recherche juste Lucene.

Elasticsearch prend également en charge les scripts de notation, qui peuvent être écrits et implémentés via JavaScript. À l'heure actuelle, SOLR n'offre pas cette fonctionnalité.

Soutien aux bibliothèques officielles et communautaires

Officiel : Java, PHP, Javascript, Python, Groovy, Ruby, Perl, .NET,

Communauté : Java, JavaScript, PHP, Python, R, Ruby, Clojure, Cold Fusion, Erlang, Go, Groovy, Haskell,.NET, OCaml, Perl, Scala, Smalltalk, Vert.x

Avantages d'Elasticsearch

  • Est devenu le remplacement par défaut du moteur de recherche MySQL par défaut de Magento
  • Un peu plus rapide que SOLR
  • Plus aligné avec les pratiques de développement Web modernes (donc probablement plus facile à utiliser)
  • Prêt à l'emploi avec la solution Nexcess Elasticsearch Container

Inconvénients d'Elasticsearch

  • Prendra de la place en raison de l'indexation
  • Peut coûter un supplément pour l'espace d'hébergement
  • Nécessite une longue indexation

En savoir plus sur Elasticsearch et comment il peut améliorer votre plateforme de commerce électronique dès maintenant.

Solr

Une autre option de recherche autonome et évolutive pour Magento. Pendant longtemps, SOLR a dominé le marché de la recherche Magento pour les sites à fort trafic. Non seulement il offre un certain nombre de fonctionnalités importantes recherchées par les administrateurs de recherche, mais il s'agit également d'une solution évolutive capable de gérer de lourdes charges de trafic.

Certaines des fonctionnalités que vous trouverez avec la recherche SOLR incluent :

  • Suggestions de termes de recherche basées sur une faute d'orthographe
  • Résultats de recherche pondérés
  • Navigation en couches
  • Autocomplétion puissante
  • Gestion de la pertinence
  • Prise en charge des synonymes et des mots vides

Pour le moment, Cnet et Netflix utilisent SOLR.

Vitesses de recherche en temps quasi réel

Là où SOLR brille, c'est lorsqu'il s'agit de recherches de groupe. En effet, SOLR prend en charge les groupes distribués (y compris le tri groupé, le filtrage et le facettage). Pour les magasins de commerce électronique, cela permet aux clients de personnaliser leur expérience de recherche pour fournir des résultats plus pertinents. A l'heure actuelle, le principal concurrent, Elasticsearch, ne supporte pas cela de la même manière.

La puissante recherche sur site offre plus qu'un simple chemin d'achat direct. Il fournit également aux clients une avenue de recherche.

Comparé aux alternatives, SOLR est un moteur de recherche plus compliqué à mettre en œuvre. Non seulement l'interface de SOLR prend plus de temps à apprendre que celle d'Elasticsearch, mais son déploiement nécessite également un peu plus de connaissances.

Si vous recherchez des fonctionnalités supplémentaires qui s'accompagnent d'un travail supplémentaire, alors SOLR peut être un bon choix. Cependant, dans 99 cas sur 100, nous recommandons aux propriétaires de boutiques Magento d'opter pour Elasticsearch.

Soutien aux bibliothèques officielles et communautaires

Officiel : Java

Communauté : PHP, Python, Javascript, Ruby, Erlang, Perl, Scala, Go, Clojure, .NET

Avantages du SOLR

  • Une option de recherche populaire pour les magasins Magento 1
  • Ne nécessite pas un processus d'indexation massif
  • Vraiment open source

Inconvénients du SOLR

  • Plus difficile à mettre en œuvre
  • Ce n'est plus le dernier et le meilleur de Magento Search

Sphinx

Sphinx est un puissant outil de recherche Magento capable d'indexer plusieurs types de contenu et prenant en charge plusieurs langues écrites. Bien qu'il ne soit pas aussi puissant que les options ci-dessus, il est préféré par de nombreux magasins Magento 1 en raison de sa facilité d'intégration.

Sphinx est actuellement utilisé par Mozilla, Craiglist et Dailymotion.

Recherche rapide à partir d'un module Premium

Par défaut, Sphinx ne s'exécute pas via un conteneur externe mais une extension téléchargeable via Magento Marketplace. Malgré cela, il est toujours capable de se défendre face aux autres options de cette liste.

À partir de sa propre documentation, Sphinx est capable de fournir plus de 500 requêtes/seconde lorsqu'un catalogue de produits se compose de plus de 1 000 000 skus.

En termes de capacités de recherche réelles, Sphinx inclut un certain nombre de fonctionnalités que vous voyez avec la plupart des autres moteurs de recherche répertoriés ici, notamment :

  • Prise en charge des synonymes et du pluriel
  • Recherche longue traîne
  • Prise en charge des mots vides

Sphinx permet également plusieurs types de recherche, y compris les produits, les catégories, les attributs et le contenu du blog. Ses préprocesseurs de morphologie permettent de remplacer différentes formes de mots par leur forme de base. Dans l'exemple de Sphinx, cela signifie traduire Dogs en Dog. Il existe, bien sûr, des cas d'utilisation beaucoup plus compliqués où cela aide à fournir des résultats uniques et très pertinents pour les clients.

Sphinx est capable de fournir plus de 500 requêtes/seconde lorsqu'un catalogue de produits se compose de plus de 1 000 000 skus.

Un outil de recherche Magento 1

Bien que nous recommandions toujours d'utiliser Elasticsearch, nous avons constaté que lorsque Sphinx est utilisé, c'est généralement avec les magasins Magento 1. Si vous exploitez une boutique Magento 2, Elasticsearch est une meilleure option, surtout si vous débutez ou si vous êtes en train de changer de plate- forme à partir de magento 1 .

Si vous souhaitez savoir comment configurer la recherche sur Magento 1, nous vous recommandons de consulter cet article de Shero .

Avantages du Sphinx

  • Un puissant moteur de recherche utilisé par de nombreux grands sites populaires
  • Des années de développement l'ont rendu stable

Inconvénients du Sphinx

  • Pas aussi bien pris en charge que les alternatives
  • Manque la vitesse d'Elasticsearch et de SOLR

MySQL

Le moteur de recherche par défaut d'origine pour Magento. Bien que compétent en soi, il ne se compare pas aux options d'entreprise disponibles. De plus, l'option de recherche MySQL pour Magento est désormais obsolète. Au lieu de cela, Magento 2 est maintenant configuré pour utiliser l'option de recherche Elasticsearch par défaut.

La recherche MySQL par défaut manque également d'autres fonctionnalités que vous trouverez avec SOLR ou Elasticsearch, notamment les suggestions, le clustering, les pondérations d'attributs et les conseils lorsque aucun résultat n'est renvoyé.

Options de recherche MySQL via le catalogue Magento

Pour cette raison, nous vous recommandons d'éviter l'option de recherche MySQL par défaut. Avec la facilité d'intégration actuelle offerte par Elasticsearch, pourquoi ne voudriez-vous pas une recherche plus puissante pour votre boutique Magento ?

Avantages de MySQL

  • C'est gratuit

Inconvénients de MySQL

  • Ce n'est pas aussi puissant que les autres options
  • Il a été déprécié

Extension de la fonctionnalité de recherche de Magento via des extensions

Si vous possédez une petite boutique Magento et que vous ne souhaitez pas investir dans un moteur de recherche dédié, il est également possible d'étendre la fonctionnalité de recherche de Magento via des extensions. Ceux-ci peuvent être trouvés et téléchargés depuis le Marketplace Magento .

Le meilleur moteur de recherche Magento

Nous recommandons à tous les marchands de passer à Elasticsearch . Non seulement parce qu'il est facile à intégrer à votre boutique Magento, mais aussi parce qu'il offre de nombreuses améliorations par rapport aux alternatives.

Bien que la vitesse et les performances soient comparables à celles de SOLR, Elasticsearch a un léger avantage. Il permet également aux consommateurs d'effectuer des recherches plus complexes avec des résultats plus pertinents, grâce à un certain nombre de fonctionnalités supplémentaires telles que la recherche floue, l'indexation complète et la prise en charge des requêtes DSL.

En termes de développement, Elasticsearch fournit également beaucoup plus en termes de bibliothèques clientes officielles et communautaires. Cela signifie que votre développeur est plus susceptible de pouvoir le gérer et le mettre à l'échelle efficacement. Combinez cela avec sa préparation prête à l'emploi sur la plate-forme de conteneurs Nexcess, et il devient le choix de moteur de recherche clair pour la plupart des magasins Magento.