Sintaxis
- Cadena de conexión
- URL de la cuenta de almacenamiento
- Colección con nombre
Las credenciales están integradas en la cadena de conexión, por lo que no se requiere
account_name/account_key por separado:Argumentos
| Argumento | Descripción |
|---|---|
connection_string | Una cadena de conexión que incluye credenciales integradas (nombre de la cuenta + clave de la cuenta o SAS token). Al usar esta forma, account_name y account_key no deben pasarse por separado. Consulta Configurar una cadena de conexión. |
storage_account_url | La URL del endpoint de la cuenta de almacenamiento, por ejemplo https://myaccount.blob.core.windows.net/. Al usar esta forma, debes pasar también account_name y account_key. |
container_name | Nombre del contenedor. |
blobpath | Ruta del archivo. Admite los siguientes comodines en modo de solo lectura: *, **, ?, {abc,def} y {N..M}, donde N y M son números, y 'abc' y 'def' son cadenas. |
account_name | Nombre de la cuenta de almacenamiento. Obligatorio al usar storage_account_url sin SAS; no debe pasarse al usar connection_string. |
account_key | Clave de la cuenta de almacenamiento. Obligatoria al usar storage_account_url sin SAS; no debe pasarse al usar connection_string. |
format | El formato del archivo. |
compression | Valores admitidos: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. De forma predeterminada, detectará automáticamente la compresión por la extensión del archivo (igual que si se establece auto). |
structure | Estructura de la tabla. Formato: 'column1_name column1_type, column2_name column2_type, ...'. |
partition_strategy | Opcional. Valores admitidos: WILDCARD o HIVE. WILDCARD requiere {_partition_id} en la ruta, que se reemplaza con la clave de partición. HIVE no permite comodines, asume que la ruta es la raíz de la tabla y genera directorios particionados con estilo Hive, con Snowflake IDs como nombres de archivo y el formato de archivo como extensión. El valor predeterminado es WILDCARD. |
partition_columns_in_data_file | Opcional. Solo se usa con la estrategia de partición HIVE. Indica a ClickHouse si debe esperar que las columnas de partición estén escritas en el archivo de datos. El valor predeterminado es false. |
extra_credentials | Usa client_id y tenant_id para la autenticación. Si se proporcionan extra_credentials, tienen prioridad sobre account_name y account_key. |
Colecciones con nombre
| Key | Required | Description |
|---|---|---|
container | Yes | Nombre del contenedor. Corresponde al argumento posicional container_name. |
blob_path | Yes | Ruta del archivo (con comodines opcionales). Corresponde al argumento posicional blobpath. |
connection_string | No* | Cadena de conexión con credenciales incorporadas. *Debe proporcionarse connection_string o storage_account_url. |
storage_account_url | No* | URL del endpoint de la cuenta de almacenamiento. *Debe proporcionarse connection_string o storage_account_url. |
account_name | No | Obligatorio cuando se usa storage_account_url |
account_key | No | Obligatorio cuando se usa storage_account_url |
format | No | Formato de archivo. |
compression | No | Tipo de compresión. |
structure | No | Estructura de la tabla. |
client_id | No | ID de cliente para la autenticación. |
tenant_id | No | ID del tenant para la autenticación. |
Los nombres de las claves de las colecciones con nombre son distintos de los nombres de los argumentos posicionales de la función:
container (no container_name) y blob_path (no blobpath).Valor devuelto
Ejemplos
Lectura con el formato storage_account_url
Lectura con la forma connection_string
Escritura por particiones
Columnas virtuales
_path— Ruta del archivo. Tipo:LowCardinality(String)._file— Nombre del archivo. Tipo:LowCardinality(String)._size— Tamaño del archivo en bytes. Tipo:Nullable(UInt64). Si se desconoce el tamaño del archivo, el valor esNULL._time— Fecha y hora de la última modificación del archivo. Tipo:Nullable(DateTime). Si se desconoce la hora, el valor esNULL.
Escritura particionada
Estrategia de partición
INSERT.
WILDCARD (predeterminado): reemplaza el comodín {_partition_id} en la ruta del archivo por la clave de partición correspondiente.
HIVE implementa el particionamiento de estilo Hive para lecturas y escrituras. Genera archivos con el siguiente formato: <prefix>/<key1=val1/key2=val2...>/<snowflakeid>.<toLower(file_format)>.
Ejemplo de estrategia de partición HIVE
ajuste use_hive_partitioning
partition_strategy.
Cuando use_hive_partitioning se establece en 1, ClickHouse detecta el particionamiento de estilo Hive en la ruta (/name=value/) y permite usar las columnas de partición como columnas virtuales en la consulta. Estas columnas virtuales tendrán los mismos nombres que en la ruta particionada.
Ejemplo
Use una columna virtual creada con particionamiento de estilo Hive
azureBlobStorage admite firmas de acceso compartido (SAS).
Un token SAS de blob contiene toda la información necesaria para autenticar la solicitud, incluido el blob de destino, los permisos y el período de validez. Para construir una URL de blob, agregue el token SAS al endpoint del servicio Blob. Por ejemplo, si el endpoint es https://clickhousedocstest.blob.core.windows.net/, la solicitud pasa a ser: