Anna 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Anna 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Anna 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 BSD
开发语言 C/C++
操作系统 Linux
软件类型 开源软件
开源组织
地区 不详
投 递 者 局长
适用人群 未知
收录时间 2018-03-15

软件简介

Anna 是伯克利 RISE 实验室推出的键值存储数据库,也是一个具备惊人的存取速度、超强的伸缩性和优秀的一致性的 KVS。

Anna 的性能和伸缩性主要归功于它的完全无协调机制,节点工作进程有 90% 的工作负载是在处理请求,而其他大部分系统(如 Masstree 和英特尔的 TBB)只有不到 10% 的时间在处理请求,它们其余的 90% 时间花在了等待协调上。不仅如此,其他系统因为使用了共享内存,还会出现处理器缓存击穿问题。

Anna 不仅速度快,在一致性方面也达到了很高的水准。多年前,他们发布的事务协议 HATs 就已表明,无协调的分布式一致性和事务隔离性存在很大的提升空间,包括级联一致性和读提交事务级别。Anna 将 Bloom 的单格子组合设计模式移植到了 C++ 中,是第一个实现了上述所有级别一致性的系统。当然,也是因为设计上的简洁,才能达到如此快的速度。

Anna 架构

上图是 Anna 单节点的架构图。Anna 服务器由一系列独立的线程组成,每个线程运行无协调的 actor。每个线程对应一个 CPU 核心,线程数量不超过 CPU 的总核数。客户端代理负责将远程请求分发给 actor,每个 actor 都有一个私有的哈希表,这些哈希表存放在共享内存中。线程间的变更通过内存广播进行交换,而服务器间的变更则通过 protobuf 进行交换。

参考:https://mp.weixin.qq.com/s/3WmGpZkEuSz-ox_2CPCsqg  
论文原文:http://db.cs.berkeley.edu/jmh/papers/anna_ieee18.pdf

展开阅读全文

评论 (12)

加载中
这种名字是搞笑么,和某个单词读音那么相近"anal",都不考虑外语读音的么?还是说故意的
2018/04/10 17:07
回复
举报
作者说的不专业,性能测试有待完善.从报表看性能,Anna使用了32块CPU才达到80W处理量,然而Redis只需要10块CPU就稳定达到80W,再排除Redis其它因素,按Redis实际工作能力算6W/秒,大概14块CPU就能100%稳定提供80W(14*6)处理能力.假如使用32块CPU的话.Redis应该稳定在192W处理量.
2018/04/03 09:12
回复
举报
76
打分: 力荐
Anna是c++版本的,其实c++版本的 Cassandra比java版的 也要快10倍。所以,Anna的性能应该和ScyllaDB差不多。所以呢,说是最快的分布KVS那也未必。另外最快的单服务器kvs是不是aerospike?反正性能这玩意看应用场景。
2018/03/24 17:40
回复
举报
源码在哪里
2018/03/20 12:56
回复
举报
跟redis比有哪有优缺点?
2018/03/19 14:11
回复
举报
Chenggang Wu was the fearless leader and key developer on Anna; Jose Faleiro and I were involved in the design. Props to Chenggang! =============华人?
2018/03/16 19:03
回复
举报
打分: 力荐
great!!!!
2018/03/16 15:47
回复
举报
在哪儿呢
2018/03/16 14:37
回复
举报
打分: 力荐
在哪里可以下载anna数据库
2018/03/16 13:50
回复
举报
一直没有想明白 伯克利DB为什么卖给Oracle
2018/03/16 10:53
回复
举报
更多评论
暂无内容
发表了博客
2018/08/16 15:36

安娜Anna:世界最快的超级伸缩的KVS, 秒杀Redis

伯克利 这个大学在计算机学术界、工业界的地位举足轻重,其中的AMP实验室曾开发出了一大批大获成功、 对计算机行业产生深远影响的分布式计算技术,包括 Spark、Mesos、Tachyon 等。作为AMP的继任 者,于2017年2月新成立的RISE实验室致力于开发实时、智能、可安全执行的新一代大数据处理系 统,已经开源了新型分布式执行框架Ray等项目 世界最快 这个就有点标题党了,但加州伯克利出品的KVS也不可小觑 you have to redesign your ...

0
0
发表了博客
2019/08/21 20:45

CF1204C Anna, Svyatoslav and Maps

题意 在给定的序列P中求一个子序列,使得在图中按照该子序列进行最短路径移动时可以完整经过原序列P code #include <iostream> #include <stdio.h> #include <string.h> #include <algorithm> #define maxn 105 #define maxm 1000010 #define inf 0x3f3f3f3f using namespace std ; int n ,m , idx ; char mp[maxn][maxn] ; int G[maxn][maxn] , point[maxm] , ans[maxm] ; int qu[maxm*2] ; int head = 1 , tail = 0 ; int ma...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
12 评论
88 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部