将增量实时表管道与旧 Hive 元存储配合使用
本文详细介绍了特定于增量实时表管道的配置和注意事项,这些管道配置为将数据发布到旧 Hive 元存储。 Databricks 建议对所有新管道使用 Unity Catalog。 请参阅将 Unity Catalog 与 Delta Live Tables 管道配合使用。
将管道数据集发布到旧 Hive 元存储中
虽然此操作是可选的,但每当你的目的不仅仅是开发和测试新管道时,都应该指定一个目标,以便发布管道所创建的表。 将管道发布到目标后,便可以在 Azure Databricks 环境中的其他位置查询数据集。
通过将数据集发布到 Hive 元存储,可以使管道的输出数据可被发现并可供查询。 若要将数据集发布到元存储,请在创建管道时在“目标”字段中输入架构名称。 还可以将目标数据库添加到现有管道。
默认情况下,在增量实时表中创建的所有表和视图对于管道来说都位于本地。 必须将表发布到目标架构,才能在声明表时所在的管道之外查询或使用 Delta Live Tables 数据集。
若要将表从管道发布到 Unity Catalog,请参阅将 Unity Catalog 与 Delta Live Tables 管道配合使用。
如何将增量实时表发布到旧 Hive 元存储
可以使用“管道设置”和“创建管道”UI 中的“目标架构”字段为 Delta Live Tables 管道中的所有表声明目标架构。
还可以通过设置 target
值在 JSON 配置中指定架构。
必须运行管道更新才能将结果发布到目标架构。
你可以将此功能与多个环境配置结合使用,以根据环境将结果发布到不同的架构。 例如,你可以发布到用于开发的 dev
架构和用于生产数据的 prod
架构。
如何在旧 Hive 元存储中查询流式处理表和具体化视图
更新完成后,可以查看架构和表、查询数据或使用下游应用程序中的数据。
发布后,可以从有权访问目标架构的任何环境查询 Delta Live Tables 表。 这包括 Databricks SQL、笔记本和其他 Delta Live Tables 管道。
重要
创建 target
配置时,只会发布表和关联的元数据。 视图不会发布到元存储。
指定存储位置
可以为一个将内容发布到 Hive 元存储的管道指定存储位置。 指定位置的主要目的是控制管道写入的数据的对象存储位置。
由于 Delta Live Tables 管道的所有表、数据、检查点和元数据完全由 Delta Live Tables 管理,因此与 Delta Live Tables 数据集的大多数交互都是通过注册到 Hive 元存储或 Unity Catalog 的表进行的。
云存储配置
若要访问 Azure 存储,必须使用群集配置中的 spark.conf
设置配置所需的参数(包括访问令牌)。 有关为 Azure Data Lake Storage Gen2 (ADLS Gen2) 存储帐户配置访问权限的示例,请参阅使用管道中的机密安全访问存储凭据。
没有 Unity 目录的工作区的管道源代码笔记本示例
可以在未启用 Unity 目录的情况下将以下笔记本导入 Azure Databricks 工作区,并使用它们部署增量实时表管道。 使用 Hive 元存储选项配置管道时,导入所选语言的笔记本,并在源代码字段中指定路径。 请参阅配置增量实时表管道。