Amazon Data Firehose constitue le moyen le plus simple de charger les données de streaming vers des magasins de données et des outils d’analytique. Data Firehose est un service entièrement géré qui facilite la collecte, la transformation et le chargement de larges volumes de données de streaming à partir de centaines de milliers de sources dans Amazon S3, Amazon Redshift, Amazon OpenSearch Service, Snowflake, les tables Apache Iceberg, les tables Amazon S3 (prévisualisation), les points de terminaison HTTP génériques et des fournisseurs de service comme Datadog, New Relic, MongoDB et Splunk, à des fins d’analytique en temps réel.
Flux Firehose
Un flux Firehose est l'entité sous-jacente de Firehose. Vous utilisez Firehose en créant un flux Firehose, puis en envoyant des données vers celui-ci.
Fonctions principales
Lancement et configuration simples
Il vous suffit de quelques clics dans la console de gestion AWS afin de lancer Amazon Data Firehose et créer un flux de diffusion pour charger les données dans Amazon S3, Amazon Redshift, Amazon OpenSearch Service, Snowflake, les tables Apache Iceberg, les tables Amazon S3 (prévisualisation), les points de terminaison HTTP, Datadog, New Relic, MongoDB ou Splunk. Vous pouvez envoyer des données vers le flux de diffusion en appelant l’API Firehose ou en exécutant l’agent Linux fourni sur la source de données. Ensuite, Data Firehose charge en continu les données dans les destinations spécifiées.
Dimensionnement élastique pour une meilleure gestion des différents débits de données
Une fois lancés, vos flux Firehose augmentent verticalement automatiquement pour pouvoir gérer plusieurs gigaoctets de données d’entrée par seconde tout en maintenant le temps de latence des données au niveau que vous avez spécifié dans les limites. Aucune intervention ni maintenance n'est nécessaire.
Chargez de nouvelles données en quelques secondes
Vous pouvez indiquer la taille ou l'intervalle des lots, afin de contrôler la rapidité de chargement des données dans leurs destinations. Par exemple, vous pouvez définir l'intervalle de traitement par lots entre zéro seconde et 15 minutes. Vous pouvez également spécifier si les données doivent être compressées ou non. Le service prend en charge la plupart des algorithmes de compression, notamment GZip, Snappy compatible Hadoop, Zip et Snappy. La mise en lots et la compression des données avant leur chargement vous permettent de contrôler la rapidité avec laquelle vous recevez les nouvelles données au niveau des destinations.
Prise en charge de plusieurs sources de données
Firehose lit facilement les données provenant de plus de 20 sources de données, notamment les clusters Amazon MSK et MSK Serverless, Amazon Kinesis Data Streams, bases de données (version préliminaire), Amazon CloudWatch Logs, Amazon SNS, AWS IoT Core, etc.
Conversion de format Apache Parquet ou ORC
Firehose prend en charge les formats de données en colonnes, tels qu'Apache Parquet et Apache ORC, qui sont optimisés pour la rentabilité du stockage et de l'analytique grâce aux services tels qu'Amazon Athena, Amazon Redshift Spectrum, Amazon EMR et autres outils basés sur Hadoop. Firehose peut convertir les données entrantes du format JSON aux formats Parquet ou ORC avant de les stocker dans Amazon S3, vous permettant ainsi de réduire les coûts liés de stockage et d'analytique.
Transmettre des données partitionnées à S3
Partitionnez dynamiquement vos données de streaming avant la livraison à S3 à l'aide de clés statiques ou définies dynamiquement telles que « customer_id » ou « transaction_id ». Firehose regroupe les données par ces clés et les livre dans des préfixes S3 à clé unique, ce qui vous permet d'effectuer plus facilement des analytique dans S3 de haute performance et à moindre coût, à l'aide d'Athena, EMR et Redshift Spectrum. En savoir plus »
Transformation intégrée des données
Amazon Data Firehose vous permet de préparer vos flux de données en streaming avant de les charger dans des magasins de données. Il vous suffit de sélectionner une fonction AWS Lambda dans l'onglet de configuration du flux Amazon Data Firehose dans la console de gestion AWS. Amazon Data Firehose appliquera automatiquement cette fonction à chaque enregistrement de données d'entrée et chargera les données transformées vers leurs destinations. Amazon Data Firehose fournit des plans Lambda préconfigurés pour convertir des sources de données communes telles que les journaux Apache et les journaux système aux formats JSON et CSV. Vous pouvez utiliser ces plans préconfigurés sans effectuer aucune modification, les personnaliser davantage ou écrire vos propres fonctions personnalisées. Vous pouvez également configurer Amazon Data Firehose pour réessayer automatiquement les tâches échouées et sauvegarder les données brutes en streaming. En savoir plus »
Prise en charge de plusieurs destinations de données
Firehose lit facilement les données provenant de plus de vingt sources de données, notamment les clusters Amazon MSK et MSK sans serveur, Amazon Kinesis Data Streams, Amazon CloudWatch Logs, Amazon SNS et AWS IoT Core. Les destinations prises en charge par Amazon Data Firehose sont Amazon S3, Amazon Redshift, Amazon OpenSearch Service, Snowflake, les tables Apache Iceberg, les tables Amazon S3 (prévisualisation), les points de terminaison HTTP, Datadog, New Relic, MongoDB et Splunk. En ce qui concerne la destination de chargement des données, vous pouvez spécifier un compartiment Amazon S3, une table Amazon Redshift, un domaine Amazon OpenSearch Service, des points de terminaison HTTP génériques ou un fournisseur de services.
Chiffrement automatique en option
Amazon Data Firehose propose, en option, de chiffrer automatiquement vos données une fois qu'elles sont chargées dans leur destination. Vous pouvez indiquer une clé de chiffrement AWS KMS (Key Management System) lors de la configuration des flux Firehose.
Des mesures pour surveiller les performances
Amazon Data Firehose fait l'objet de plusieurs métriques dans la console, ainsi que dans Amazon CloudWatch. Les métriques portent notamment sur le volume des données envoyées, le volume des données chargées dans l'emplacement de destination, le temps écoulé entre la source et la destination, les limites de flux Firehose, le nombre d'enregistrements limité et le taux de réussite de chargement.
Tarification à l'usage
Avec Amazon Data Firehose, vous ne payez que pour la quantité de données que vous transmettez via le service et, le cas échéant, pour les conversions de format des données. Vous payez également la diffusion Amazon VPC et le transfert des données lorsque cela s'applique. Il n'y a pas de frais minimaux et aucun engagement initial n'est requis. Vous n'avez pas besoin de personnel pour assurer le fonctionnement, adapter la taille et assurer l'entretien de l'infrastructure ou d'applications personnalisées afin de collecter et de charger des données diffusées en continu.
En savoir plus sur la tarification d'Amazon Data Firehose