增量克隆拼花和冰山表三角洲湖

您可以使用砖克隆功能逐步从拼花或冰山数据源的数据转换为管理或外部三角洲表。

砖用于克隆拼花和冰山结合功能克隆三角洲表将表格转换成三角洲湖。本文描述了用例和限制这一特性,并提供例子。

预览

这个特性是在公共预览

请注意

该功能需要砖运行时11.3或以上。

何时使用克隆的增量摄入拼花或冰山数据

砖提供了许多选项数据摄取到lakehouse。砖建议使用克隆摄取拼花或冰山数据在以下情况:

请注意

这个词源表指的是表和数据文件被克隆,虽然目标表指的是δ表创建或更新的操作。

  • 您正在执行迁移从拼花或冰山三角洲湖,但是仍然需要继续使用源表。

  • 你需要维护一个ingest-only之间同步接收附加目标表和生产源表,更新和删除操作。

  • 你想创建一个ACID-compliant快照的源数据报告,机器学习,或者批ETL。

克隆的语法是什么?

克隆为拼花和冰山使用相同的基本语法使用克隆三角洲表,支持浅和深克隆。有关更多信息,请参见克隆类型

砖建议使用克隆逐步对大多数工作负载。克隆支持拼花和冰山使用SQL语法。

请注意

克隆为拼花和冰山有不同的需求,保证比克隆或转换为δ。看到要求和限制克隆拼花和冰山表

深克隆拼花或冰山表使用一个文件路径,使用下面的语法:

创建取代<目标- - - - - -- - - - - -的名字>克隆拼花' /路径//数据;创建取代<目标- - - - - -- - - - - -的名字>克隆冰山' /路径//数据;

浅克隆拼花或冰山表使用一个文件路径,使用下面的语法:

创建取代<目标- - - - - -- - - - - -的名字>克隆拼花' /路径//数据;创建取代<目标- - - - - -- - - - - -的名字>克隆冰山' /路径//数据;

您还可以创建深或浅克隆metastore铺表登记,如以下示例所示:

创建取代<目标- - - - - -- - - - - -的名字>克隆<- - - - - -- - - - - -的名字>;创建取代<目标- - - - - -- - - - - -的名字>克隆<- - - - - -- - - - - -的名字>;

要求和限制克隆拼花和冰山表

是否使用深或浅克隆,克隆后更改应用到目标表中出现无法同步回源表。增量同步与克隆是单向的,允许更改源表自动应用于目标三角洲表。

下面的额外限制适用于使用克隆与拼花和冰山表:

  • 你必须注册拼花等目录表和分区克隆和使用前的蜂巢metastore idenfity源表的表名。你不能使用基于路径克隆语法拼花与分区表。

  • 你不能克隆冰山进化经历了分区的表。

  • 你不能克隆冰山merge-on-read表经历了更新,删除或合并。

  • 以下是限制克隆冰山与截断列上定义的分区表:

    • 在砖运行时的13.0和下面,只有截断列类型支持字符串

    • 在砖运行时的13.1及以上,你可以使用截断的列类型字符串,,或int

    • 砖不支持使用截断的列类型小数

  • 增量克隆同步源表的模式变化和属性,任何模式变化和数据文件编写本地克隆表覆盖。

请注意

在砖11.3运行时,此操作不会收集文件级别的统计数据。因此,目标表不受益于三角洲湖数据跳过。文件级数据收集在砖运行时12.0及以上。