Qu'est-ce qu'Amazon Athena et comment ça marche ?

Publié: 2021-10-26

Qu'est-ce qu'Amazon Athena et comment ça marche ? | Encaptechno

Le processus d'analyse des données est de nature quelque peu complexe et comprend plusieurs étapes de simplification pour lesquelles de nombreux outils sont disponibles. Amazon vient à la rescousse en fournissant un service du nom d'Amazon Athena qui aide à analyser les données.

Amazon Athena est un outil d'analyse sans serveur qui permet aux utilisateurs d'interroger les données de S3 à l'aide de la syntaxe SQL standard. En tant que leader dans le monde du cloud computing, AWS propose une large gamme de services qui offrent des performances compétitives et des solutions abordables utilisées pour exécuter des charges de travail par rapport à l'architecture sur site.

AWS Athena est un service du domaine analytique qui se concentre sur la récupération de données statiques stockées dans des compartiments S3 à l'aide des instructions SQL standard. Il peut être considéré comme un outil robuste qui aide les clients à obtenir des informations importantes sur leurs données stockées sur S3 car il est sans serveur et il n'y a pas d'infrastructure pour la gestion.

Qu'est-ce qu'Amazon Athena ?

Amazon a lancé Athena en tant que service important le 20 novembre 2016. Il a été lancé en tant que service de requête sans serveur destiné à simplifier l'analyse des données en utilisant le SQL standard stocké dans Amazon S3. En quelques clics simples dans AWS Management Console, les clients peuvent facilement diriger Amazon Athena vers leurs données stockées dans Amazon S3 tout en exécutant des requêtes à l'aide de SQL standard pour générer des résultats en quelques secondes.

Avec le service d'analyse interactive d'Amazon Athena, il n'y a pas d'infrastructure pour la configuration ou la gestion et les clients ne paient que pour les requêtes qu'ils souhaitent exécuter. Il évolue automatiquement lors de l'exécution de requêtes en parallèle, ce qui donne finalement des résultats rapides même avec un énorme jeu de données et des requêtes complexes.

Athena utilise un moteur SQL distribué appelé Presto qui est utile pour exécuter les requêtes SQL. Il est basé sur la technologie open source populaire appelée Hive, qui aide en outre à stocker des données structurées, non structurées et semi-structurées. Le logiciel d'entrepôt de données Apache Hive facilite la lecture, l'écriture et la gestion de grands ensembles de données qui résident dans le stockage distribué à l'aide de SQL.

Il existe un pipeline de données simple dans lequel les données de différentes sources sont extraites et déversées dans les compartiments S3. Il s'agit de données brutes, ce qui signifie qu'aucune transformation n'est encore appliquée aux données. À l'heure actuelle, Amazon Athena peut être utilisé pour se connecter à ces données dans S3 pendant leur analyse. Il s'agit d'un processus simple car vous n'avez pas besoin de configurer de base de données ou d'outils externes pour interroger les données brutes. Une fois que vous avez terminé l'analyse et trouvé les résultats souhaités, un cluster EMR peut être utilisé pour exécuter les transformations de données analytiques complexes pendant que les données sont nettoyées, traitées et stockées.

Pourquoi devriez-vous utiliser Athena ?

Pourquoi devriez-vous utiliser Amazon Athena ?

Un utilisateur Athena peut interroger les données chiffrées avec des clés gérées par le service de gestion de clés AWS et également chiffrer les résultats de la requête. En fait, Athena permet également l'accès entre comptes aux compartiments S3 appartenant à un autre utilisateur. Il utilise des catalogues de données gérés pour stocker des informations et des schémas liés aux recherches sur les données Amazon S3.

Dans l'ensemble, le service de requête interactif est en fait un outil analytique qui aide les organisations à analyser rapidement les données importantes stockées dans Amazon S3. Il peut être utilisé dans le traitement d'ensembles de données non structurés, structurés et semi-structurés. Avec l'utilisation d'Athena, il est possible de créer des requêtes dynamiques pour des ensembles de données. Il fonctionne avec AWS Glue pour vous offrir une bien meilleure façon de stocker les métadonnées dans S3.

