δ生活表的配置管道设置

本文详细介绍了配置管道设置三角洲生活表。三角洲生活表提供了一个用户界面配置和编辑管道设置。UI还提供了一个选项来显示和编辑设置JSON。

请注意

您可以配置大多数设置UI或JSON规范。一些高级选项只使用JSON配置。

砖建议熟悉各种三角洲生活表设置使用UI。如果有必要,你可以在工作区中直接编辑JSON配置。JSON配置文件部署管道时也有用新环境或当使用CLIREST API

δ住一个完整的引用表的JSON配置设置,看看三角洲生活表管道配置

选择一个产品版本

选择三角洲生活表产品版最适合您的管道需求的特性。以下产品版本是可用的:

  • 核心流摄取工作负载运行。选择核心版如果你的管道不需要高级特性等变化数据捕获(CDC)或δ生活表期望。

  • 流摄取和疾病预防控制中心工作负载运行。的产品版本支持所有的核心特性,加上支持工作负载需要更新表基于源数据的变化。

  • 先进的流摄取工作负载运行,疾控中心的工作负载,负载需要的期望。的先进的产品版本支持的特性核心版本,还支持执行数据质量约束与达美住表期望。

您可以选择当您创建或编辑一个管道产品版本。你可以选择一个不同的版本为每个管道。看到三角洲生活表产品页面

请注意

如果你的管道包括选定的产品版本不支持的特性,例如,期望,您将收到一条错误消息和错误的原因。您可以编辑管道,选择适当的版本。

选择一个管道模式

你可以选择不断更新你的管道或手动触发基于管道模式。看到连续与管道执行触发

选择一个集群政策

用户必须有权限配置和更新部署计算管道三角洲住表。工作区管理员可以配置集群政策来为用户提供计算资源的访问三角洲生活表。看到δ定义限制住表管道集群

请注意

集群政策是可选的。检查与您的工作区管理员如果你缺乏计算表三角洲生活所需的特权。

配置源代码库

您可以使用文件选择器在三角洲地区的生活表界面配置源代码定义你的管道。管道源代码中定义数据砖笔记本或SQL或Python脚本存储在工作区文件。当您创建或编辑你的管道,您可以添加一个或多个笔记本或工作区文件或笔记本和工作区文件。

因为δ生活表自动分析数据集依赖建设管道的加工图,您可以添加源代码库以任意顺序。

您还可以修改JSON文件,包括三角洲生活表源代码中定义的SQL和Python脚本存储在工作区文件。下面的例子包括笔记本和从砖回购的工作区文件:

{“名称”:“例如管道3”,“存储”:“dbfs: / pipeline-examples /存储位置/青年们”,“库”:({“笔记本”:{“路径”:“/ example-notebook_1”}},{“笔记本”:{“路径”:“/ example-notebook_2”}},{“文件”:{“路径”:“回购/ <用户名> @www.neidfyre.com/Apply_Changes_Into/apply_changes_into.sql”}},{“文件”:{“路径”:“回购/ <用户名> @www.neidfyre.com/Apply_Changes_Into/apply_changes_into.py”}}]}

指定一个存储位置

你可以选择指定一个存储位置的管道蜂巢metastore出版。指定位置的主要动机是控制的对象存储位置数据写的您的管道。

因为所有表、数据、检查点和元数据的生活表管道完全由δ生活表,大多数交互与达美住表数据集是通过注册表蜂巢metastore或统一目录。

为管道输出表指定一个目标模式

虽然可选的,您应该指定一个目标发布表由管道随时你超越新管道的开发和测试。发布一条输油管道到目标使数据集用于查询在您的砖环境。看到从三角洲住表发布数据蜂巢metastore管道使用统一的目录与三角洲住表管道

配置您的计算设置

每个三角洲住表管道有两个相关的集群。

  1. 默认的集群是用于管道更新过程。

  2. 维护集群运行日常维护任务。

计算设置在三角洲地区的生活表界面主要目标默认集群用于管道更新。如果你指定一个存储位置需要数据访问凭证,您必须确保维护集群也有这些权限配置。

三角洲生活表为集群提供类似的选项设置为其他计算砖。像其他管道的设置,您可以修改JSON配置为集群指定选项没有出现在UI。看到集群

请注意

  • 因为δ生活表运行时管理管道集群的生命周期和砖运行时的运行一个定制版本,你不能手动设置一些集群设置在管道配置中,如火花版本或集群名称。看到集群没有用户可设置的属性

  • 您可以配置三角洲生活表管道利用光子。看到光子运行时

使用自动定量来提高效率和减少资源的使用

