Esta es una extensión de la función de tabla hudi.
Permite procesar archivos de tablas Apache Hudi en Amazon S3 en paralelo con muchos nodos de un clúster especificado. En el iniciador, crea una conexión con todos los nodos del clúster y asigna dinámicamente cada archivo. En el nodo worker, consulta al iniciador cuál es la siguiente tarea que debe procesar y la procesa. Esto se repite hasta que se completan todas las tareas.
Sintaxis
hudiCluster(cluster_name, url [,aws_access_key_id, aws_secret_access_key] [,format] [,structure] [,compression] [,extra_credentials])Argumentos
| Argument | Descripción |
|---|---|
cluster_name |
Nombre de un clúster que se utiliza para construir un conjunto de direcciones y parámetros de conexión para servidores remotos y locales. |
url |
URL del bucket con la ruta a una tabla Hudi existente en S3. |
aws_access_key_id, aws_secret_access_key |
Credenciales de largo plazo para el usuario de la cuenta de AWS. Puede utilizarlas para autenticar sus solicitudes. Estos parámetros son opcionales. Si no se especifican credenciales, se usarán las de la configuración de ClickHouse. Para obtener más información, consulte Using S3 for Data Storage. |
format |
El formato del archivo. |
structure |
Estructura de la tabla. Formato: 'column1_name column1_type, column2_name column2_type, ...'. |
compression |
El parámetro es opcional. Valores admitidos: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. De forma predeterminada, la compresión se detecta automáticamente a partir de la extensión del archivo. |
extra_credentials |
El parámetro es opcional. Se utiliza para pasar un role_arn para el acceso basado en roles en ClickHouse Cloud. Consulte Secure S3 para ver los pasos de configuración. |
Valor devuelto
Una tabla con la estructura especificada para leer datos del clúster en la tabla Hudi especificada en S3.
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— Hora de la última modificación del archivo. Tipo:Nullable(DateTime). Si se desconoce la hora, el valor esNULL._etag— El etag del archivo. Tipo:LowCardinality(String). Si se desconoce el etag, el valor esNULL.