从云对象存储中引入数据

本文列出了从云对象存储中配置增量引入的方法。

“添加数据”UI

若要了解如何使用添加数据 UI 从云对象存储中的数据创建托管表,请参阅 使用 Unity 目录外部位置加载数据

笔记本或 SQL 编辑器

本部分介绍使用笔记本或 Databricks SQL 编辑器从云对象存储中配置增量引入的选项。

自动加载程序

自动加载程序 在到达云存储时以增量方式高效地处理新数据文件,而无需进行其他设置。 自动加载程序提供了名为 cloudFiles 的结构化流式处理源。 给定云文件存储上的输入目录路径后,cloudFiles 源将在新文件到达时自动处理这些文件,你也可以选择处理该目录中的现有文件。

COPY INTO

使用 COPY INTO时,SQL 用户可以以幂等和增量方式将数据从云对象存储引入 Delta 表。 可以在 Databricks SQL、笔记本和 Lakeflow 作业中使用 COPY INTO

何时使用 COPY INTO 和何时使用自动加载

在 Auto Loader 和 COPY INTO 之间进行选择时,需要考虑以下几点:

  • 如果随着时间的推移你要引入数千个文件,可以使用 COPY INTO。 如果随着时间的推移,文件的数量约为数百万或更多,请使用自动加载程序。 与 COPY INTO 相比,自动加载程序发现文件所需的总操作数更少,并且可以将处理拆分为多个批,这意味着自动加载程序在大规模处理时成本更低、效率更高。
  • 如果你的数据架构将频繁演化,自动加载程序会围绕架构推理和演进提供更好的基元数据类型。 请参阅自动加载器中的配置架构推理和演变以获取更多详细信息。
  • 使用 COPY INTO 加载重新上传的文件的子集可以更容易地进行管理。 使用自动加载程序很难重新处理选定的一部分文件。 但是,你可以使用 COPY INTO 在自动加载程序流同时运行时重新加载文件子集。

有关自动加载程序和 COPY INTO 的简要概述和演示,请观看以下 YouTube 视频(2 分钟)。

使用 Lakeflow Spark 声明式管道和自动加载器实现 ETL 自动化

可以使用自动加载器和 Lakeflow Spark 声明性管道简化可缩放增量引入基础结构的部署。 Lakeflow Spark 声明性管道不使用笔记本中找到的标准交互式执行,而是强调部署可用于生产的基础设施。

第三方引入工具

Databricks 验证技术合作伙伴集成,使你能够从各种源(包括云对象存储)引入。 利用这些集成,可以以低代码、可缩放的方式从各种不同源将数据引入到 Azure Databricks 中。 请参阅 技术合作伙伴什么是 Databricks Partner Connect?中包含一些技术合作伙伴,并提供了一个 UI,可简化将第三方工具连接到湖屋数据的过程。