使用增强自动定量优化集群利用率的管道。增强自动定量添加额外的资源只有在系统确定这些资源会增加管道处理速度。资源释放不再需要时,就关闭所有管道和集群更新完成。

使用以下指南在配置增强自动定量生产管道:

  • 离开最小值工人在默认设置。

  • 设置马克斯工人设置一个值基于预算和管道优先。

延迟关闭计算

因为δ生活表集群自动关闭不使用的时候,引用一个集群政策,集autotermination_minutes在您的集群配置会导致错误。关闭控制集群行为,您可以使用开发或生产方式或使用pipelines.clusterShutdown.delay设置在管道配置。下面的示例设置pipelines.clusterShutdown.delay价值60秒:

{“配置”:{“pipelines.clusterShutdown.delay”:“六十年代”}}

生产模式被启用,默认值pipelines.clusterShutdown.delay0。当发展模式被启用,默认值是2小时

创建一个单独的节点集群

如果你设置num_workers0在集群环境中,作为创建集群单节点集群。配置自动定量集群和设置min_workers为0,max_workers0还创建了单个节点集群。

如果你配置一个自动定量集群和设置min_workers为0,那么集群不是作为单个节点创建集群。集群有至少1活跃职工时刻直到终止。

一个示例集群配置创建一个节点集群在三角洲住表:

{“集群”:({“标签”:“默认”,“num_workers”:0}]}

集群配置标签

您可以使用集群的标签为您的管道集群监控使用。添加集群标签在三角洲地区的生活表UI当您创建或编辑一个管道,或者通过编辑的JSON设置管道集群。

云存储配置

您使用AWS实例配置文件来配置访问在AWS S3存储。添加一个实例配置文件在三角洲地区的生活表界面,点击先进的当您创建或编辑一个管道,并选择概要文件的一个实例实例配置文件下拉菜单。

您还可以配置一个AWS实例配置文件通过编辑JSON集群当你设置你的管道创建编辑管道的现场表API或δ生活表界面:

  1. 管道的细节为你的管道页,单击设置按钮。的管道的设置页面出现。

  2. 单击JSON按钮。

  3. 输入的实例配置文件配置aws_attributes.instance_profile_arn在集群配置:

{“集群”:({“标签”:“默认”,“aws_attributes”:{“instance_profile_arn”:“攻击:aws:…”}},{“标签”:“维护”,“aws_attributes”:{“instance_profile_arn”:“攻击:aws:…”}}]}

在JSON设置配置实例配置文件时,您必须指定默认的实例配置文件配置和维护集群。

您还可以配置实例配置文件当你创建集群政策三角洲住表管道。例如,看到知识库

参数化管道

Python和SQL代码定义了你的数据集可以参数化管道的设置。参数化使以下用例:

  • 从你的代码分离长路径和其他变量。

  • 减少在开发或登台环境中处理的数据量,加快测试。

  • 重用相同的转换逻辑来处理来自多个数据源。

下面的例子使用了startDate可以配置值限制开发管道输入数据的一个子集:

创建刷新生活customer_events作为选择*sourceTable在哪里日期>“$ {mypipeline.startDate}”;
@dltdefcustomer_events():start_date=火花相依得到(“mypipeline.startDate”)返回(“sourceTable”)在哪里(上校(“日期”)>start_date)
{“名称”:“数据摄取- DEV”,“配置”:{“mypipeline.startDate”:“2021-01-02”}}
{“名称”:“数据摄取刺激”,“配置”:{“mypipeline.startDate”:“2010-01-02”}}

管道触发间隔

您可以使用pipelines.trigger.interval控制流的触发间隔更新一个表或一个完整的管道。因为引发管道过程只有一次,每个表pipelines.trigger.interval只有使用连续的管道。

砖建议设置pipelines.trigger.interval在单个表上,因为不同的默认值为流和批处理查询。将值设置在管道只有当你处理需要控制整个管道更新图。

你设置pipelines.trigger.interval在桌子上使用spark_conf在Python中,或在SQL:

@dlt(spark_conf={“pipelines.trigger.interval”:“10秒”})def<函数- - - - - -的名字>():返回(<查询>)
管道触发时间间隔=“10秒”;创建刷新生活TABLE_NAME作为选择

设置pipelines.trigger.interval在一个管道,将其添加到配置对象在管道设置:

{“配置”:{“pipelines.trigger.interval”:“10秒”}}

为管道添加邮件通知事件

您可以配置一个或多个电子邮件地址来接收通知以下发生时:

  • 管道更新成功完成。

  • 每次一个管道更新失败的事情错误。

  • 一个管道更新失败non-retryable(致命的)错误。

  • 一个数据流失败。