Comment faire

Présentation du schéma de dénomination des flux de données Elastic

Avec Elastic 7.9, Elastic Agent and Fleet ont été publiés, ainsi qu’une nouvelle méthode pour structurer les indices et flux de données dans Elasticsearch pour les données temporelles. Dans cet article de blog, nous présentons le schéma de nommage des flux de données Elastic et son fonctionnement. C’est le premier d’une série d’articles de blog sur le schéma de nommage des flux de données Elastic.

Schéma de dénomination des flux de données Elastic

Le schéma de nommage des flux de données Elastic est conçu pour les données temporelles et consiste à diviser les ensembles de données en différents flux de données en utilisant la convention de nommage suivante.

  • type : type générique décrivant les données
  • jeu de données : Décrit les données ingérées et leur structure
  • espace de noms : regroupement arbitraire configurable par l’utilisateur

Ces trois parties sont combinées par un « - » et donnent lieu à des flux de données comme logs-nginx.access-production. Dans les trois parties, le caractère « - » n’est pas autorisé. Cela signifie que tous les flux de données sont nommés de la manière suivante :

{type}-{dataset}-{namespace}

Pour les ensembles de données et les espaces de noms, il existe une valeur par défaut, qui est « dataset=generic » et « namespace=default ». Dans le cas d’Elastic Agent, si un utilisateur commence simplement à ingérer un fichier log, les données se retrouvent en logs-generic-default.

Pour bénéficier de tous les avantages du schéma de nommage des flux de données Elastic, chaque document doit contenir les trois champs suivants :

  • data_stream.type
  • data_stream.dataset
  • data_stream.namespace

Vous trouverez plus de détails sur ces champs dans l’Elastic Common Schema (ECS). Les champs ci-dessus sont mappés en champs mot-clé constant, ce qui rend les requêtes efficaces en réduisant le nombre de partitions à interroger.

Avantages du système de dénomination des flux de données Elastic

Le système de dénomination des flux de données Elastic présente quelques avantages par rapport aux stratégies d’indexation précédentes utilisées par Beats et Logstash. Au lieu de quelques grands index, on utilise de nombreux flux de données plus petits mais plus denses. Résumé des avantages :

  • Nombre réduit de champs par index : Comme les données sont réparties par ensemble de données sur plusieurs flux de données, chaque flux de données contient un ensemble minimal de champs. Cela conduit à une meilleure optimisation de l’espace et à des requêtes plus rapides.
  • Contrôle plus granulaire des données : la division des données par ensemble de données et par « namespace » permet un contrôle précis du roulement, de la rétention et des autorisations de sécurité.
  • Flexibilité : Les utilisateurs peuvent utiliser le « namespace » pour diviser et organiser les données comme ils le souhaitent.
  • Des expériences mieux organisées : grâce à la structure commune du schéma de nommage des flux de données Elastic, il est possible de construire une expérience mieux organisée à partir de ces flux de données.
  • Moins d’autorisations d’ingestion nécessaires : auparavant, la configuration des modèles et des pipelines d’ingestion était effectuée par Elastic Agent. Comme cela se fait désormais de manière centralisée, l’outil d’ingestion n’a besoin que d’autorisations pour ajouter des données.

Utilisation du schéma de dénomination Elastic pour les flux de données

Le schéma de nommage des flux de données Elastic est pris en charge depuis la version 7.9 et plus récente d’Elastic Stack, car il nécessite la prise en charge des flux de données, les nouveaux modèles de composants Elasticsearch (https://www.elastic.co/guide/en/elasticsearch/reference/7.9/index-templates.html), et des mots clés constants. Les modèles d’index pour logs-- et metrics-- sont livrés avec Elasticsearch ≥ 7,9. Toutes les données transférées avec Elastic Agent utilisent le schéma de dénomination des flux de données Elastic. Pour les utiliser pour tout autre agent de transfert de données, il suffit de suivre la structure de nommage et d’ajouter les champs data_stream pour que cela fonctionne.

Récapitulons

Voici un résumé du schéma de dénomination des flux de données Elastic. Dans les articles suivants du blog, nous expliquerons en détail son fonctionnement en coulisses, son utilisation par l’Elastic Agent, ainsi que la manière dont vous pouvez en tirer profit. Pour en savoir plus, regardez la vidéo consacrée en détail à la nouvelle stratégie d’indexation d’Elastic sur la chaîne YouTube de la communauté Elastic.