Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Création de tables
Même si l'exécution d'un robot est la méthode recommandée pour inventorier les données de vos magasins de données, vous pouvez y ajouter des tables de métadonnées AWS Glue Data Catalog manuellement. Cette approche vous permet de mieux contrôler les définitions des métadonnées et de les personnaliser en fonction de vos besoins spécifiques.
Vous pouvez également ajouter des tables au catalogue de données manuellement en procédant comme suit :
-
Utilisez la console AWS Glue pour créer manuellement une table dans l’ AWS Glue Data Catalog. Pour plus d’informations, consultez Utilisation de tables sur la console AWS Glue.
-
Utilisez l'opération
CreateTable
de l'AWS Glue API pour créer une table dans le AWS Glue Data Catalog. Pour plus d’informations, consultez CreateTable action (Python : créer_table). -
Utilisez AWS CloudFormation des modèles. Pour plus d’informations, consultez AWS CloudFormation pour AWS Glue.
Lorsque vous définissez une table manuellement à l'aide de la console ou d’une API, vous spécifiez le schéma de table et la valeur d'un champ de classification qui indique le type et le format des données de la source de données. Si un crawler crée la table, le format et le schéma des données sont déterminés par un classifieur intégré ou un classifieur personnalisé. Pour plus d'informations sur la création d'une table à l'aide de la console AWS Glue, consultez Utilisation de tables sur la console AWS Glue.
Rubriques
Partitions de table
Une définition de table AWS Glue d'un dossier Amazon Simple Storage Service (Amazon S3) peut décrire une table partitionnée. Par exemple, pour améliorer la performance des requêtes, une table partitionnée peut séparer les données mensuelles dans différents fichiers en utilisant le nom du mois en tant que clé. Dans AWS Glue, les définitions de table incluent la clé de partitionnement d'une table. Lorsque AWS Glue évalue les données dans les dossiers Amazon S3 pour faire l'inventaire d'une table, il détermine si une table individuelle ou une table partitionnée est ajoutée.
Vous pouvez créer des index de partition sur une table pour récupérer un sous-ensemble des partitions au lieu de charger toutes les partitions de la table. Pour en savoir plus sur l'utilisation des index de partition, consultez Utilisation d’index de partition dans AWS Glue.
Toutes les conditions suivantes doivent être remplies pour que AWS Glue crée une table partitionnée pour un dossier Amazon S3 :
-
Les schémas des fichiers sont similaires, comme déterminé par AWS Glue.
-
Le format de données des fichiers est le même.
-
Le format de compression des fichiers est le même.
Par exemple, imaginons que vous possédez un compartiment Amazon S3 nommé my-app-bucket
, où vous stockez des données de vente d'applications iOS et Android. Les données sont partitionnées par année, mois et jour. Les fichiers de données pour les ventes iOS et Android ont le même schéma, format de données et format de compression. Dans le AWS Glue Data Catalog, le AWS Glue robot crée une définition de table avec des clés de partitionnement pour l'année, le mois et le jour.
La liste Amazon S3 my-app-bucket
suivante présente certaines partitions. Le symbole =
est utilisé pour attribuer des valeurs de clé de partition.
my-app-bucket/Sales/year=2010/month=feb/day=1/iOS.csv my-app-bucket/Sales/year=2010/month=feb/day=1/Android.csv my-app-bucket/Sales/year=2010/month=feb/day=2/iOS.csv my-app-bucket/Sales/year=2010/month=feb/day=2/Android.csv ... my-app-bucket/Sales/year=2017/month=feb/day=4/iOS.csv my-app-bucket/Sales/year=2017/month=feb/day=4/Android.csv
Liens de ressources de table
La console AWS Glue a été récemment mise à jour. La version actuelle de la console ne prend pas en charge les liens de ressources de table. |
Le catalogue de données peut également contenir des liens de ressources vers des tables. Un lien de ressource de table est un lien vers une table locale ou partagée. Actuellement, vous ne pouvez créer des liens de ressources que dans AWS Lake Formation. Après avoir créé un lien de ressource vers une table, vous pouvez utiliser le nom du lien de ressource partout où vous utiliseriez le nom de la table. Avec les tables que vous possédez ou qui sont partagées avec vous, les liens de ressources de table sont renvoyés par glue:GetTables()
et apparaissent sous la forme d'entrées sur la page Tables de la console AWS Glue.
Le catalogue de données peut également contenir des liens de ressources de base de données.
Pour plus d'informations sur les liens de ressources, veuillez consulter la rubrique Création de liens de ressources dans le Guide du développeur AWS Lake Formation .
Mise à jour de tables Data Catalog créées manuellement à l’aide d’crawlers
Vous souhaiterez peut-être créer des AWS Glue Data Catalog tables manuellement, puis les mettre à jour à l'aide de AWS Glue robots d'exploration. Les crawlers respectant un calendrier peuvent ajouter de nouvelles partitions et mettre à jour les tables avec des modifications de schéma. Cela s'applique également aux tables migrées depuis un métastore Apache Hive.
Pour ce faire, lorsque vous définissez un crawler, au lieu de spécifier un ou plusieurs magasins de données en tant que source d'une analyse, vous spécifiez une ou plusieurs tables Data Catalog existantes. L'crawler analyse ensuite les magasins de données spécifiés par les tables du catalogue. Dans ce cas, aucune nouvelle table n’est créée ; au lieu de cela, vos tables créées manuellement sont mises à jour.
Voici d'autres raisons qui peuvent vous amener à vouloir créer manuellement des tables de catalogue et spécifier les tables de catalogue en tant qu'crawler source :
-
Vous voulez choisir le nom de la table de catalogue et de ne pas vous fier à l'algorithme d'attribution de noms de la table de catalogue.
-
Vous souhaitez empêcher de nouvelles tables d'être créées au cas où des fichiers dont le format pourrait perturber la détection de partition soient enregistrés par erreur dans le chemin de la source de données.
Pour plus d’informations, consultez Étape 2 : Choisir des sources de données et des classificateurs..
Propriétés de la table Catalogue de données
Les propriétés de table, ou paramètres, comme on les appelle dans la AWS CLI, sont des chaînes de clés et de valeurs non validées. Vous pouvez définir vos propres propriétés sur la table pour prendre en charge les utilisations du Catalogue de données en dehors d' AWS Glue. D'autres services utilisant le catalogue de données peuvent également le faire. AWS Glue définit certaines propriétés de table lors de l'exécution de jobs ou de robots d'exploration. Sauf indication contraire, ces propriétés sont destinées à un usage interne. Nous ne garantissons pas le fait qu'elles continueront d'exister sous leur forme actuelle, et nous ne garantissons pas le comportement du produit si ces propriétés sont modifiées manuellement.
Pour plus d'informations sur les propriétés de table définies par AWS Glue les robots d'exploration, consultezParamètres définis sur les tables du Catalogue de données par un Crawler.