À l'aide d'AWS Cloud Formation et d'Athena, vous pouvez utiliser des requêtes nommées qui vous permettent de nommer une requête spécifique, puis de l'appeler également à l'aide du nom. Il s'agit d'un service interactif d'AWS qui peut être utilisé par les Data Scientists et les développeurs pour jeter un coup d'œil dans le tableau d'exécution de la requête. Il aide à récupérer les données de S3 et à les charger dans différents magasins de données à l'aide du pilote Athena JDBC pour l'analyse du magasin de journaux et les événements d'entreposage de données.

Fonctionnement d'AWS Athena

Amazon Athena travaille en association directe avec les données S3. Il est utilisé comme moteur SQL distribué pour exécuter les requêtes et il utilise également Apache Hive pour créer et modifier des tables et des partitions. Certains des points de vue importants nécessaires pour travailler avec Athena incluent :

  1. Vous devez avoir un compte AWS
  2. Vous devez activer votre compte pour exporter les données de coût et d'utilisation dans le compartiment S3.
  3. Vous pouvez préparer des seaux pour qu'Athena se connecte.
  4. AWS crée également des fichiers manifestes à l'aide de métadonnées chaque fois qu'il écrit dans le compartiment. En fait, il crée un dossier dans le compartiment de données de facturation AWS connu sous le nom d'Athena qui ne contient que les données.
  5. Pour simplifier la configuration, une région appelée région US-Ouest-2 peut également être utilisée.
  6. La dernière et dernière étape consiste à télécharger les informations d'identification du nouvel utilisateur, car les informations d'identification permettent de mapper indirectement les informations d'identification de la base de données.

Amazon propose également un outil appelé Cost Explorer pour le glisser-déposer qui est fourni avec un ensemble de rapports prédéfinis tels que le coût mensuel du service, l'utilisation des instances réservées, etc. Si vous êtes curieux, vous devriez essayer de recréer la requête au-dessus du service. coûts et fonctionnement. Ce n'est en fait pas impossible. Vous pouvez découper les données brutes tout en calculant les taux de croissance chacun, en créant des histogrammes, en calculant les scores, etc.

Certaines des considérations supplémentaires à prendre en compte lors de l'utilisation d'Amazon Athena incluent :

Modèle de prix

Le prix d'Athena est supérieur à 5 $ pour l'analyse des données téraoctets de S3 entourées au mégaoctet le plus proche avec un minimum de 10 Mo par requête.

Réduction des coûts

L'astuce consiste à réduire les données analysées de trois manières appelées compression des données, utilisation de données en colonnes et partitionnement des données.

Caractéristiques d'Athéna

Parmi les nombreux services fournis par Amazon, Athena est l'un des meilleurs services. Il possède de multiples fonctionnalités qui le rendent adapté à l'analyse de données. Certaines des fonctionnalités incluent :

  • Mise en œuvre rapide

Amazon Athena n'a pas besoin d'être installé. Il est en fait accessible directement à partir de la console AWS uniquement à l'aide de l'AWS CLI.

  • Sans serveur

Il est sans serveur afin que l'utilisateur final n'ait pas à se soucier de la configuration, de l'infrastructure, de la mise à l'échelle ou des pannes. Athéna s'occupe de tout facilement.

  • Payer par requête

Athena vous facture uniquement pour la requête que vous exécutez, c'est-à-dire la quantité de données gérées par requête. Vous pouvez réellement économiser beaucoup si vous compressez les données et les formatez en conséquence.

  • Sécurisé

À l'aide des politiques IAM et de l'identité AWS, Amazon Athena offre un contrôle complet sur l'ensemble de données. Les données étant stockées dans des compartiments S3, les politiques IAM peuvent aider à gérer le contrôle des utilisateurs.

  • Disponible

Amazon Athena est hautement disponible et les utilisateurs peuvent exécuter des requêtes 24 heures sur 24.

  • Rapide

Amazon Athena est un outil d'analyse rapide car il peut effectuer des requêtes complexes en moins de temps en divisant les requêtes en requêtes simples et en les exécutant en parallèle et en combinant les résultats pour offrir le résultat souhaité.

  • L'intégration

L'une des meilleures fonctionnalités d'Athena est qu'il peut être facilement intégré à AWS Glue, ce qui aide les utilisateurs à créer un référentiel de données unifié. Cela aide également à créer une bien meilleure gestion des versions des données, avec de meilleures tables, vues, etc.

  • Requêtes fédérées

La requête fédérée Amazon Athena permet à Athena d'exécuter des requêtes SQL sur toutes les sources de données relationnelles, objets, non relationnelles et personnalisées.

  • Apprentissage automatique

