cloud_files_state
表值函数
适用于: Databricks SQL Databricks Runtime 11.3 LTS 及更高版本
返回自动加载程序或 read_files
流的文件级状态。
语法
cloud_files_state( { TABLE ( table_name ) | checkpoint } )
参数
- table_name:由
read_files
写入的流式处理表的标识符。 名称不得包含时态规范。 在 Databricks Runtime 13.3 LTS 及更高版本中可用。 checkpoint
:STRING
文本。 使用自动加载程序源的流的检查点目录。 请参阅什么是自动加载程序?。
返回
返回具有以下架构的表:
path STRING NOT NULL PRIMARY KEY
文件的路径。
size BIGINT NOT NULL
文件的大小(以字节为单位)。
create_time TIMESTAMP NOT NULL
创建文件的时间。
discovery_time TIMESTAMP NOT NULL
重要
此功能以个人预览版提供。 若要试用,请与 Azure Databricks 联系人取得联系。
发现文件的时间。
commit_time TIMESTAMP
重要
此功能以个人预览版提供。 若要试用,请与 Azure Databricks 联系人取得联系。
文件在处理后提交到检查点的时间。 如果文件尚未处理,则为
NULL
。 文件可能已经过处理,但稍后可能会被任意标记为已提交。 将文件标记为已提交意味着自动加载程序不需要再次处理该文件。archive_time TIMESTAMP
重要
此功能以个人预览版提供。 若要试用,请与 Azure Databricks 联系人取得联系。
将文件存档的时间。 如果文件尚未存档,则为
NULL
。source_id STRING
流式处理查询中自动加载程序源的 ID。 对于从单个云对象存储位置引入的流,此值为
'0'
。
权限
你需要具有:
- 对流式处理表的
OWNER
特权(如果使用流式处理表标识符)。 - 对检查点位置的
READ FILES
特权(如果提供的检查点在外部位置下)。
示例
-- Simple example from checkpoint
> SELECT path FROM CLOUD_FILES_STATE('/some/checkpoint');
/some/input/path
/other/input/path
-- Simple example from source subdir
> SELECT path FROM CLOUD_FILES_STATE('/some/checkpoint/sources/0');
/some/input/path
/other/input/path
-- Simple example from streaming table
> SELECT path FROM CLOUD_FILES_STATE(TABLE(my_streaming_table));
/some/input/path
/other/input/path