Comando CREATE EXTERNAL DATASOURCE

Puede utilizar el comando CREATE EXTERNAL DATASOURCE para crear fuentes de datos externas.

Las fuentes de datos externas se utilizan para crear conexiones desde Netezza Performance Server a ubicaciones de almacenamiento remotas, como AWS S3, Azure Blob/ADLSv2, IBM Cloud Object Storage, Minio y otras fuentes compatibles. Son un paso intermedio para la creación de tablas externas, y se utilizan para almacenar los detalles de la conexión, incluida la ubicación remota y las credenciales. Consulte el comando CREAR TABLA EXTERNA para obtener más información.

Las fuentes de datos externas se utilizan para establecer la conexión entre las cuentas de almacenamiento y admiten el primer uso de la virtualización de datos y la carga de datos.

Para crear una fuente de datos externa, debe configurar ENABLE_EXTERNAL_DATASOURCE en 1.
SET ENABLE_EXTERNAL_DATASOURCE = 1;

Sintaxis

Para crear una fuente de datos, ejecute
CREATE EXTERNAL DATASOURCE external data source name
ON source
USING (
   external data source options
);
Seleccione un source de entre los siguientes:
  • AWSS3 : admite todo el almacenamiento S3-compatible, incluidos IBM Cloud Object Storage y Minio.
  • AZUREBLOB - soporta Blob y ADLSv2.
Nota: Para utilizar AZUREBLOB con tablas externas de parquet, habilítelo ejecutando el siguiente comando.
SET ENABLE_AZURE_DATALAKE_SUPPORT TRUE;
Para crear una fuente de datos externa, ejecute el siguiente comando:
CREATE EXTERNAL DATASOURCE DATASOURCE
ON AWSS3 
USING (
   ACCESSKEYID ACCESSKEYID 
   SECRETACCESSKEY SECRETACCESSKEY 
   BUCKET BUCKET 
   REGION REGION
);
Sugerencia:
  1. Después de crear una definición de fuente de datos externa, puede utilizar las sentencias ALTER para modificar las columnas de la fuente de datos externa o SHOW para ver los valores de las columnas de la fuente de datos externa.
  2. Puede utilizar la opción verbose con el comando SHOW. Al ejecutar el comando, los valores de las columnas se combinan para formar la cadena de conexión a la nube para esa fuente de datos externa.
    SHOW EXTERNAL DATASOURCE NYCTAXIS3 VERBOSE;
    CONN      | REMOTESOURCE 
    ------------------------
    ACCESSKEYID=ACCESS KEY ID:BUCKETURL=URL:DEFAULTREGION=REGION:SECRETACCESSKEY=SECRET ACCESS KEY | S3
    (1 row)

Opciones de fuentes de datos externas

Para fuentes S3-compatibleAWS S3 )
Opción Formatos válidos Tipo de datos Distribución Descripción
region Texto Serie Obligatorio Ubicación del cubo
bucket Texto Serie Obligatorio Nombre de grupo
accesskeyid Texto Serie Opcional Clave COS de IBM
secretaccesskey Texto Serie Opcional Clave de acceso secreta de IBM COS
multipartsizemb Texto, Fijo Serie Opcional Tamaño multiparte; 8 MB - 5 GB
endpoint Texto Serie Opcional Conectarse a un punto final S3-compatible
Nota: Si se proporciona alguno de los siguientes parámetros, asegúrese de que también se proporciona el otro.
  • accesskeyid
  • secretaccesskey
Endpoint puede utilizarse para conectarse a S3-compatible ubicación de almacenamiento remoto distinta de AWS S3.
Para Azure Blob/ADLSv2 (AZUREBLOB)
Opción Formatos válidos Tipo de datos Distribución Descripción
account Texto Serie Obligatorio Nombre de cuenta de almacenamiento
container Texto Serie Obligatorio Nombre del contenedor de almacenamiento
blobtype Texto Serie Opcional Uno de BLOQUE, PÁGINA, obligatorio para fines distintos de las tablas externas de parqué
key Texto Serie Opcional Clave de acceso a la cuenta
sastoken Texto Serie Opcional Token Azure SAS
tenantid Texto Serie Opcional ID de arrendatario de Azure
clientid Texto Serie Opcional ID de cliente Azure
clientsecret Texto Serie Opcional Secreto de cliente Azure
Nota: Los siguientes métodos de autenticación son compatibles con las tablas externas de parquet:
  • Clave de acceso a la cuenta de almacenamiento (clave ).
  • Token SAS (sastoken ).
  • Azure Entra ID OAuth (tenantid, clientes, clientsecret ).

También se admite el acceso anónimo.

Ejemplos

Consulte Ejemplos de fuentes de datos externas.