TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Trade-offs between Different CRDTs

145 点作者 iamwil超过 1 年前

4 条评论

quartz超过 1 年前
If you&#x27;re just getting started with CRDTs I&#x27;d also recommend Seph&#x27;s &quot;5000x faster CRDTs&quot; post[1] and also his &quot;I was wrong. CRDTs are the future&quot; post[2] for some nice captures of the practical challenges and opportunities in the space.<p>[1] <a href="https:&#x2F;&#x2F;josephg.com&#x2F;blog&#x2F;crdts-go-brrr&#x2F;" rel="nofollow">https:&#x2F;&#x2F;josephg.com&#x2F;blog&#x2F;crdts-go-brrr&#x2F;</a><p>[2] <a href="https:&#x2F;&#x2F;josephg.com&#x2F;blog&#x2F;crdts-are-the-future&#x2F;" rel="nofollow">https:&#x2F;&#x2F;josephg.com&#x2F;blog&#x2F;crdts-are-the-future&#x2F;</a>
评论 #38921222 未加载
评论 #38920604 未加载
lewisjoe超过 1 年前
This is a clear and crisp way of differentiating delta based vs state based CRDTs.<p>But I don&#x27;t think it&#x27;s accurate enough. For example, the article claims delta based CRDTs don&#x27;t use vector clocks. But even to decide if a set of events are concurrent it&#x27;s necessary to attach vector stamps to every event. Maybe the author meant something else when he says vector clocks are not needed for op based CRDTs.<p>Also as mentioned in article it&#x27;s true evergrowing event log is not such a bad idea with compression techniques and cheaper disks. But the problem with evergrowing datastructures is not just disk space. This data has to be loaded onto main memory to do anything useful with it. This data has to be transmitted across network to power SaaS apps. So stating that disks are cheaper hence evergrowing datastructures are fine - is an oversimplification.
评论 #38920573 未加载
评论 #38924450 未加载
wim超过 1 年前
Nice outline of the various techniques. We&#x27;ve built something in-between the operation-based and delta-based approaches for our offline-first multiplayer &quot;IDE for notes&#x2F;tasks&quot; [1].<p>In our case we have a central server which periodically creates snapshots. Although we don&#x27;t do that right now, if needed, it could delete older operations from the log for space reasons. Except for the fact that replicas encrypt their ops before they send it to the server (e2ee), the server is pretty much like any other replica, so if there is no central server I guess any or multiple replicas could also create snapshots instead.<p>&quot;Normal&quot; replicas which have been offline for a while can then get the last snapshot state S&#x27; with all operations since S&#x27;. Other than that, they simply broadcast operations and only keep their own latest version to which they apply incoming operations.<p>[1] <a href="https:&#x2F;&#x2F;thymer.com" rel="nofollow">https:&#x2F;&#x2F;thymer.com</a>
zachmu超过 1 年前
Apparently he&#x27;s going to write about Merkle CRDTs next, but if you can&#x27;t wait:<p><a href="https:&#x2F;&#x2F;www.dolthub.com&#x2F;blog&#x2F;2022-06-27-prolly-chunker&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.dolthub.com&#x2F;blog&#x2F;2022-06-27-prolly-chunker&#x2F;</a>
评论 #38921392 未加载
评论 #38916964 未加载
评论 #38917878 未加载