deltaLake 表函数
为存放在 Amazon S3、Azure Blob Storage 或本地挂载文件系统中的 Delta Lake 表提供类表访问接口,支持读写操作(自 v25.10 起)。
语法
deltaLake 是 deltaLakeS3 的别名,为了兼容性而保留。
参数
此表函数的参数分别与表函数 s3、azureBlobStorage、HDFS 和 file 的参数相同。
format 表示 Delta Lake 表中数据文件的格式。
返回值
返回一个具有指定结构的表,用于从指定的 Delta Lake 表中读取或写入数据。
示例
读取数据
假设有一张存储在 S3 中的表,位于 https://clickhouse-public-datasets.s3.amazonaws.com/delta_lake/hits/。
要在 ClickHouse 中从该表读取数据,请运行:
插入数据
考虑一个存储在 S3 中、路径为 s3://ch-docs-s3-bucket/people_10k/ 的表。
要向该表插入数据,首先启用实验性功能:
然后输入:
您可以通过再次查询该表来确认插入是否成功:
虚拟列
_path— 文件路径。类型:LowCardinality(String)。_file— 文件名。类型:LowCardinality(String)。_size— 文件大小(以字节为单位)。类型:Nullable(UInt64)。如果文件大小未知,则该值为NULL。_time— 文件的最后修改时间。类型:Nullable(DateTime)。如果时间未知,则该值为NULL。_etag— 文件的 ETag。类型:LowCardinality(String)。如果 ETag 未知,则该值为NULL。