欢迎投稿

今日深度:

关于Cassandra的Eventural Consistent Model,cassandraeventural

关于Cassandra的Eventural Consistent Model,cassandraeventural


前段时间看到CSDN的首页上有一些关于Cassandra的消息和宣传,有一点看到大家没有提及的是Cassandra对于consistency的处理.以至于有的朋友认为目前的Cassandra在银行金融信息领域有很大的潜在应用.我觉得这里可能有一些认识上的误区.

 

和HBase的strong consistency不同,Cassandra采取的是weak consistency策略.在CAP 的选择上,HBase优先考虑的是 A (availability)和 P (tolerance to network partition); 而Cassandra优先考虑的是 C (consistency) 和 P (tolearance to network partition). 关于更多的CAP的问题,请参照[1].

 

Cassandra的weak consistency并不意味着分布式数据库不能提供consistent的数据操作,在Cassandra中可以设置Consistency Level 来确保consistent的操作.但是consistency越高,性能就越差.但无论你选择何种 Consistency Level ,一段时间(inconsistency window)之后,所有的数据备份都将产生相同的结果,这也就是Cassandra所谓的Eventural Consistent Model.只是这个时间可长可短.时间越长,性能也就越好,时间越短,数据库的性能也就越差.这里所说的性能主要指的是availability和data throughput.

 

所以大部分选择使用Cassandra的用户都应该清楚他们所要开发的应用是否可以容忍一段时间的inconsistency.像银行金融信息系统对所有的数据操作都应是atomic的并严格的consistent,否则一个客户可以利用这个inconsistency window不断的从ATM上取钱而其账户上的数字可能没有变化.这个显然是不太合理的.

 

 

 

 

 

 

 

[1] http://www.cs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf

www.htsjk.Com true http://www.htsjk.com/cassandra/35722.html NewsArticle 关于Cassandra的Eventural Consistent Model,cassandraeventural 前段时间看到CSDN的首页上有一些关于Cassandra的消息和宣传,有一点看到大家没有提及的是Cassandra对于consistency的处理.以至于有的朋友认...
相关文章
    暂无相关文章
评论暂时关闭