Especificación de la ubicación de una tabla en Amazon S3
Al ejecutar una consulta CREATE TABLE
en Athena, Athena registra la tabla en el catálogo de datos de AWS Glue, que es donde Athena almacena los metadatos.
Para especificar la ruta a los datos en Amazon S3, utilice la propiedad LOCATION
en la instrucción CREATE TABLE
, como se muestra en el ejemplo siguiente:
CREATE EXTERNAL TABLE `test_table`(
...
)
ROW FORMAT ...
STORED AS INPUTFORMAT ...
OUTPUTFORMAT ...
LOCATION s3://amzn-s3-demo-bucket/folder
/
-
Para obtener información sobre la nomenclatura de buckets, consulte Restricciones y limitaciones de los buckets en la Guía del usuario de Amazon Simple Storage Service.
-
Para obtener información sobre el uso de carpetas en Simple Storage Service (Amazon S3), consulte Uso de carpetas en la Guía del usuario de Amazon Simple Storage Service.
La LOCATION
en Amazon S3 especifica todos los archivos que representan la tabla.
importante
Athena lee todos los datos almacenados en la carpeta de Amazon S3 que especifique. Si tiene datos que no desea que Athena lea, no almacene los datos en la misma carpeta de Amazon S3 que los datos que desea que Athena lea.
Cuando especifique LOCATION
en la instrucción CREATE TABLE
, utilice las siguientes directrices:
-
Use una barra diagonal final.
-
Puede utilizar una ruta a una carpeta de Amazon S3 o a un alias de punto de acceso de Amazon S3. Para obtener información acerca de los alias de punto de acceso de Amazon S3, consulte Uso de un alias de estilo bucket para el punto de acceso en la Guía del usuario de Amazon S3.
Uso:
s3://amzn-s3-demo-bucket/folder
/
s3://amzn-s3-demo-bucket-metadata
-s3alias/folder
/
No utilice ninguno de los siguientes elementos para especificar la LOCATION
de los datos.
-
No utilice nombres de archivos, guiones bajos, comodines o patrones de glob para especificar ubicaciones de archivos.
-
No agregue toda la notación HTTP como, por ejemplo,
s3.amazon.com
, a la ruta del bucket de Amazon S3. -
No utilice carpetas vacías como
//
en la ruta, de la siguiente manera:S3://amzn-s3-demo-bucket/
.folder
//folder
/ -
No utilice rutas como las que se indican a continuación:
s3://amzn-s3-demo-bucket s3://amzn-s3-demo-bucket/* s3://amzn-s3-demo-bucket/mySpecialFile.dat s3://amzn-s3-demo-bucket/prefix/filename.csv s3://amzn-s3-demo-bucket.s3.amazon.com S3://amzn-s3-demo-bucket/prefix//prefix/ arn:aws:s3:::amzn-s3-demo-bucket/prefix s3://arn:aws:s3:
<region>
:<account_id>
:accesspoint/<accesspointname>
https://<accesspointname>
-<number>
.s3-accesspoint.<region>
.amazonaws.com