将数据引入 Databricks 湖屋

Azure Databricks 提供了多种方法来帮助你将数据引入到由 Delta Lake 支持的 Lakehouse 中。 Databricks 建议使用自动加载程序从云对象存储中进行增量数据引入。 “添加数据”UI 提供了许多选项,可用于快速上传本地文件或连接到外部数据源。

运行第一个 ETL 工作负载

如果尚未在 Azure Databricks 上使用自动加载程序,请从教程开始。 请参阅在 Azure Databricks 上运行第一个 ETL 工作负载

自动加载程序

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

使用 Delta Live Tables 和自动加载程序自动执行 ETL

可以使用自动加载程序和 Delta Live Tables 简化可缩放的增量引入基础结构的部署。 请注意,Delta Live Tables 不使用笔记本中的标准交互式执行,而是强调部署做好生产准备的基础结构。

上传本地数据文件或连接外部数据源

可以安全地上传本地数据文件或从外部源引入数据以创建表。 请参阅使用添加数据 UI 加载数据

使用第三方工具将数据引入 Azure Databricks

Azure Databricks 会验证技术合作伙伴集成,这些集成让你能够将数据引入 Azure Databricks。 利用这些集成,可以以低代码、可缩放的方式从各种不同源将数据引入到 Azure Databricks 中。 请参阅技术合作伙伴

COPY INTO

通过 COPY INTO,SQL 用户能够以幂等和增量方式将数据从云对象存储引入 Delta 表。 它可用于 Databricks SQL、笔记本和 Databricks 作业。

何时使用 COPY INTO 以及何时使用自动加载程序

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

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

查看在数据引入期间捕获的文件元数据

Apache Spark 在数据加载过程中自动捕获有关源文件的数据。 Azure Databricks 允许使用“文件元数据”列访问此数据。

将电子表格导出上传到 Azure Databricks 中

使用“从文件上传创建或修改表”页上传 CSV、TSV 或 JSON 文件。 请参阅使用文件上传创建或修改表

将数据应用程序迁移到 Azure Databricks

将现有数据应用程序迁移到 Azure Databricks,以便在单个平台上处理来自多个源系统的数据。 请参阅将数据应用程序迁移到 Azure Databricks