δ生活是什么表?

三角洲生活表是一种声明性框架为构建可靠、可维护、可测试的数据处理管道。您定义的转换数据和δ住表上执行管理任务编排、集群管理、监控、数据质量和错误处理。

而不是定义你的数据管道使用Apache引发一系列单独的任务,您定义流表和物化视图,系统应该创建和保持最新。三角洲生活表管理数据转换基于查询你如何定义每个处理步骤。您还可以执行数据质量与达美住表预期,它允许您定义预期的数据质量和指定如何处理失败的记录这些期望。

δ住表数据集是什么?

三角洲住表数据流表、物化视图和视图维护声明查询的结果。下表描述了每个数据集处理:

数据集类型

通过定义查询记录是如何处理的?

流表

每个记录是处理一次。这假定一个扩展源。

物化视图

记录处理要求返回当前数据状态的准确的结果。物化视图应该用于数据源的更新,删除,或聚合,变化数据捕获处理(CDC)。

的观点

记录每次处理视图查询。使用视图的中间转换和数据质量检查,不应该发布到公共数据集。

以下部分提供更详细描述每个数据集的类型。了解更BOB低频彩多关于选择数据类型来实现数据处理的需求,明白了何时使用视图、物化视图和流表

流表

一个流表是一个三角洲表提供额外的支持流媒体或增量数据处理。流表允许您处理越来越多的数据集,处理每一行只有一次。因为大多数数据集成长不断随着时间的推移,流表是好的对于大多数摄入工作负载。最优流表需要数据新鲜度和低延迟的管道。流表也可以用于大规模转换,结果可以作为新数据到达时,增量计算使结果保持最新无需完全验算与每个更新源数据。流表是用于扩展的数据源。

请注意

虽然默认情况下,流表需要扩展的数据源,当流源是另一个流表需要更新或者删除,您可以覆盖这个行为的skipChangeCommits国旗

物化视图

一个物化视图(或生活表)是一个视图已预先计算的结果。将刷新物化视图的更新计划他们的管道。物化视图是强大的,因为他们可以处理任何输入的变化。每次管道更新,重新计算的查询结果会反映上游数据集的变化可能发生因为合规,修正,聚合,或者一般的疾控中心。生活表实现物化视图δ表,但抽象的复杂性与高效应用程序的更新,让用户专注于编写查询。

的观点

所有的观点在砖计算结果从源数据集查询,利用缓存优化时可用。三角洲生活表并没有发布视图目录,所以观点可以引用只在定义它们的管道。视图是有用,因为中间查询不应该接触到最终用户或系统。砖建议使用视图执行数据质量约束或变换和丰富的数据集驱动多个下游查询。

声明你的第一个数据集在三角洲住表

三角洲生活表引入了新的Python和SQL的语法。开始与达美住表语法,使用下列教程之一:

请注意

三角洲直播表将数据集定义更新处理,和δ生活表笔记本不是用于交互式执行。看到什么是三角洲住表管道吗?

什么是三角洲住表管道吗?

一个管道是主要的单元用于配置和运行数据处理工作流与达美住表。

管道包含物化视图和流表中声明的Python源文件或SQL。三角洲生活表推断这些表之间的依赖关系,确保更新发生在正确的顺序。对于每个数据集,三角洲生活表比较当前状态与期望状态,继续创建或更新数据集使用有效的处理方法。

δ生活表的设置管道分为两大类:

  1. 配置定义的集合(称为笔记本电脑或者文件源代码),使用三角洲住表语法要申报的数据集。

  2. 控制管道基础设施配置,如何处理更新,以及表保存在工作区。

大多数配置是可选的,但也有一些需要仔细的关注,特别是当配置生产管道。这些包括以下几点:

  • 使数据可用在管道外,你必须声明一个目标模式发布蜂巢metastore或目标目录目标模式发布统一目录。

  • 通过集群配置用于数据访问权限执行。确保您的集群具有适当的权限配置为数据源和目标存储位置如果指定。

有关使用Python和SQL编写源代码管道,明白了三角洲生活表SQL语言参考三角洲生活表Python语言参考

更多管道设置和配置,请参阅δ生活表的配置管道设置

部署您的第一个管道和触发更新

在处理数据与达美住表之前,您必须配置一个管道。一旦管道配置,您可以触发一个更新计算管道中的每个数据集的结果。开始使用三角洲住表管道,明白了教程:管道运行第一个三角洲住表

什么是管道更新?

管道基础设施部署和验算数据状态当你开始一个更新。一个更新如下:

  • 开始与正确的集群配置。

  • 发现所有的表和视图定义,并检查等任何分析错误无效的列名,失踪的依赖,和语法错误。

  • 创建或更新表和视图与可用的最新数据。

管道可以连续运行或安排根据你的用例的成本和延迟需求。看到在三角洲上运行一个更新生活表管道

摄取数据与达美住表

三角洲生活表支持所有可用数据源数据砖。

砖建议使用流表对大多数摄入的用例。文件到达云对象存储,数据砖建议自动加载程序。您可以直接摄取数据与达美住表从大多数消息总线。

关于配置的更多信息访问云存储,明白了云存储配置

格式不支持自动加载程序,您可以使用Python或SQL查询任何格式支持Apache火花。看到数据加载与达美住表

监控和执行数据质量

您可以使用预期指定数据集数据质量控制的内容。与检查约束在传统数据库中禁止添加任何记录失败的约束,期望提供灵活性在处理数据失败数据质量的要求。这种灵活性允许您处理和存储数据,你希望是混乱和数据必须符合严格的质量要求。看到管理数据质量与达美住表

如何创建和管理表三角洲住表吗

砖自动创建管理表与达美住表,确定更新需要处理如何正确计算表的当前状态和执行维护和优化任务的数量。

大多数操作,你应该允许三角洲生活表来处理所有更新,插入和删除目标表。和限制的详细信息,请参见保留手动删除或更新

维护任务由三角洲生活表

三角洲生活表执行维护任务在24小时内表的更新。维修可以提高查询的性能和降低成本通过删除旧版本的表。默认情况下,系统执行一个完整的优化手术之后,真空。你可以禁用优化表通过设置pipelines.autoOptimize.managed=表属性为表。执行维护任务只有如果管道更新运行前的24小时维护任务计划。

确保维护集群所需的存储位置访问,你必须应用所需的安全配置访问默认和维护集群存储位置。看到配置您的计算设置

限制

以下限制适用:

  • 所有表由生活表δ创建和更新表。

  • 三角洲生活表表只能定义一次,这意味着他们只能单个操作的目标在所有三角洲住表管道。

  • 标识列与表不支持的目标应用变化在物化视图的更新,可能会重新计算。出于这个原因,砖建议只使用身份与流表在三角洲住表列。看到使用标识列在三角洲湖

  • 砖工作区仅限于100个并发的管道更新。

额外的资源