Cloud applications often insert a caching lay\-er in front of a database in order to reduce I/O latency and improve throughput. One complication occurs when a client fetches some data from one cache node, then migrates to another (e.g., due to failures, load balancing, or client mobility), where it fetches the remaining data. If the data in the cache nodes is inconsistent, the client could observe states that undermine the application's correctness. One example of a situation where this is common is stateful serverless workflows, which consist of multiple serverless functions that access state in a remote database. In serverless, functions in the same workflow may be scheduled to different nodes with different caches, resulting in the migration pattern described above -- the same client (the workflow) reads some data from one cache and other data from another. To address this issue, this paper presents CausalMesh, a novel approach to causally consistent distributed caching in environments where computations may migrate between machines. CausalMesh is the first cache system to support coordination-free, abort-free read/write operations and read transactions when clients migrate across multiple servers. CausalMesh also supports read-write transactional causal consistency in the presence of client migration, but at the cost of abort-freedom. Our experimental evaluation shows that CausalMesh has lower latency and higher throughput than existing proposals. Finally, we have formally verified the correctness of \sys's protocol in Dafny.


翻译:云应用通常会在数据库前插入缓存层以降低I/O延迟并提高吞吐量。当客户端从某个缓存节点获取部分数据后,因故障、负载均衡或客户端移动性等原因迁移至另一节点,并继续获取其余数据时,便会出现复杂问题。若缓存节点间的数据不一致,客户端可能观察到破坏应用正确性的状态。此类场景的典型示例是有状态无服务器工作流——由多个访问远程数据库中状态的无服务器函数构成。在无服务器环境中,同一工作流的不同函数可能被调度到具有不同缓存的节点上,从而产生上述迁移模式(即同一客户端/工作流从不同缓存读取不同数据)。为解决此问题,本文提出CausalMesh——一种适用于计算可在机器间迁移的环境中的因果一致性分布式缓存创新方案。CausalMesh是首个在客户端跨多服务器迁移时支持无协调、无中止读写操作及读事务的缓存系统。在客户端迁移场景下CausalMesh仍支持读写事务因果一致性,但需以放弃无中止特性为代价。实验评估表明,CausalMesh相较于现有方案具有更低的延迟和更高的吞吐量。最后,我们通过Dafny形式化验证了该系统协议的正确性。

0
下载
关闭预览

相关内容

《边缘云异常检测的机器学习》最新博士论文
专知会员服务
27+阅读 · 2024年8月8日
国家标准《信息技术云计算参考架构》
专知会员服务
37+阅读 · 2024年5月24日
《移动云中安全可信的任务卸载》论文
专知会员服务
18+阅读 · 2023年3月25日
华为发布业界首个《云原生数据库白皮书》,25页pdf
专知会员服务
51+阅读 · 2022年8月20日
前端微服务在字节跳动的落地之路
前端之巅
41+阅读 · 2019年9月19日
基于MySQL Binlog的Elasticsearch数据同步实践
DBAplus社群
15+阅读 · 2019年9月3日
【数据中台】什么是数据中台?
产业智能官
18+阅读 · 2019年7月30日
工行基于MySQL构建分布式架构的转型之路
炼数成金订阅号
15+阅读 · 2019年5月16日
使用 Canal 实现数据异构
性能与架构
20+阅读 · 2019年3月4日
【大数据】StreamSets:一个大数据采集工具
产业智能官
40+阅读 · 2018年12月5日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
7+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
VIP会员
最新内容
学习数据的几何:形状空间分析数学综述
专知会员服务
6+阅读 · 6月17日
定向能反无人机系统最新发展动态
专知会员服务
7+阅读 · 6月17日
从燃煤战舰到算法战争:水面指挥的永恒要求
专知会员服务
4+阅读 · 6月17日
相关资讯
前端微服务在字节跳动的落地之路
前端之巅
41+阅读 · 2019年9月19日
基于MySQL Binlog的Elasticsearch数据同步实践
DBAplus社群
15+阅读 · 2019年9月3日
【数据中台】什么是数据中台?
产业智能官
18+阅读 · 2019年7月30日
工行基于MySQL构建分布式架构的转型之路
炼数成金订阅号
15+阅读 · 2019年5月16日
使用 Canal 实现数据异构
性能与架构
20+阅读 · 2019年3月4日
【大数据】StreamSets:一个大数据采集工具
产业智能官
40+阅读 · 2018年12月5日
相关基金
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
7+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员