跳到主要内容
跳到主要内容

fileCluster 表函数

启用在集群内的多个节点同时处理与指定路径匹配的文件。发起者建立与工作节点的连接,扩展文件路径中的通配符,并将文件读取任务委派给工作节点。每个工作节点向发起者查询下一个待处理的文件,重复此过程直到所有任务完成(所有文件被读取)。

备注

仅当与最初指定路径匹配的文件集合在所有节点上相同,并且它们的内容在不同节点之间一致时,此函数才能_正确_操作。
如果这些文件在节点之间不同,则返回值不能预先确定,取决于工作节点从发起者请求任务的顺序。

语法

参数

参数描述
cluster_name用于构建与远程和本地服务器的地址和连接参数集合的集群名称。
pathuser_files_path 到文件的相对路径。文件路径也支持 通配符
format文件的 格式。类型: 字符串
structure表结构,格式为 'UserID UInt64, Name String'。确定列名和类型。类型: 字符串
compression_method压缩方法。支持的压缩类型有 gzbrxzzstlz4bz2

返回值

具有指定格式和结构以及来自与指定路径匹配的文件数据的表。

示例

给定一个名为 my_cluster 的集群,以及以下 user_files_path 设置的值:

另外,假设每个集群节点的 user_files_path 中有文件 test1.csvtest2.csv,并且它们在不同节点之间的内容是相同的:

例如,可以通过在每个集群节点上执行这两个查询来创建这些文件:

现在,通过 fileCluster 表函数读取 test1.csvtest2.csv 的数据内容:

路径中的通配符

File 表函数支持的所有模式也都被 FileCluster 支持。