lakeFS、Hudi、Delta Lake合并合并冲突
lakeFS, Hudi, Delta Lake merge and merge conflicts
我正在阅读有关 lakeFS 的文档,但现在还不清楚什么是 lakeFS 方面的合并甚至合并冲突。
假设我在单个 table 上使用 Apache Hudi 来支持 ACID。我想介绍 multi-table ACID 支持,为此我想将 lakeFS 与 Hudi 一起使用。
如果我理解正确,lakeFS 是一个数据不可知的解决方案,对数据本身一无所知。 lakeFS 仅建立边界(版本控制)并以某种方式调节对数据的并发访问..
所以合理的问题是 - 如果 lakeFS 是数据不可知的,它如何支持合并操作?就 lakeFS 而言,合并本身意味着什么?那里有可能发生合并冲突吗?
你确实理解正确。您可以在 branching model 页面中看到 lakeFS 当前与数据无关,并且仅依赖于分层目录结构。当两个分支更新同一个文件时会发生冲突。
此行为适合大多数数据工程师 CI/CD 用例。
如果您使用 Delta Lake 并从两个不同的分支对同一个 table 进行了更改,仍然会发生冲突,因为这两个分支更改了日志文件。为了解决冲突,您需要放弃其中一个变更集。
诚然,这不是最好的用户体验,目前正在努力。您可以在 roadmap 文档中阅读更多相关信息。
我正在阅读有关 lakeFS 的文档,但现在还不清楚什么是 lakeFS 方面的合并甚至合并冲突。
假设我在单个 table 上使用 Apache Hudi 来支持 ACID。我想介绍 multi-table ACID 支持,为此我想将 lakeFS 与 Hudi 一起使用。
如果我理解正确,lakeFS 是一个数据不可知的解决方案,对数据本身一无所知。 lakeFS 仅建立边界(版本控制)并以某种方式调节对数据的并发访问..
所以合理的问题是 - 如果 lakeFS 是数据不可知的,它如何支持合并操作?就 lakeFS 而言,合并本身意味着什么?那里有可能发生合并冲突吗?
你确实理解正确。您可以在 branching model 页面中看到 lakeFS 当前与数据无关,并且仅依赖于分层目录结构。当两个分支更新同一个文件时会发生冲突。 此行为适合大多数数据工程师 CI/CD 用例。
如果您使用 Delta Lake 并从两个不同的分支对同一个 table 进行了更改,仍然会发生冲突,因为这两个分支更改了日志文件。为了解决冲突,您需要放弃其中一个变更集。 诚然,这不是最好的用户体验,目前正在努力。您可以在 roadmap 文档中阅读更多相关信息。