Cette nouvelle version de juin 2024 offre son lot de nouveautés sur Elasticsearch / Kibana.
Disponibilité générale d'ES|QL
C’est LA principale annonce de la version 8.14. Le langage ES|QL (comprenez : Elasticsearch / SQL) est enfin disponible de manière définitive dans le produit !
Ce langage a été introduit pour la première fois dans la version 8.11 et vient enrichir le panel de langages déjà présents dans la stack pour interroger la donnée :
- Le très célèbre langage DSL
- Le plus récent EQL
- Le KQL
- Le SQL
- Le langage Painless
- etc.
On peut se demander pourquoi un nouveau langage ? Le but ici est de proposer un langage avec de fortes possibilités de filtres et d’outils analytiques, le tout de manière plus simple et compréhensible qu'auparavant. En effet, avec ce langage, il sera possible en une fois de :
- Filtrer la donnée
- Traiter la donnée
- Grouper des valeurs (agrégations)
- Renommer des champs
- Trier
- etc
Voici un exemple de comment est-il maintenant possible d’interroger les données présentes dans un index employees :
FROM employees
| EVAL hired_year = TO_INTEGER(DATE_FORMAT(hire_date, "YYYY"))
| WHERE hired_year > 1984
| STATS avg_salary = AVG(salary) BY languages
| EVAL avg_salary = ROUND(avg_salary)
| EVAL lang_code = TO_STRING(languages)
| ENRICH languages_policy ON lang_code WITH lang = language_name
| WHERE lang IS NOT NULL
| KEEP avg_salary, lang
| SORT avg_salary ASC
| LIMIT 3
Sans être une reprise parfaite du langage SQL, on retrouve un formalisme bien plus proche du langage star des bases de données relationnelles.
Au delà du langage, ES | QL embarque aussi un véritable moteur de traitement de données pour Elasticsearch.
Quelques limitations pour le moment :
- Réservé à des index dans lesquels le champ temporel de base s’appelle @timestamp
- Ce langage n’est disponible que dans le menu Discover
- Il n’est pas encore possible, à l’heure actuelle, de s’appuyer sur une recherche Discover ou sur du EQ | QL pour créer des visuels dans Lens ou dans la partie Dashboards
Simplification de la gestion du cycle de vie des Data Stream
Introduite en version 8.11, cette fonctionnalité est maintenant complètement disponible en version 8.14.
Elle permet de gérer la durée de rétention de la donnée (et donc d’activer les rollover notamment) de manière plus simple, sans avoir à utiliser ILM (Index Lifecycle Management) :
Attention, cette option ne concerne que les data streams et non pas les index classiques (pour le moment).
Possibilité de comparer des documents entre eux dans Discover
Il est maintenant possible de choisir plusieurs documents dans Discover pour les comparer entre eux.
Amélioration de la navigation entre dashboards
Auparavant, il fallait créer des visuels de type text (markdown) pour créer des liens entre des dashboards.
Il est maintenant plus simple de naviguer d’un dashboard à l’autre, en utilisant les liens entre panneaux :
Construire des cartes avec des liens
Encore à l’état expérimental dans les précédentes versions, il est maintenant possible de créer des cartes de type région directement dans Lens, sans avoir à utiliser l’application Maps :
Et voilà, vous connaissez maintenant toutes les nouveautés d'Elasticsearch 8.14 !
Des tutos sur les outils sont régulièrement publiés sur notre Wiki par nos consultants experts, n'hésitez pas à le parcourir !
Vous souhaitez bénéficier d'experts, de développeurs, ou d'une formation sur Elasticsearch - Kibana ? Nous sommes à votre écoute. Contactez-nous !