

 Amazon Redshift ne prendra plus en charge l'utilisation des UDF Python après le 30 juin 2026. Nous allons commencer à l'appliquer par étapes. Pour plus d'informations sur les détails de la fin de vie de Python et des options de migration, consultez [ le billet de ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/) blog publié le 30 juin 2025. 

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.

# Utilisation de tables Apache Iceberg avec Amazon Redshift
<a name="querying-iceberg"></a>

**Note**  
 Pour obtenir les meilleures performances lors de l’utilisation des tables Apache Iceberg avec Amazon Redshift, vous devez générer des statistiques de colonne pour les tables à l’aide du AWS Glue. Pour plus d’informations, consultez [Génération de statistiques de colonnes pour les tables Iceberg](https://docs.aws.amazon.com/glue/latest/dg/iceberg-generate-column-stats.html) dans le *Guide du développeur AWS Glue *. 

Cette rubrique explique comment utiliser des tableaux au format Apache Iceberg avec Amazon Redshift. Apache Iceberg est un format de table open source performant pour les lacs de données. Pour en savoir plus, consultez [Apache Iceberg](https://iceberg.apache.org/) dans la documentation Apache Iceberg.

Vous pouvez interroger les tables Apache Iceberg cataloguées dans le AWS Glue Data Catalog avec Amazon Redshift. Les types d'instance RG et Redshift Serverless utilisent leur propre calcul pour traiter les requêtes des lacs de données, tandis que les types d'instance RA3 utilisent Redshift Spectrum. Pour plus d'informations, consultez [ Interroger votre lac ](https://docs.aws.amazon.com/redshift/latest/gsg/data-lake.html) de données. 

Amazon Redshift assure une cohérence transactionnelle dans le cadre de l’interrogation des tables Apache Iceberg. Vous pouvez manipuler les données de vos tables à l’aide de services conformes aux propriétés ACID (atomicité, cohérence, isolation, durabilité) comme Amazon Athena et Amazon EMR tout en exécutant des requêtes avec Amazon Redshift. Amazon Redshift peut utiliser les statistiques de tables stockées dans les métadonnées Apache Iceberg pour optimiser les plans de requêtes et limiter les analyses de fichiers pendant le traitement des requêtes. Avec Amazon Redshift SQL, vous pouvez joindre des tables Redshift à des tables de lac de données.

Pour commencer à utiliser des tables Iceberg avec Amazon Redshift :

1. Créez une table Apache Iceberg sur une AWS Glue Data Catalog base de données à l'aide d'un service compatible tel qu'Amazon Athena ou Amazon EMR. Pour créer une table Iceberg à l’aide d’Athena, consultez [Utilisation de tables Apache Iceberg](https://docs.aws.amazon.com/athena/latest/ug/querying-iceberg.html) dans le *Guide de l’utilisateur Amazon Athena*.

1. Créez un cluster Amazon Redshift ou un groupe de travail Redshift sans serveur avec un rôle IAM associé qui permet d’accéder à votre lac de données. Pour savoir comment créer des clusters ou des groupes de travail, consultez [Commencer avec les entrepôts de données alloués Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/gsg/new-user.html) et [Commencer avec les entrepôts de données Redshift sans serveur](https://docs.aws.amazon.com/redshift/latest/gsg/new-user-serverless.html) dans le *Guide de démarrage Amazon Redshift*.

1. Connectez-vous à votre cluster ou groupe de travail à l’aide de l’éditeur de requêtes v2 ou d’un client SQL tiers. Pour savoir comment vous connecter à l’aide de l’éditeur de requêtes v2, consultez [Connexion à un entrepôt de données Amazon Redshift à l’aide des outils client SQL](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-to-cluster.html) dans le *Guide de gestion Amazon Redshift*.

1. Créez un schéma externe dans votre base de données Amazon Redshift pour une base de données de catalogue de données spécifique qui comprend vos tables Iceberg. Pour obtenir des informations sur la création d’un schéma externe, consultez [Schémas externes dans Amazon Redshift Spectrum](c-spectrum-external-schemas.md).

1. Exécutez des requêtes SQL pour accéder aux tables Iceberg dans le schéma externe que vous avez créé.

## Éléments à prendre en considération lors de l’utilisation de tables Apache Iceberg avec Amazon Redshift
<a name="querying-iceberg-considerations"></a>

Tenez compte des points suivants lorsque vous utilisez Amazon Redshift avec des tables Iceberg :
+ **Prise en charge des versions d’Iceberg** – Amazon Redshift prend en charge l’exécution de requêtes sur les versions suivantes de tables Iceberg :
  + La version 1 définit la façon dont les grandes tables analytiques sont gérées en utilisant des fichiers de données immuables.
  + La version 2 ajoute la possibilité de prendre en charge les mises à jour et les suppressions de niveau ligne tout en laissant les fichiers de données existants inchangés et en gérant les modifications de données de tables à l’aide de fichiers de suppression. 
  + La version 3 introduit les valeurs de colonne par défaut, le suivi du lignage des lignes et les vecteurs de suppression. Les valeurs par défaut vous permettent de définir des valeurs initiales pour les colonnes qui sont appliquées lorsque les valeurs ne sont pas fournies explicitement. Le lignage des lignes fournit des pseudo-colonnes qui suivent l'identité des lignes et l'historique des modifications. Les vecteurs de suppression offrent une représentation plus compacte des suppressions au niveau des lignes, ce qui permet des lectures et des écritures plus rapides que les fichiers de suppression Iceberg v2. Pour de plus amples informations, veuillez consulter [Fonctionnalités d'Apache Iceberg v3 dans Amazon Redshift](iceberg-v3-features.md).

   Pour connaître les différences entre les tables de la version 1, de la version 2 et de la version 3, consultez la section Changements de version de [ format ](https://iceberg.apache.org/spec/#appendix-e-format-version-changes) dans la documentation d'Apache Iceberg.

  Pour plus d'informations sur les fonctionnalités d'Iceberg v3 prises en charge par Amazon Redshift et les limites actuelles, consultez. [Fonctionnalités d'Apache Iceberg v3 dans Amazon Redshift](iceberg-v3-features.md)
+ **Ajout de partitions** – Vous n’avez pas besoin d’ajouter de partitions manuellement pour vos tables Apache Iceberg. Les nouvelles partitions au niveau des tables Apache Iceberg sont automatiquement détectées par Amazon Redshift et aucune opération manuelle n’est nécessaire pour mettre à jour les partitions dans la définition de table. Les modifications éventuellement apportées dans la spécification des partitions sont aussi appliquées automatiquement à vos requêtes sans aucune intervention de l’utilisateur.
+ **Ingestion des données Iceberg dans Amazon Redshift** – Vous pouvez utiliser les commandes INSERT INTO ou CREATE TABLE AS pour importer les données de votre table Iceberg dans une table Amazon Redshift locale. Pour l’heure, vous ne pouvez pas utiliser la commande COPY pour ingérer le contenu d’une table Apache Iceberg dans une table Amazon Redshift locale.
+ **Vues matérialisées** : vous pouvez créer des vues matérialisées pour les tables Apache Iceberg comme pour n’importe quelle autre table externe dans Amazon Redshift. Les éléments à prendre en considération pour les autres formats de table de lac de données valent également pour les tables Apache Iceberg. La réécriture automatique des requêtes et les vues matérialisées automatiques sur les tables de lac de données ne sont actuellement pas prises en charge.
+ **AWS Lake Formation contrôle d'accès précis ** : Amazon Redshift prend en charge un contrôle d'accès AWS Lake Formation précis sur les tables Apache Iceberg.
+ **User-defined paramètres de gestion des données ** : Amazon Redshift prend en charge les paramètres de gestion des données définis par l'utilisateur sur les tables Apache Iceberg. L’utilisation de paramètres de gestion des données définis par l’utilisateur sur des fichiers existants permet de personnaliser les données interrogées dans les tables externes afin d’éviter des erreurs d’analyse. Ces paramètres offrent la possibilité de gérer les incohérences entre le schéma de table et les données réelles des fichiers. Vous pouvez également utiliser les paramètres de gestion des données définis par l’utilisateur pour les tables Apache Iceberg.
+ **Requêtes Time Travel** – Les requêtes Time Travel ne sont actuellement pas prises en charge avec les tables Apache Iceberg.
+ **Tarification ** : lorsque vous accédez à des tables Iceberg à partir d'un cluster RG ou d'un groupe de travail Redshift Serverless, les requêtes de lac de données s'exécutent sur les propres ressources de calcul du cluster ou du groupe de travail. Il n'y a donc pas de frais distincts pour les requêtes de lac de données. Lorsque vous accédez à des tables Iceberg à partir d'un cluster DC2 ou RA3, la tarification Redshift Spectrum vous est facturée. Pour plus d'informations sur la tarification, consultez la rubrique Tarification [https://aws.amazon.com/redshift/pricing/](https://aws.amazon.com/redshift/pricing/) d'Amazon Redshift.
+ **Mise en cache des métadonnées** : la mise en cache des métadonnées suppose que les fichiers de métadonnées sont immuables conformément à la [spécification Iceberg.](https://iceberg.apache.org/spec/#file-system-operations) L’immuabilité des fichiers de métadonnées est une exigence à l’intégrité des données dans Amazon Redshift.
+ **Identité fédérée ** — L'identité fédérée n'est pas prise en charge lors de l'écriture dans les tables Apache Iceberg. Cela inclut l'utilisation du mot clé SESSION pour le paramètre IAM\_ROLE lors de la création de schémas externes. Pour plus d'informations sur les paramètres IAM\_ROLE, consultez [ CREATE EXTERNAL SCHEMA. ](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_SCHEMA.html)