比较自动加载程序文件检测模式
自动加载程序支持两种检测新文件的模式:目录列表和文件通知。 你可以在流重启时切换文件发现模式,并且仍可获得精确一次的数据处理保证。
目录列表模式
在目录列表模式下,自动加载程序通过列出输入目录来识别新文件。 通过目录列表模式,你无需任何权限配置即可快速启动自动加载程序流,而无需访问云存储上的数据。
在 Databricks Runtime 9.1 及更高版本中,自动加载程序可以自动检测文件是否以词法顺序到达云存储,并显著减少检测新文件所需的 API 调用量。 有关更多详细信息,请参阅什么是自动加载程序目录列表模式?。
文件通知模式
文件通知模式利用了云基础结构帐户中的文件通知和队列服务。 自动加载程序可以自动设置从输入目录中订阅文件事件的通知服务和队列服务。
文件通知模式对于大型输入目录或大量文件具有更高的性能和可扩展性,但需要额外的云权限才能进行设置。 有关详细信息,请参阅什么是自动加载程序文件通知模式?。
各模式支持的云存储
下面列出了这些模式的可用性。
如果从外部位置或 DBFS 装载迁移到 Unity Catalog 卷,自动加载程序将继续提供一次保证。
云存储 | 目录列表 | 文件通知 |
---|---|---|
AWS S3 | 所有版本 | 所有版本 |
ADLS Gen2 | 所有版本 | 所有版本 |
GCS | 所有版本 | Databricks Runtime 9.1 及更高版本 |
Azure Blob 存储 | 所有版本 | 所有版本 |
ADLS Gen1 | 所有版本 | 不支持 |
DBFS | 所有版本 | 仅适用于装入点 |
Unity Catalog 卷 | Databricks Runtime 13.3 LTS 及更高版本 | 不支持 |