Plugin web permettant de tester et comparer différentes combinaisons de filtres / tokenizers pour elasticsearch (configuré pour le francais)
/ ! \ : depuis la version 5.x d’Elasticsearch, les plugins site ne sont plus autorisés. Ce plugin doit être hebergé sur un autre serveur.
Plusieurs plugins sont nécessaires si vous voulez utilisez certaines fonctionnalités :
- Plugin phonetic : https://www.elastic.co/guide/en/elasticsearch/plugins/current/analysis-phonetic.html
- Plugin phonetic francais (hcapitaine) : https://github.com/hcapitaine/french-phonetic-analyser
Déployez le site sur le serveur de votre choix.
Pour accéder au cluster ES depuis le plugin, vous devez activer certaines fonctionnalités CORS. Dans votre fichier yaml, ajoutez :
http.cors.enabled: true
http.cors.allow-origin: /.*/
http.cors.allow-credentials: true
http.cors.allow-headers: Authorization,Content-Type
Le champ PREFIX permet de définir un prefix commun à tous les index qui seront créés.
Attention : si le prefixe n’est pas précisé, il est possible de supprimer tous les index et les données présents sur le serveur.
Un serveur léger (micro_server.go) permet de lancer rapidement un serveur (avec go installé) :
go run micro_server.go 9015 /home/folder_with_site
où 9015 est le port
Il est possible de créer des index avec plusieurs filtres et un tokenizer particulier.
Il est également possible de différencier l’analyzer utlisé pour l’indexation (default_index) et la recherche (default_search).
La recherche peut se faire de deux manières : soit sur un champ analysé (type de recherche “text”) ou une recherche url équivalent à “_search?q=*”".
La recherche “text” s’effectue sur le même champ dans tous les index (mais configurés différemment) appelé “data”.
La recherche uri ne permet pas de configurer la requête, mais uniquement de rechercher avec “q=mavaleur”.
L’option fuzziness permet de rechercher les termes approchants (basé sur une distance de Levenshtein de 1).
Lors d’une recherche, les champs suivants sont renvoyés :
- La valeur du champ
- Le score du document
- L’index où a été trouvé le document
- Le valeur du champ highlighté
Le plugin prend en charge l’internationalisation.