数据迁移拼花湖三角洲湖

本文提供了推荐数据转换现有的镶花湖三角洲湖。三角洲湖是底层的格式砖Lakehouse。看到三角洲湖是什么?

考虑之前转换成三角洲湖

你的拼花湖数据可能有一个分区策略,为现有的工作负载和系统进行了优化。虽然您可以转换为三角洲湖和维护这个分区结构,分区表的一个主要原因导致三角洲湖上缓慢的工作负载。看到当在砖分区表火花代码适应砖指南

您还需要考虑是否正在转换的数据仍在增长,以及频率数据目前正在查询。你可以选择不同的方法对不同铺表数据。

三角洲湖转换方法

下面的矩阵描述了四个主要的方法来转换数据拼花湖三角洲湖和一些权衡。阐明每一列:

  • 增量:表示功能,支持将额外的数据附加到转换后源转换已经开始。

  • 重复的数据:表示数据写入到一个新的位置或修改是否到位。

  • 维护数据结构:指示划分策略是否保持在转换。

  • 回填数据:表示功能,支持回填后数据已经添加到转换源转换已经开始。

  • 易用性:指示用户配置和运行水平的数据转换。

方法

增量

重复的数据

维护数据结构

回填数据

易用性

克隆拼花

是的

是的

是的

是的

容易

克隆拼花

是的

没有

是的

是的

容易

转换δ

没有

没有

是的

没有

容易

自动加载程序

是的

是的

没有

可选

一些配置

批处理火花作业

自定义逻辑

是的

没有

自定义逻辑

自定义逻辑

下面的章节将讨论这些选项在更大的深度。

镶木地板数据迁移克隆拼花

您可以使用克隆从铺铺增量复制数据数据湖三角洲湖。浅克隆创建指向现有铺文件,维护你的拼花表在其原始位置和格式,同时提供优化访问通过收集文件数据。你可以写信给创建的表浅克隆而不影响原始数据源。

深克隆复制所有数据文件从源到一个新的位置,而转换成三角洲湖。深克隆可以逐步检测新文件,包括回填操作,在后续的执行逻辑。看到增量克隆拼花和冰山表三角洲湖

下面的例子演示了使用克隆:

创建取代<target_table_name>(]克隆拼花' /路径//数据;

镶木地板数据迁移转换δ

您可以使用转换δ将拼花的目录文件转换为用一个命令三角洲表。一旦表转化成三角洲湖,你应该停止阅读和写作从表中使用镶花的逻辑。转换后的数据写入到目标目录已经开始可能不会反映在合成δ表。看到转换为三角洲湖

下的例子演示使用转换δ:

转换δ拼花s3:/ /我的- - - - - -/拼花- - - - - -数据;

迁移铺数据与自动加载程序

而自动加载器是一个产品设计的增量数据摄入从云对象存储,您可以利用它来实现一个模式,逐步将所有数据从一个给定目录复制到一个目标表。看到自动加载器是什么?

下面的代码示例包括配置:

  • 处理所有现有的源目录中的文件。

  • 触发一个自动每周回填工作捕获文件可能已经错过了。

  • 允许Apache火花使用许多火花的工作,避免泄漏和内存不足错误与大数据相关的分区。

  • 提供端到端只有一次处理担保。

(火花readStream格式(“cloudFiles”)选项(“cloudFiles.format”,“铺”)选项(“cloudFiles.includeExistingFiles”,“真正的”)选项(“cloudFiles.backfillInterval”,“1周”)选项(“cloudFiles.schemaLocation”,checkpoint_path)负载(file_path)writeStream选项(“checkpointLocation”,checkpoint_path)触发(availableNow=真正的)toTable(table_name))

您可以使用自动加载器在三角洲住表与Python或SQL。看到在三角洲住表使用自动加载程序

迁移铺数据与Apache火花批量定制逻辑

编写自定义Apache火花逻辑提供了极大的灵活性在控制方式和不同的数据从源系统迁移,但可能需要进行大量的配置来提供功能构建到其他方法。

这种方法的核心是一个简单的Apache火花读和写操作,如以下:

火花格式(“铺”)负载(file_path)模式(“添加”)saveAsTable(table_name)

执行回填或增量迁移,你可以依靠你的分区结构数据源,但是可能还需要编写自定义逻辑跟踪哪些文件添加了自从你上次加载数据从源。虽然您可以使用三角洲湖合并比较功能,避免写重复的记录,所有记录从一个大镶花源表的内容大三角洲表是一个计算昂贵的任务。

你什么时候不应该转换为三角洲湖?

之前将所有现有的镶花数据转换为三角洲湖,你可能会考虑潜在的权衡。

砖设计的许多优化功能的lakehouse三角洲湖,湖和δ提供了丰富的开源生态系统bob下载地址本地连接器对许多语言和企业数据系统。三角洲分享扩展的能力共享数据存储与三角洲湖给其他客户。

三角洲湖之上的拼花,因此,砖也有优化的读者和作家与拼花文件进行交互。

砖建议使用三角洲湖定期收到更新的所有表或查询的砖。你可以选择维持拼花格式的数据在某些情况下,如以下:

  • 上游系统写数据拼花不支持本地写入三角洲湖。

  • 下游系统读取铺数据无法读取三角洲湖。

在这两种情况下,您可能想要复制你的表三角洲湖利用性能优势在阅读,写作,更新和删除表中的记录。

请注意

同时修改相同三角洲表中的数据存储在S3不推荐从多个工作区或数据系统。看到三角洲湖限制S3