20 points par xguru 2020-12-11 | 2 commentaires | Partager sur WhatsApp
  • Très rapide, et capable de trouver des résultats pertinents par rapport à la requête

→ Typo Tolerance (tolérance aux fautes de frappe) : reconnaît et traite automatiquement les fautes dans une certaine mesure

  • Permet d’ajuster facilement le classement des résultats

  • Prend en charge le tri par champs spécifiques lors de la recherche

  • Prend en charge la navigation par facettes et filtres : regroupe les résultats de recherche par champ spécifique et permet de les filtrer

  • Permet de limiter la portée des API Keys pour accéder à certains résultats précis

  • Clustering basé sur Raft

  • Fournit des binaires Linux/Mac et des images Docker

  • Open source écrit en C

Dans la FAQ

  • Quelle est la différence avec ElasticSearch ?

→ ES est complexe à installer et à administrer, tandis que TypeSense a été conçu pour réduire le "Time-to-Market", donc il peut être installé rapidement, tout en restant capable de monter en charge

  • Quelle est la différence avec Algolia ?

→ Algolia est un très bon moteur de recherche en SaaS, mais coûteux. TypeSense peut être auto-hébergé, et sa version SaaS est aussi abordable (la facturation ne se fait pas au nombre d’enregistrements stockés ni au nombre de recherches, mais selon le temps d’utilisation et la bande passante)

→ Sur le plan fonctionnel, TypeSense ressemble davantage à Algolia qu’à ElasticSearch

  • Les performances sont élevées, mais qu’en est-il de l’empreinte mémoire ?

→ Par défaut, le serveur TypeSense utilise environ 30 Mo de mémoire, puis cette consommation augmente quand l’indexation des données commence, tout en conservant des structures de données très compactes

→ 1 million de titres de posts Hacker News représentent 88 MB en JSON, et une fois indexés et chargés en mémoire par Typesense, cela utilise environ 165 MB

2 commentaires

 
xguru 2020-12-11

En général, quand on veut créer un moteur de recherche en interne pour un service, la configuration comme l’administration sont assez complexes, mais c’est un projet open source qui permet de faire ça rapidement.

Cela dit, pour le coréen, il faut sans doute prendre en compte des éléments comme l’analyse morphologique… mais comme il trouve rapidement au niveau des caractères et affiche les résultats, cela semble valoir la peine d’être envisagé.

 
xguru 2020-12-11

Il existe un site de démonstration créé avec TypeSense, cela vaut le coup d’y jeter un œil.