Les développeurs peuvent utiliser Amazon Sage Maker pour créer et déployer les modèles d'apprentissage automatique dans Amazon Athena.

Techniques d'optimisation pour AWS Athena

Techniques d'optimisation pour AWS Athena

Lorsque vous travaillez avec des services cloud, vous devez vous occuper des services qui sont utilisés avec le moins de ressources possibles et de ceux qui offrent le meilleur résultat de manière rentable. De nombreuses mesures peuvent être prises pour optimiser les requêtes au sein d'AWS Athena afin d'améliorer les performances globales et de contrôler les coûts. Certaines des techniques d'optimisation courantes pour le service d'analyse interactive d'Amazon Athena sont :

  • Partitionner les données dans S3

    L'une des pratiques les plus courantes suivies pour stocker des données dans S3, le partitionnement est effectué pour créer des répertoires séparés basés sur des dimensions principales telles que la dimension de date et la dimension de région. Il peut être utilisé pour partitionner par année, mois et même jour pour stocker des fichiers dans le répertoire de chaque jour. D'autre part, vous pouvez également partitionner par région où les données peuvent être stockées pour des régions similaires sous un même répertoire. Avec le partitionnement, Athena est capable d'analyser moins de données par requête, ce qui rend l'ensemble du travail rapide et efficace.

  • Techniques de compression des données

    Lors de la compression des données, un processeur est nécessaire pour compresser et décompresser pendant l'interrogation. Même s'il existe différentes techniques de compression disponibles, l'une des plus populaires à utiliser avec Athena est Apache Parquet ou Apache ORC. Il s'agit d'une technique utile pour compresser les données avec des algorithmes par défaut pour les bases de données en colonnes.

  • Rationalisation des conditions JOIN dans les requêtes

    Au moment d'interroger les données sur plusieurs dimensions, une chose importante requise est de joindre les données de deux tables pour effectuer l'analyse. Le processus d'adhésion semble simple, mais peut très bien être parfois complexe. Par conséquent, il est toujours recommandé de conserver les tables avec des données volumineuses à gauche et des données moindres à droite. C'est ainsi que le moteur de traitement de données peut facilement distribuer la plus petite table de droite aux nœuds de travail tout en diffusant les données de la table de gauche et en joignant les deux.

Utilisation des colonnes sélectionnées dans la requête

Il s'agit d'une autre technique d'optimisation obligatoire qui réduit considérablement le temps et l'argent nécessaires pour exécuter des requêtes Athena. Il est toujours conseillé de mentionner explicitement le nom des colonnes sur lesquelles quelqu'un effectue une analyse dans la requête de sélection par rapport à la spécification d'une sélection à partir du nom de la table.

Optimiser la technique de correspondance de modèle dans la requête

Il arrive souvent qu'il soit nécessaire d'interroger les données en fonction de modèles dans les données, par opposition à un mot-clé. En SQL, l'un des moyens simples d'implémenter cela consiste à utiliser l'opérateur LIKE où l'on peut mentionner le modèle et la requête récupère les données qui correspondent à nouveau au modèle. Dans Amazon Athena, on peut utiliser REGEX pour faire correspondre les modèles au lieu de l'opérateur LIKE car c'est beaucoup plus rapide.

Conclusion

Les données devenant une partie importante du développement d'une entreprise, le processus d'obtention d'informations et d'extraction de plus de données est devenu d'autant plus important maintenant. Avec les services de cloud public, offrant des services d'analyse basés sur des services tels qu'Amazon Athena, de nombreuses entreprises peuvent obtenir plus d'informations sans complications pouvant survenir avec d'autres outils d'analyse.

En tant que l'une des meilleures architectures sans serveur, Amazon Athena rend les requêtes de données faciles à utiliser, à configurer et rapides à exécuter. En fait, le modèle de paiement à l'utilisation d'Athena rend le tout abordable pour exécuter des analyses. De plus, étant donné qu'Athena fonctionne avec Amazon S3 et offre une grande évolutivité, fiabilité et durabilité, il s'agit de l'une des meilleures suites pour exécuter des charges de travail d'analyse.

Si vous avez besoin d'aide pour la mise en œuvre et l'utilisation d'Amazon Athena, n'hésitez pas à contacter nos consultants d'Encaptechno . Nous avons une équipe formée pour vous offrir une assistance complète tout au long de votre parcours avec Amazon Athena.