首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用CRDT在酸性RDB之间复制树

用CRDT在酸性RDB之间复制树
EN

Stack Overflow用户
提问于 2022-09-25 18:09:37
回答 1查看 20关注 0票数 0

我对复制类似于地址的数据的“等级”很感兴趣。

地区分区小组

但你可能有不同的数据片段关联到每一层,所以你可能知道扇区的面积,但不知道单位,你可能知道一个单位的总体,基本上它不是一棵同质的树。

我对数据的复制知之甚少,只知道刷刷Brewers定理/CAP,以及一些关于最终一致性的天真直觉。

我正在寻找简单的机制来将这些数据从ACID RDB复制到其他ACID RDB中,系统地说系统需要最终收敛,显然每个RDB都将强制执行自己的本地一致视图,但是任何两个节点在任何给定的时间都可能不匹配(“最终”除外)。

最简单的方法是简单地将所有数据存储在一条来自指定领导者的消息中,并分发it...like一个夜间转储和加载过程,但这太大了。

因此,下一个最简单的事情(我想)是,如果一个区域内的某个东西发生了变化,我可以导出一个区域内的完整数据集,并将其加载到节点中,这仍然是一个相当粗略的算法。

下一步是,如果任何级别上的“object”发生了变化,那么就是发送到该“object”路径中的所有数据,也就是说,如果扇区中的某个内容被修改,您将发送与扇区、其父区和父扇区相关的数据(带有某种版本标记,并表示上次更新获胜),我想要做的是确保任何复制' update‘都能成功(因此它需要整个路径,如果它不存在的话,这可能会被创建)。

然后我无意中发现了CRDTs,然后想.啊.我在这里重新发明轮子,据说这些算法在原则上很简单,但在实践中很难得到正确的结果。

是否有标准被接受的模式来做这类事情?

在我的用例中,层次结构很浅,而且只有一个指定的领导者(此时),我非常喜欢基于状态的CRDTs,因为这样我就可以忽略顺序。

简单是关键的要求。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-26 10:27:34

实际上,我似乎已经(以一种非常幼稚的方式)重新发明了货架算法。

我将编写一些代码,看看是否能让它工作,并试图了解发生了什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73846779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档