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.

Consultez les tables de Delta Lake de la Linux Foundation

Linux Foundation Delta Lake est un format de table pour l'analytique du big data. Vous pouvez utiliser Amazon Athena pour lire directement les tables Delta  Lake stockées dans Amazon S3 sans avoir à générer de fichiers manifestes ou à exécuter l'instruction MSCK REPAIR.

Le format Delta Lake stocke les valeurs minimales et maximales par colonne de chaque fichier de données. L'implémentation Athena utilise ces informations pour permettre le saut de fichier sur les prédicats afin d'éliminer les fichiers non désirés de la considération.

Considérations et restrictions

L'assistance de Delta Lake à Athena comporte les considérations et limites suivantes :

  • Tableaux avec AWS Glue catalogue uniquement : le support natif de Delta Lake n'est pris en charge que par le biais des tables enregistrées auprès de AWS Glue. Si une table Delta Lake est enregistrée dans un autre métastore, vous pouvez la conserver et la traiter comme votre métastore primaire. Les métadonnées de Delta Lake étant stockées dans le système de fichiers (par exemple, dans Amazon S3) plutôt que dans le métastore, Athena n'a besoin que de la propriété location in AWS Glue pour lire vos tables Delta Lake.

  • Moteur V3 uniquement – Les requêtes Delta Lake ne sont prises en charge que par la version 3 du moteur Athena. Vous devez vous assurer que le groupe de travail que vous créez est configuré pour utiliser la version 3 du moteur Athena.

  • Version du lecteur Delta Lake : le protocole de lecteur Delta Lake jusqu'à la version 3 est pris en charge.

  • Support des vecteurs de suppression — Athena prend en charge la lecture à partir des tables de Delta Lake avec des vecteurs de suppression. Les vecteurs de suppression sont une fonctionnalité d'optimisation du stockage qui peut être activée sur les tables Delta Lake. Pour plus d'informations, voir Que sont les vecteurs de suppression ? dans la documentation de Delta Lake.

  • Mappage des colonnes et timestampNtz — Le mappage des colonnes Delta, qui permet aux colonnes de la table Delta et aux colonnes du fichier Parquet sous-jacent d'utiliser des noms différents, et l'horodatage sans fuseau horaire (timestampNtz) sont pris en charge.

  • Pas de prise en charge du voyage dans le temps – Il n'y a pas de prise en charge des requêtes qui utilisent les capacités de voyage dans le temps de Delta Lake.

  • Lecture seule : DML les instructions d'écriture telles que UPDATEINSERT, ou ne DELETE sont pas prises en charge.

  • Prise en charge de Lake Formation : l'intégration de Lake Formation est disponible pour les tables Delta Lake dont le schéma est synchronisé avec AWS Glue. Pour plus d'informations, consultez les AWS Lake Formation sections Utilisation avec Amazon Athena et Configuration des autorisations pour une table Delta Lake dans le guide du AWS Lake Formation développeur.

  • DDLSupport limité — Les DDL déclarations suivantes sont prises en charge : CREATE EXTERNAL TABLESHOW COLUMNS,SHOW TBLPROPERTIES,SHOW PARTITIONS,SHOW CREATE TABLE, etDESCRIBE. Pour plus d'informations sur l'utilisation de l'instruction CREATE EXTERNAL TABLE, voir la rubrique Mise en route.

  • Omission d'objets S3 Glacier non prise en charge : si les objets de la table Delta Lake de Linux Foundation appartiennent à une classe de stockage Amazon S3 Glacier, la définition de la propriété de table read_restored_glacier_objects sur false n'a aucun effet.

    Par exemple, supposons que vous exécutiez la commande suivante :

    ALTER TABLE table_name SET TBLPROPERTIES ('read_restored_glacier_objects' = 'false')

    Pour les tables Iceberg et Delta Lake, la commande produit l'erreur Unsupported table property key: read_restored_glacier_objects. Pour les tables Hudi, la commande ALTER TABLE ne produit pas d'erreur, mais les objets Amazon S3 Glacier ne sont toujours pas ignorés. L'exécution de requêtes SELECT après la commande ALTER TABLE continue de renvoyer tous les objets.