Spécifications des API REST AWS Glue pour Apache Iceberg
Cette section contient les spécifications relatives au catalogue AWS Glue Iceberg REST et aux API d’extension AWS Glue, ainsi que les considérations relatives à l’utilisation de ces API.
Les demandes d’API adressées aux points de terminaison AWS Glue Data Catalog sont authentifiées à l’aide d’AWS Signature Version 4 (SigV4). Consultez la section AWS Signature Version 4 for API requests pour en savoir plus sur AWS SigV4.
Lors de l’accès au point de terminaison du service AWS Glue et aux métadonnées AWS Glue, l’application endosse un rôle IAM qui nécessite une action IAM glue:getCatalog.
L’accès au catalogue de données et à ses objets peut être géré à l’aide des autorisations IAM, Lake Formation ou du mode hybride Lake Formation.
Les catalogues fédérés dans le catalogue de données contiennent des emplacements de données enregistrés pour Lake Formation. Lake Formation utilise le catalogue de données pour fournir des autorisations de type base de données afin de gérer l’accès des utilisateurs aux objets du catalogue de données.
Vous pouvez utiliser les autorisations IAM, AWS Lake Formation ou du mode hybride Lake Formation pour gérer l’accès au catalogue de données par défaut et à ses objets.
Pour créer, insérer ou supprimer des données dans les objets gérés Lake Formation, vous devez configurer des autorisations spécifiques pour l’utilisateur ou le rôle IAM.
-
CREATE_CATALOG : nécessaire pour créer des catalogues
-
CREATE_DATABASE : nécessaire pour créer des bases de données
-
CREATE_TABLE : nécessaire pour créer des tables
-
DELETE : nécessaire pour supprimer des données d’une table
-
DESCRIBE : nécessaire pour lire les métadonnées
-
DROP : nécessaire pour supprimer une table ou une base de données
-
INSERT : nécessaire lorsque le principal doit insérer des données dans une table
-
SELECT : nécessaire lorsque le principal doit sélectionner des données d’une table
Pour plus d’informations, consultez la rubrique Lake Formation permissions reference du Guide du développeur AWS Lake Formation.
| Nom de l’opération | GetConfig |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
GET /iceberg/v1/config |
| Action IAM |
glue:GetCatalog |
| Autorisations Lake Formation | Ne s’applique pas |
| Événement CloudTrail |
glue:GetCatalog |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L67 |
Considérations et restrictions
-
Le paramètre de requête
warehousedoit être défini sur l’ID du catalogue AWS Glue. S’il n’est pas défini, le catalogue racine du compte courant est utilisé pour renvoyer la réponse. Pour plus d’informations, consultez Paramètres du chemin d’accès au préfixe et au catalogue.
| Nom de l’opération | GetCatalog |
| Type |
API d’extension AWS Glue |
| Chemin REST |
GET/extensions/v1/catalogs/{catalog} |
| Action IAM |
glue:GetCatalog |
| Autorisations Lake Formation | DESCRIBE |
| Événement CloudTrail |
glue:GetCatalog |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L40 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
| Nom de l’opération | ListNamespaces |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
GET/iceberg/v1/catalogs/{catalog}/namespaces |
| Action IAM |
glue:GetDatabase |
| Autorisations Lake Formation | ALL, DESCRIBE, SELECT |
| Événement CloudTrail |
glue:GetDatabase |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L205 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
-
Seuls les espaces de noms du niveau suivant sont affichés. Pour répertorier les espaces de noms à des niveaux plus profonds, spécifiez l’ID de catalogue imbriqué dans le paramètre de chemin d’accès au catalogue.
| Nom de l’opération | CreateNamespace |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
POST/iceberg/v1/catalogs/{catalog}/namespaces |
| Action IAM |
glue:CreateDatabase |
| Autorisations Lake Formation | ALL, DESCRIBE, SELECT |
| Événement CloudTrail |
glue:CreateDatabase |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L256 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
-
Seul un espace de noms à niveau unique peut être créé. Pour créer un espace de noms à plusieurs niveaux, vous devez créer chaque niveau de manière itérative et vous connecter au niveau à l’aide du paramètre de chemin du catalogue.
| Nom de l’opération | StartCreateNamespaceTransaction |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
POST/extensions/v1/catalogs/{catalog}/namespaces |
| Action IAM |
glue:CreateDatabase |
| Autorisations Lake Formation | ALL, DESCRIBE, SELECT |
| Événement CloudTrail |
glue:CreateDatabase |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L256 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
-
Vous ne pouvez créer qu’un espace de noms à niveau unique. Pour créer un espace de noms à plusieurs niveaux, vous devez créer chaque niveau de manière itérative et vous connecter au niveau à l’aide du paramètre de chemin du catalogue.
-
L’API est asynchrone et renvoie un ID de transaction que vous pouvez utiliser pour le suivi à l’aide de l’appel d’API
CheckTransactionStatus. -
Vous pouvez appeler cette API uniquement si l’appel d’API
GetCatalogcontient le paramètreuse-extensions=truedans la réponse.
| Nom de l’opération | LoadNamespaceMetadata |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
GET/iceberg/v1/catalogs/{catalog}/namespaces/{ns} |
| Action IAM |
glue:GetDatabase |
| Autorisations Lake Formation | ALL, DESCRIBE, SELECT |
| Événement CloudTrail |
glue:GetDatabase |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L302 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
| Nom de l’opération | UpdateNamespaceProperties |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
POST /iceberg/v1/catalogs/{catalog}/namespaces/{ns}/properties |
| Action IAM |
glue:UpdateDatabase |
| Autorisations Lake Formation | ALL, ALTER |
| Événement CloudTrail |
glue:UpdateDatabase |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L400 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
| Nom de l’opération | DeleteNamespace |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
DELETE/iceberg/v1/catalogs/{catalog}/namespces/{ns} |
| Action IAM |
glue:DeleteDatabase |
| Autorisations Lake Formation | ALL, DROP |
| Événement CloudTrail |
glue:DeleteDatabase |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L365 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
Si la base de données contient des objets, l’opération échouera.
-
L’API est asynchrone et renvoie un ID de transaction que vous pouvez utiliser pour le suivi à l’aide de l’appel d’API
CheckTransactionStatus. -
L’API ne peut être utilisée que si l’appel d’API
GetCatalogindiqueuse-extensions=truedans la réponse.
| Nom de l’opération | StartDeleteNamespaceTransaction |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
DELETE /extensions/v1/catalogs/{catalog}/namespaces/{ns} |
| Action IAM |
glue:DeleteDatabase |
| Autorisations Lake Formation | ALL, DROP |
| Événement CloudTrail |
glue:DeleteDatabase |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L85 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
Si la base de données contient des objets, l’opération échouera.
-
L’API est asynchrone et renvoie un ID de transaction que vous pouvez utiliser pour le suivi à l’aide de l’appel d’API
CheckTransactionStatus. -
L’API ne peut être utilisée que si l’appel d’API
GetCatalogindiqueuse-extensions=truedans la réponse.
| Nom de l’opération | ListTables |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
GET /iceberg/v1/catalogs/{catalog}/namespaces/{ns}/tables |
| Action IAM |
glue:GetTables |
| Autorisations Lake Formation | ALL, SELECT, DESCRIBE |
| Événement CloudTrail |
glue:GetTables |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L463 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
Toutes les tables, y compris les tables non Iceberg, seront répertoriées. Pour déterminer si une table peut être chargée en tant que table Iceberg ou non, appelez l’opération
LoadTable.
| Nom de l’opération | CreateTable |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
GET /iceberg/v1/catalogs/{catalog}/namespaces/{ns}/tables |
| Action IAM |
glue:CreateTable |
| Autorisations Lake Formation | ALL, CREATE_TABLE |
| Événement CloudTrail |
glue:CreateTable |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L497 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
CreateTableavec copie intermédiaire n’est pas prise en charge. Si le paramètre de requêtestageCreateest spécifié, l’opération échouera. Cela signifie que les opérations commeCREATE TABLE AS SELECTne sont pas prises en charge et que vous pouvez utiliser une combinaison deCREATE TABLEet deINSERT INTOcomme solution de contournement. -
L’opération d’API
CreateTablene prend pas en charge l’optionstate-create = TRUE.
| Nom de l’opération | CreateTable |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
POST/extensions/v1/catalogs/{catalog}/namespaces/{ns}/tables |
| Action IAM |
glue:CreateTable |
| Autorisations Lake Formation | ALL, CREATE_TABLE |
| Événement CloudTrail |
glue:CreateTable |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L107 |
Considérations et restrictions
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
CreateTableavec copie intermédiaire n’est pas prise en charge. Si le paramètre de requêtestageCreateest spécifié, l’opération échouera. Cela signifie que les opérations commeCREATE TABLE AS SELECTne sont pas prises en charge et que l’utilisateur doit utiliser une combinaison deCREATE TABLEet deINSERT INTOcomme solution de contournement. -
L’API est asynchrone et renvoie un ID de transaction que vous pouvez utiliser pour le suivi à l’aide de l’appel d’API
CheckTransactionStatus. -
L’API ne peut être utilisée que si l’appel d’API
GetCatalogindiqueuse-extensions=truedans la réponse.
| Nom de l’opération | LoadTable |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
GET /iceberg/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table} |
| Action IAM |
glue:GeTTable |
| Autorisations Lake Formation | ALL, SELECT, DESCRIBE |
| Événement CloudTrail |
glue:GetTable |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L616 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
CreateTableavec copie intermédiaire n’est pas prise en charge. Si le paramètre de requêtestageCreateest spécifié, l’opération échouera. Cela signifie que les opérations commeCREATE TABLE AS SELECTne sont pas prises en charge et que l’utilisateur doit utiliser une combinaison deCREATE TABLEet deINSERT INTOcomme solution de contournement. -
L’API est asynchrone et renvoie un ID de transaction que vous pouvez utiliser pour le suivi à l’aide de l’appel d’API
CheckTransactionStatus. -
L’API ne peut être utilisée que si l’appel d’API
GetCatalogindiqueuse-extensions=truedans la réponse.
| Nom de l’opération | LoadTable |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
GET /extensions/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table} |
| Action IAM |
glue:GetTable |
| Autorisations Lake Formation | ALL, SELECT, DESCRIBE |
| Événement CloudTrail |
glue:GetTable |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L134 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
Seul le mode
allest pris en charge pour le paramètre de requête des instantanés. -
Par rapport à l’API
LoadTable, l’APIExtendedLoadTablese distingue des manières suivantes :Elle n’impose pas strictement que tous les champs soient disponibles.
-
Elle fournit les paramètres supplémentaires suivants dans le champ de configuration de la réponse :
Paramètres supplémentaires Clé de configuration Description aws.server-side-capabilities.scan-planning
Elle indique si la table peut être analysée à l’aide de la table PreparePlan et des API PlanTable. aws.server-side-capabilities.data-commit
Elle indique si la table peut être validée à l’aide de la transaction StartUpdateTable. aws.glue.staging.location
Un emplacement intermédiaire géré par le service qui peut être utilisé pour le moteur afin d’écrire des fichiers de données temporaires, utilisé pour la planification de l’analyse côté serveur ou pour la validation des données.
aws.glue.staging.access-key-id
Utilisé pour la planification de l’analyse côté serveur ou pour la validation des données, il fait partie des informations d’identification AWS temporaires permettant d’accéder à l’emplacement intermédiaire géré par le service.
aws.glue.staging.secret-access-key
Utilisé pour la planification de l’analyse côté serveur ou pour la validation des données, il fait partie des informations d’identification AWS temporaires permettant d’accéder à l’emplacement intermédiaire géré par le service.
aws.glue.staging.session-token
Utilisé pour la planification de l’analyse côté serveur ou pour la validation des données, il fait partie des informations d’identification AWS temporaires permettant d’accéder à l’emplacement intermédiaire géré par le service.
aws.glue.staging.expiration-ms
Utilisé pour la planification de l’analyse côté serveur ou pour la validation des données, délai d’expiration des informations d’identification permettant d’accéder à l’emplacement intermédiaire géré par le service.
aws.glue.staging.data-transfer-role-arn
Utilisé pour la planification de l’analyse côté serveur ou pour la validation des données, rôle IAM qui peut être endossé pour accéder à l’emplacement intermédiaire géré par le service.
| Nom de l’opération | PreplanTable |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
POST /extensions/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table}/preplan |
| Action IAM |
glue:GetTable |
| Autorisations Lake Formation | ALL, SELECT, DESCRIBE |
| Événement CloudTrail |
glue:GetTable |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L211 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
L’appelant de cette API doit toujours déterminer s’il reste des résultats à récupérer en fonction du jeton de page. Une réponse avec un élément de page vide, mais un jeton de pagination, est possible si le côté serveur est toujours en cours de traitement, mais n’est pas en mesure de produire un résultat dans le temps de réponse donné.
-
Vous ne pouvez utiliser cette API que si la réponse de l’API
ExtendedLoadTablecontientaws.server-side-capabilities.scan-planning=true.
| Nom de l’opération | PlanTable |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
POST /extensions/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table}/plan |
| Action IAM |
glue:GetTable |
| Autorisations Lake Formation | ALL, SELECT, DESCRIBE |
| Événement CloudTrail |
glue:GetTable |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L243 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
L’appelant de cette API doit toujours déterminer s’il reste des résultats à récupérer en fonction du jeton de page. Une réponse avec un élément de page vide, mais un jeton de pagination, est possible si le côté serveur est toujours en cours de traitement, mais n’est pas en mesure de produire un résultat dans le temps de réponse donné.
-
Vous ne pouvez utiliser cette API que si la réponse de l’API
ExtendedLoadTablecontientaws.server-side-capabilities.scan-planning=true.
| Nom de l’opération | TableExists. |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
HEAD/iceberg/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table} |
| Action IAM |
glue:GetTable |
| Autorisations Lake Formation | ALL, SELECT, DESCRIBE |
| Événement CloudTrail |
glue:GetTable |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L833 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
| Nom de l’opération | UpdateTable |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
POST /iceberg/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table} |
| Action IAM |
glue:UpdateTable |
| Autorisations Lake Formation | ALL, ALTER |
| Événement CloudTrail |
glue:UpdateTable |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L677 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
| Nom de l’opération | StartUpdateTableTransaction |
| Type | API d’extension AWS Glue |
| Chemin REST |
POST/extensions/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table} |
| Action IAM |
glue:UpdateTable |
| Autorisations Lake Formation |
ALL, ALTER |
| Événement CloudTrail |
glue:UpdateTable |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L154 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
L’API est asynchrone et renvoie un ID de transaction que vous pouvez utiliser pour le suivi à l’aide de l’appel d’API
CheckTransactionStatus. -
Une opération
RenamTablepeut également être effectuée par le biais de cette API. Dans ce cas, l’appelant doit également disposer de l’autorisation glue:CreateTable ou LakeFormation CREATE_TABLE pour renommer la table. -
Vous ne pouvez utiliser cette API que si la réponse de l’API
ExtendedLoadTablecontientaws.server-side-capabilities.scan-planning=true.
| Nom de l’opération | DeleteTable |
| Type |
API de catalogue REST Iceberg |
| Chemin REST |
DELETE/iceberg/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table} |
| Action IAM |
glue:DeleteTable |
| Autorisations Lake Formation | ALL, DROP |
| Événement CloudTrail |
glue:DeleteTable |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L793 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
Le fonctionnement de l’API
DeleteTableprend en charge une option de purge. Lorsque la purge est définie surtrue, les données de la table sont supprimées ; dans le cas contraire, elles ne le sont pas. Pour les tables dans Amazon S3, l’opération ne supprime pas les données des tables. L’opération échoue lorsque la table est stockée dans Amazon S3 etpurge = TRUE,.Pour les tables stockées dans le stockage géré par Amazon Redshift, l’opération supprimera les données des tables, de la même manière que le comportement
DROP TABLEdans Amazon Redshift. L’opération échoue lorsque la table est stockée dans Amazon Redshift etpurge = FALSE. -
purgeRequest=truen’est pas pris en charge.
| Nom de l’opération | StartDeleteTableTransaction |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
DELETE /extensions/v1/catalogs/{catalog}/namespaces/{ns}/tables/{table} |
| Action IAM |
glue:DeleteTable |
| Autorisations Lake Formation | ALL, DROP |
| Événement CloudTrail |
glue:DeleteTable |
| Définition Open API | https://github.com/apache/iceberg/blob/apache-iceberg-1.6.1/open-api/rest-catalog-open-api.yaml#L793 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.
Vous ne pouvez spécifier qu’un espace de noms à un seul niveau dans le paramètre de chemin d’accès REST. Pour plus d’informations, consultez la section Paramètre de chemin d’accès à l’espace de noms.
-
purgeRequest=falsen’est pas pris en charge. -
L’API est asynchrone et renvoie un identifiant de transaction qui peut être suivi via
CheckTransactionStatus.
| Nom de l’opération | CheckTransactionStatus |
| Type |
API d’extensions AWS Glue |
| Chemin REST |
POST/extensions/v1/transactions/status |
| Action IAM |
La même autorisation que l’action qui initie la transaction |
| Autorisations Lake Formation | La même autorisation que l’action qui initie la transaction |
| Définition Open API | https://github.com/awslabs/glue-extensions-for-iceberg/blob/main/glue-extensions-api.yaml#L273 |
Considérations
-
Le paramètre du chemin d’accès au catalogue doit suivre le style décrit dans la section Paramètres du chemin d’accès au préfixe et au catalogue.