Ejemplos de fuentes de datos externas
Para crear una tabla externa de parquet, primero debe crear una fuente de datos externa mediante el comando CREATE EXTERNAL DATASOURCE. También puede utilizar los comandos ALTER, SHOW, DROP, y otros para trabajar con fuentes de datos externas.
Nota: Las tablas externas de Parquet son de sólo lectura. Los comandos INSERT, DROP, TRUNCATE, entre otros, no funcionan con fuentes de datos externas.
- Para crear una fuente de datos externa en AWS S3, ejecute lo siguiente.
CREATE EXTERNAL DATASOURCE my_datasource ON AWSS3 USING ( ACCESSKEYID "AKIAIOSFODNN7EXAMPLE" SECRETACCESSKEY "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" BUCKET "example_aws_bucket" REGION "us-east-1" );
Nota: AWS S3 sólo admite el siguiente método de autenticación:- id de clave de acceso con clave de acceso secreta.
- Para crear una fuente de datos en otro proveedor S3-compatible, debe añadirse la opción ENDPOINT.
CREATE EXTERNAL DATASOURCE my_datasource ON AWSS3 USING ( ACCESSKEYID "347aa3a4b34344f8bc7c7cccdf85ecaabfe" SECRETACCESSKEY "gvurfb82712ad14W7a7915h763a6examplekey" BUCKET "example_ibm_cloud_bucket" REGION "us-south" ENDPOINT "s3.us-south.cloud-object-storage.appdomain.cloud" );
- Del mismo modo, puede crear una fuente de datos externa en Azure. Azure admite los siguientes métodos de autenticación:
- Autenticación de la clave de la cuenta:
CREATE EXTERNAL DATASOURCE my_datasource ON AZUREBLOB USING ( CONTAINER "example_container" ACCOUNT "example_account" ACCOUNTKEY "abcdefghijklmnopqrstuvwxyz0123456789/+ABCDEabcdefghijklmnopqrstuvwxyz0123456789/+ABCDE==" );
Nota: La fuente se llama AZUREBLOB, pero admite tanto BLOB como ADLSv2. - Alternativamente, puede crear una fuente de datos sin credenciales, si el bucket o el contenedor permiten conexiones anónimas.
- Para S3:
CREATE EXTERNAL DATASOURCE my_datasource ON AWSS3 USING ( BUCKET "example_aws_bucket" REGION "us-east-1" );
- Para alterar la fuente de datos externa para modificar columnas, ejecute lo siguiente.
ALTER EXTERNAL DATASOURCE my_datasource ON AWSS3 USING ( BUCKET "other_bucket" );
- Para mostrar los valores de columna de la fuente de datos externa, ejecute lo siguiente.
SHOW EXTERNAL DATASOURCE my_datasource;
- Para mostrar la fuente de datos externa en un formato de cadena de conexión a la nube, ejecute lo siguiente.
SHOW EXTERNAL DATASOURCE my_datasource VERBOSE;
- Para soltar una fuente de datos externa, ejecute lo siguiente.
DROP EXTERNAL DATASOURCE my_datasource;
Nota: Para eliminar un origen de datos, primero debe eliminar todas las tablas externas que utilizan este origen de datos.