文档章节

走进cassandra之四 副本机制

chenkangyao
 chenkangyao
发布于 2016/07/19 13:35
字数 561
阅读 29
收藏 0

如果你要想最大限度保持一个东西不会忘记掉,你最好的办法,不是死记,记好几十遍。
而是要告诉几个人,这样就算你忘记了,别人还记得。
在cassandra里面呢,这个原理可以描述为
Replication is the process of storing copies of data on multiple nodes toensure reliability and fault tolerance.
当然,你也不能为了安全,要告诉100个人,这样累也累死了。

这个东东,最好是不多不少,刚刚合适。
在cassandra里面,这个不多不少的数,有个名词,叫replication factor(副本因子)
The total number of replicas across the cluster is referred to as thereplication factor.
这个数,代表什么意思呢?
A replication factor of 2 means two copies of each row, where each
copy is on a different node.

就是代表,有多少个数据的副本。

确定了有多少副本了,还有一个问题,这些副本怎么分布呢?
让哪些节点,持有你这些副本呢?

这也有对应的算法,

• SimpleStrategy
• NetworkTopologyStrategy

SimpleStrategy 用在只有一个数据中心的情况下。
SimpleStrategy places the first replica on a node determined by the partitioner. Additional replicas are placed on the
next nodes clockwise in the ring without considering rack or data centerlocation.

这句的意思就是:第一个数据副本放在 环里的一个节点上(这个节点由上节说到的分区器确定),其他的数据副本,按照顺时针方向,依次放在写一个节点。(不考虑机架或者数据中心的位置)。

NetworkTopologyStrategy 这个适用于有多个数据中心的情况。
This strategy specify how many replicas you want in each data center.
每个数据中心里要有几个副本,由这个来定。
在决定这个数字的时候,有2个因素要考虑:
(1) being able to
satisfy reads locally, without incurring cross-datacenter latency, and
(2) failure scenarios.

主要意思就是说,北京人访问北京的数据中心就好了,不要跑去访问上海的数据中心,那样跑的路就太远了。
另外,在同一个数据中心,完全有可能所有节点都死掉。
比如说,大厦整体断电了,所有机器同时见马克思了。
所以数据要分散在不同数据中心。

© 著作权归作者所有

共有 人打赏支持
chenkangyao
粉丝 6
博文 44
码字总数 75969
作品 0
广州
高级程序员
私信 提问
走进cassandra之七 最终一致性

关于这个最终一致性,我们还是举打仗的那个例子。 一个师,下辖三个团,一个独立营。 大家知道,在战斗的时候,突发事件很多,时间也很紧迫。 来自师部的作战命令,可能没有办法及时到达各个...

chenkangyao
2016/07/19
25
0
走进cassandra之三 分区器

从这节开始,都是高年级知识了,需要一点分布式的基础知识。 以前的文章说到, james(公司大佬)把任务分给了几拨人来做,那么怎么个分法呢? 什么任务交给什么人呢? James估计是有自己的一...

chenkangyao
2016/07/19
6
0
走进cassandra之六 数据读写删

先说写,再说读,最后说 数据一致性(data consistency)。 cassandra对于 数据写入,那是相当给方便的,比对 首长儿子还亲呢, 写的相当快,相当高效。 相比来说,关系型数据库,对于数据 ...

chenkangyao
2016/07/19
9
0
走进cassandra 之一 CAP和分布式

决定share一下我的cassandra学习成果,写一些博客,跟大家共同分享一下,准备写10篇文章,内容分别涉及 分布式存储概述及CAP, 数据模型, 分区器, 副本机制, 存储机制, 数据读写删, 最终一...

chenkangyao
2016/07/19
21
0
Cassandra维护最终一致性 和存储机制 分区策略

维护最终一致性 Cassandra 通过4个技术来维护数据的最终一致性,分别为逆熵(Anti-Entropy),读修复(Read Repair),提示移交(Hinted Handoff)和分布式删除。 1) 逆熵 这是一种备份之间的...

Will--wang
2015/05/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

eureka多注册中心

eureka分区的深入讲解

miaojiangmin
30分钟前
2
0
RAM SSO功能重磅发布 —— 满足客户使用企业本地账号登录阿里云

阿里云RAM (Resource Access Management)为客户提供身份与访问控制管理服务。使用RAM,可以轻松创建并管理您的用户(比如雇员、企业开发的应用程序),并控制用户对云资源的访问权限。 对云资...

阿里云官方博客
33分钟前
3
0
Mysql 8.0 | #08004Client does not support authentication protocol requested by server

完整报错 #08004Client does not support authentication protocol requested by server; consider upgrading MySQL client 解决方法 Using the old mysql_native_password works:ALTER ......

云迹
35分钟前
1
0
kylin入门到实战

1.概述 kylin是一款开源的分布式数据分析工具,基于hadoop之上的sql查询接口,能支持超大规模的数据分析。响应时间在亚秒级别,其核心是预计算,计算结果存放在hbase中。 2.特性 可扩展超快O...

hblt-j
38分钟前
1
0
vagrant mac 安装和使用

varant 在mac上使用起来非常的方便,具体的下载步骤可以看这里https://segmentfault.com/a/1190000000264347 这里主要是记录一下配置文件 # -*- mode: ruby -*- # vi: set ft=ruby : # All V...

一千零一夜个为什么
39分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部