从云对象存储中引入数据
本文列出了从云对象存储中配置增量引入的方法。
“添加数据”UI
要了解如何使用添加数据 UI 从云对象存储的数据中创建托管表,请参阅使用 Unity Catalog 外部位置加载数据。
笔记本或 SQL 编辑器
本部分介绍使用笔记本或 Databricks SQL 编辑器从云对象存储中配置增量引入的选项。
自动加载程序
自动加载程序会在新数据文件到达云存储空间时以增量方式高效地对其进行处理,而无需进行任何其他设置。 自动加载程序提供了名为 cloudFiles
的结构化流式处理源。 给定云文件存储上的输入目录路径后,cloudFiles
源将在新文件到达时自动处理这些文件,你也可以选择处理该目录中的现有文件。
COPY INTO
通过 COPY INTO,SQL 用户能够以幂等和增量方式将数据从云对象存储引入 Delta 表。 它可以在 Databricks SQL、笔记本和 Databricks 作业中使用 COPY INTO
。
何时使用 COPY INTO 以及何时使用自动加载程序
在 Auto Loader 和 COPY INTO
之间进行选择时,需要考虑以下几点:
- 如果随着时间的推移你要引入数千个文件,可以使用
COPY INTO
。 如果随着时间的推移,文件的数量约为数百万或更多,请使用自动加载程序。 与COPY INTO
相比,自动加载程序发现文件所需的总操作数更少,并且可以将处理拆分为多个批,这意味着自动加载程序在大规模处理时成本更低、效率更高。 - 如果你的数据架构将频繁演化,自动加载程序会围绕架构推理和演进提供更好的基元数据类型。 有关详细信息,请参阅在自动加载程序中配置架构推理和演变。
- 使用
COPY INTO
加载重新上传的文件的子集可以更容易地进行管理。 使用自动加载程序很难重新处理选定的一部分文件。 但是,你可以使用COPY INTO
在自动加载程序流同时运行时重新加载文件子集。
使用 Delta Live Tables 和自动加载程序自动执行 ETL
可以使用自动加载程序和 Delta Live Tables 简化可缩放的增量引入基础结构的部署。 增量实时表不使用笔记本中的标准交互式执行,而是强调部署做好生产准备的基础结构。
第三方引入工具
Databricks 验证技术合作伙伴集成,使你能够从各种源(包括云对象存储)引入。 利用这些集成,可以以低代码、可缩放的方式从各种不同源将数据引入到 Azure Databricks 中。 请参阅技术合作伙伴。