Quando eseguo MSCK REPAIR TABLE, Amazon Athena restituisce un elenco di partizioni, ma non riesce ad aggiungere le partizioni alla tabella nel catalogo dati di AWS Glue.
Breve descrizione
Ecco alcune cause comuni di questo comportamento:
- L'utente o il ruolo di AWS Identity and Access Management (IAM) non dispone di una policy che consenta l'azione glue:BatchCreatePartition.
- Il percorso di Amazon Simple Storage Service (Amazon S3) è in maiuscolo anziché in minuscolo (ad esempio, userId anziché userid).
Risoluzione
Consenti Glue:BatchCreatePartition nella policy IAM
Rivedi le policy IAM associate all'utente o al ruolo che stai utilizzando per eseguire MSCK REPAIR TABLE. Quando utilizzi AWS Glue Data Catalog con Athena, la policy IAM deve consentire l'azione glue:BatchCreatePartition . Se la policy non consente tale azione, Athena non può aggiungere partizioni al metastore. Per un esempio di policy IAM che consente l'azione glue:BatchCreatePartition, consulta la policy gestita di AmazonAthenaFullAccess.
Cambia il percorso di Amazon S3 in lettere minuscole
Il nome del percorso Amazon S3 deve essere scritto in lettere minuscole. Se il percorso è in maiuscolo, MSCK REPAIR TABLE non aggiunge le partizioni all'AWS Glue Data Catalog. Ad esempio, se il percorso Amazon S3 è userId, le seguenti partizioni non vengono aggiunte al catalogo dati di AWS Glue:
- s3://awsdoc-example-bucket/path/userId=1/
- s3://awsdoc-example-bucket/path/userId=2/
- s3://awsdoc-example-bucket/path/userId=3/
Per risolvere questo problema, usa le lettere minuscole anziché le lettere maiuscole:
- s3://awsdoc-example-bucket/path/userid=1/
- s3://awsdoc-example-bucket/path/userid=2/
- s3://awsdoc-example-bucket/path/userid=3/
Informazioni correlate
Partizionamento dei dati in Athena
Azioni, risorse e chiavi di condizione per Amazon Athena
Azioni, risorse e chiavi di condizione per AWS Glue