设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 开源资讯 查看内容

Instagram开源降低Cassandra延迟的Rocksandra

2018-3-7 21:39| 发布者: joejoe0332| 查看: 629| 评论: 0|原作者: oschina|来自: oschina

摘要: Instagram 开源了降低 Apache Cassandra 数据库延迟的改进版 Rocksandra 。Instagram 于 2012 年开始使用 Cassandra 来取代 Redis ,并将其广泛用于 fraud detection(反欺诈)、Feed 和 Direct inbox 等产品和服务 ...

Instagram 开源了降低 Apache Cassandra 数据库延迟的改进版 Rocksandra 。Instagram 于 2012 年开始使用 Cassandra 来取代 Redis ,并将其广泛用于 fraud detection(反欺诈)、Feed 和 Direct inbox 等产品和服务中。在使用过程中,他们十分认可 Cassandra 的可靠性和可用性,但在读取延迟方面看到了改进空间。

去年,Instagram Cassandra 团队开始研究开发一个名为 “Rocksandra” 的项目,用以减少 Cassandra 的P99 读取延迟(具体细节和过程可查阅博文)。

下面的图表显示的是一个 Cassandra 集群的客户端延迟。蓝线代表的是平均读取延迟(5毫秒),橙线是 P99 读取延迟(在 25-60 毫秒的范围内,基于客户端流量出现大幅变动)。

调查发现,Cassandra P99 的延迟来自于 Java 的 Full GC ,而其原因主要是 Java 写的存储引擎。作为优化,Instagram Cassandra 团队往Cassandra 里加了一层存储层的 API ,并把存储引擎换成了 C++ 写的 RocksDB 。

优化后的 Rocksandra 提供了更低也更稳定(一致)的读写延迟:

只读工作负载(read-only workload)方面,在相似的 P99 读取延迟(2ms)下,Rocksandra 可提供 10 倍的读取吞吐量(Rocksandra 为 300K / s,Cassandra 3.0.X 为 30K / s)。

Instagram Cassandra 团队表示后续还将开发更多的 Cassandra 功能支持,如二级索引(secondary indexes)、修复等,并继续研究  Cassandra 的可插拔存储引擎体系结构以回馈 Apache Cassandra 社区。


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部