Anna 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Anna 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票

软件简介

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实验室致力于开发实时、智能、可安全执行的新一代大数据处理系 统,已经开源了新型分布式执行框...

0
0
发表了博客
2018/03/16 22:41

伯克利推出世界最快的KVS数据库Anna:秒杀Redis和Cassandra

伯克利推出世界最快的KVS数据库Anna:秒杀Redis和Cassandra伯克利 RISE 实验室推出了最新的键值存储数据库 Anna,提供了惊人的存取速度、超强的伸缩性和史无前例的一致性保证。Jeff Dean 说,当一个系统增长到十倍规模时,就需要进行重新设计。那么,对于 RISE 实验室的研究员们来说,怎样才能设计出一个具备指数级增长规...

0
0
发表于数据库专区
2019/01/14 00:40

Anna

Anna 使用了一个核心对应一个线程的无共享线程架构,通过避免线程间的协调来实现闪电般的速度。Anna还使用晶格组合来实现多样的无协调一致性级别。第一个版本的Anna吊打现有的内存KV存储系统:它的性能优于Masst...

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...

0
0
发表了博客
2019/08/21 01:57

Codeforces Round #581 (Div. 2) C. Anna, Svyatoslav and Maps (Floyd 算法,最短路)

C. Anna, Svyatoslav and Maps time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output The main characters have been omitted to be short. You are given a directed unweighted graph without loops with n vertexes and a path in it (that path is not nece...

0
0
发表于数据库专区
04/22 20:32

最近在读的一些文章-2019.04

这是学习笔记的第 1911 篇文章 留给传统 DBA 的时间不多了?看饿了么如何构建数据库平台自动化 从SQL Server到MySQL,近百亿数据量迁移实战 伯克利推出世界最快的KVS数据库Anna:秒杀Redis和Cassandra 唯品会NoS...

0
0
发表了博客
2018/09/10 00:15

Lemon-sized luxury boxes

Anna continues to sort out the order of Imperial Lemons for Mr Lime. He gives her a call, this time to discuss business. He wants some luxury boxes to put the lemons in and Anna needs to find them ......

0
0
发表了博客
2018/09/03 07:47

The big day

Presentation time! It's a big day for Anna as she presents Tip Top Trading's new Imperial Lemon to Mr Lime at Citrus Ventures. This is her chance to make a big impression on her boss Paul and show ......

0
0
发表了博客
2019/08/15 16:17

避免HBase PageFilter踩坑,这几点你必须要清楚

有这样一个场景,在HBase中需要分页查询,同时根据某一列的值进行过滤。 不同于RDBMS天然支持分页查询,HBase要进行分页必须由自己实现。据我了解的,目前有两种方案, 一是《HBase权威指南》中提到的用PageFilter加循环动态设置startRow实现,详细见这里。但这种方法效率比较低,且有冗余查询。因此京东研发了一种用额外...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
12 评论
89 收藏
分享
返回顶部
顶部