Redian新闻
>
cassandra的eventual consistency怎么破?
avatar
cassandra的eventual consistency怎么破?# Programming - 葵花宝典
w*r
1
发现好多人都在讨论,要是时光可以倒流,一定要回国之类的,其实这种事情本身就是
没有任何意义的事情,因为我们都知道,不管是你现在有多么后悔,在这个世界上,都
没有卖后悔药的,这是非常肯定,而且没有争议的事情。
回国就一定好吗?你知道国内现在是什么情况吗?可能是我出国的时间,还不是很长,
所以对于很多事情,都没有那么的深刻。可是,对于国内目前的情况,我却是很了解的
,也是因为这样,我才这么坚定出国这件事情。
在国内确实有很多的好处,我们可以距离家人近一些,或许可以早早的就结婚生子,还
可以生活的相对安稳,没有水土差异,也没有那么多的文化差异什么的。可是你肯定知
道,在中国的生活将会是多么的无聊。
我们按部就班的毕业,然后工作,然后结婚,然后还有什么吗?国内的工作环境是和国
外有很大差异的,大多数时候,还是处于那种人情社会,你想要靠自己的本事其实是很
困难的。而且大多数时候,更加重视一种人情往来,而不是你的工作能力。结婚也不会
由着你的感觉,而是彼此之间物质的契合程度。
avatar
HQ
2
为啥有这么个规矩呢?
avatar
m*h
3
我想申请当地的一个小学校,教书为主,申请时的材料需要一个teaching plan,请问
teaching statement 和 teaching plan 的区别, teaching plan主要要写什么内容呢
avatar
u*o
4
最近研究了一下2012年的税表,自己手工报完后,又用turbotax报了一遍,两者的结果
一毛不差,确信自己也理解了怎么保税。
问题来了,我2011年,2010年的税都是自己手工瞎报的。自己不理解的项目当时都没有
填。这下看来应该是亏了不少。
所以我想问:我能不能重新报2011和2010年的税? 如果能,还是用当年的税表吗?另
外,由于前两年已经部分退税了,怎么说明这些情况?
avatar
i*t
5
不存在?为什么有那么多人遇到过?
存在?那你为何不信?
自己没经历就代表没有,典型唯心主义。
客观点吧,大千世界,无奇不有。
见过头顶批砖么?开始你可能认为是戏法,其实不然,乃是借助鬼神之力完成的,不信
去找个硬气功高手问问。
avatar
w*g
6
我有很多客户数据需要快速读写。但如果同一个客户的数据写到不同的node上,那么在
短时间内读可能就是不完整的。我也不需要100%的consistency,只要机器不down的情
况下consistent就行。比如两台机器存两分数据,但是50%的用户在机器A不挂掉的情况
下永远先访问机器A,剩下50%则优先访问机器B,这样就只要机器不挂就不会有数据丢
失,挂了的话另一台机器顶上,可以容忍少量数据丢失。实际可能会有多台机器,但是
存同一份数据的机器对于每个用户必须有主从关系。这样怎么配置?
avatar
t*f
7
赞同这个观点。
永远不要后悔,向前走。不要以现在的心态和阅历去对多年前的决定重新判断,那样没
有任何意义。
活在当下!

【在 w****r 的大作中提到】
: 发现好多人都在讨论,要是时光可以倒流,一定要回国之类的,其实这种事情本身就是
: 没有任何意义的事情,因为我们都知道,不管是你现在有多么后悔,在这个世界上,都
: 没有卖后悔药的,这是非常肯定,而且没有争议的事情。
: 回国就一定好吗?你知道国内现在是什么情况吗?可能是我出国的时间,还不是很长,
: 所以对于很多事情,都没有那么的深刻。可是,对于国内目前的情况,我却是很了解的
: ,也是因为这样,我才这么坚定出国这件事情。
: 在国内确实有很多的好处,我们可以距离家人近一些,或许可以早早的就结婚生子,还
: 可以生活的相对安稳,没有水土差异,也没有那么多的文化差异什么的。可是你肯定知
: 道,在中国的生活将会是多么的无聊。
: 我们按部就班的毕业,然后工作,然后结婚,然后还有什么吗?国内的工作环境是和国

avatar
A*l
8
1040X

【在 u******o 的大作中提到】
: 最近研究了一下2012年的税表,自己手工报完后,又用turbotax报了一遍,两者的结果
: 一毛不差,确信自己也理解了怎么保税。
: 问题来了,我2011年,2010年的税都是自己手工瞎报的。自己不理解的项目当时都没有
: 填。这下看来应该是亏了不少。
: 所以我想问:我能不能重新报2011和2010年的税? 如果能,还是用当年的税表吗?另
: 外,由于前两年已经部分退税了,怎么说明这些情况?

avatar
M*n
9
遇到的都是癔病啊癔病
avatar
g*g
10
I am not very clear about your requirement. But you can start with N>=6
nodes, replication factor 3, and quorum read/write, that probably solves
your problem already.

【在 w***g 的大作中提到】
: 我有很多客户数据需要快速读写。但如果同一个客户的数据写到不同的node上,那么在
: 短时间内读可能就是不完整的。我也不需要100%的consistency,只要机器不down的情
: 况下consistent就行。比如两台机器存两分数据,但是50%的用户在机器A不挂掉的情况
: 下永远先访问机器A,剩下50%则优先访问机器B,这样就只要机器不挂就不会有数据丢
: 失,挂了的话另一台机器顶上,可以容忍少量数据丢失。实际可能会有多台机器,但是
: 存同一份数据的机器对于每个用户必须有主从关系。这样怎么配置?

avatar
u*o
11
谢谢,1040x是可以修正往年已经报过的税吗?
因为我当年的税已经报过了,不想造成重复保税的印象。

【在 A**l 的大作中提到】
: 1040X
avatar
m*r
12
yes.Bible said it.
avatar
z*e
13
cassandra
不过这是multiple masters system
avatar
P*1
14
重填当年的税表,新旧对比着填今年的1040X。1040X可以让你修正三年内的税表

【在 u******o 的大作中提到】
: 谢谢,1040x是可以修正往年已经报过的税吗?
: 因为我当年的税已经报过了,不想造成重复保税的印象。

avatar
i*t
15
科学上讲,人的喉咙是不能承受尖矛的压力的。
科学上讲,人的脑袋无法击碎石头而不受伤。
科学上讲,男人的私物是脆弱的,怎么可能是铁档
科学上讲,人的眼球是脆弱的,怎么可能经受巨大压力没有爆掉
你没有练过硬气功,就不要说别人都是骗子或把戏。
气功就是一种与灵界沟通的活动。

【在 M******n 的大作中提到】
: 遇到的都是癔病啊癔病
avatar
z*e
16
说说什么是必需有主从关系?
a & b两个nodes
你怎么判断主从?
avatar
M*n
17
我是按伟大的CCTV的逻辑在说的,请相信党lol

【在 i*****t 的大作中提到】
: 科学上讲,人的喉咙是不能承受尖矛的压力的。
: 科学上讲,人的脑袋无法击碎石头而不受伤。
: 科学上讲,男人的私物是脆弱的,怎么可能是铁档
: 科学上讲,人的眼球是脆弱的,怎么可能经受巨大压力没有爆掉
: 你没有练过硬气功,就不要说别人都是骗子或把戏。
: 气功就是一种与灵界沟通的活动。

avatar
w*g
18
quorum read/write 延时会成倍增加啊。其实只要quorum write就行了,但那样也有点
不值得,毕竟只要绝大部分时候consistent就行。但是因为写和读之间的时间非常短,
怕到不了eventual那一步,那样的话inconsistent就会成为常态。
话说有人知道eventual是几秒吗?貌似facebook也是受不了这个eventual改用别的了。

【在 g*****g 的大作中提到】
: I am not very clear about your requirement. But you can start with N>=6
: nodes, replication factor 3, and quorum read/write, that probably solves
: your problem already.

avatar
M*n
19
另外,科学上哪里讲了?请给reference, lol

【在 i*****t 的大作中提到】
: 科学上讲,人的喉咙是不能承受尖矛的压力的。
: 科学上讲,人的脑袋无法击碎石头而不受伤。
: 科学上讲,男人的私物是脆弱的,怎么可能是铁档
: 科学上讲,人的眼球是脆弱的,怎么可能经受巨大压力没有爆掉
: 你没有练过硬气功,就不要说别人都是骗子或把戏。
: 气功就是一种与灵界沟通的活动。

avatar
w*z
20
As goodbug said, quorum read/write pretty much gives you the strong
consistency
http://www.datastax.com/documentation/cassandra/1.2/cassandra/d

【在 g*****g 的大作中提到】
: I am not very clear about your requirement. But you can start with N>=6
: nodes, replication factor 3, and quorum read/write, that probably solves
: your problem already.

avatar
g*1
21
“科学上”是人名。。。

【在 M******n 的大作中提到】
: 另外,科学上哪里讲了?请给reference, lol
avatar
w*g
22
比如有两个node A,B, 两个用户a, b. 每个用户根据一个hash H(节点id, 用户id)
计算node的优先级. 那样就会出现下面这种情况
H(A, a) > H(B, a), 所以在AB都在线时a会先向A读写,然后A再后台传给B
H(B, b) > H(A, b), 在AB都在线时b会先向B读写,然后由B后台传给A.
这样只要两台机器都在线,那么就能分别负载50%的请求,并且保证看到的都是最新的
数据。

【在 z****e 的大作中提到】
: 说说什么是必需有主从关系?
: a & b两个nodes
: 你怎么判断主从?

avatar
D*r
23
说起这个来我还记得一个西班牙的id mengenderen说了要讲鬼故事来着,说着说着就不
来了。

【在 i*****t 的大作中提到】
: 不存在?为什么有那么多人遇到过?
: 存在?那你为何不信?
: 自己没经历就代表没有,典型唯心主义。
: 客观点吧,大千世界,无奇不有。
: 见过头顶批砖么?开始你可能认为是戏法,其实不然,乃是借助鬼神之力完成的,不信
: 去找个硬气功高手问问。

avatar
w*z
24
问题是你写的consistency level 是什么?如果是ONE. 如果写向A那不能保证B会有你
的数据, 如果A down 了,可能你就从B读不到数据。
避免这种情况,就要用quorum write. 你要等到两个node 都ack 了,你的写才是成功
的。
read 类似道理。

【在 w***g 的大作中提到】
: 比如有两个node A,B, 两个用户a, b. 每个用户根据一个hash H(节点id, 用户id)
: 计算node的优先级. 那样就会出现下面这种情况
: H(A, a) > H(B, a), 所以在AB都在线时a会先向A读写,然后A再后台传给B
: H(B, b) > H(A, b), 在AB都在线时b会先向B读写,然后由B后台传给A.
: 这样只要两台机器都在线,那么就能分别负载50%的请求,并且保证看到的都是最新的
: 数据。

avatar
i*t
25
不信鬼神就是唯心主义,以为没有见过就不存在
avatar
w*g
26

------------------------------------------------
A down了的情况可以允许从B读不到数据。但是我觉得能做到A在线的话永远优先从A读。
本来cassandra的latency已经比别人差一大截了。要是上quorum write就更不行了。我
一个请求来回也就几十毫秒的时间可以用。

【在 w**z 的大作中提到】
: 问题是你写的consistency level 是什么?如果是ONE. 如果写向A那不能保证B会有你
: 的数据, 如果A down 了,可能你就从B读不到数据。
: 避免这种情况,就要用quorum write. 你要等到两个node 都ack 了,你的写才是成功
: 的。
: read 类似道理。

avatar
w*z
27
比谁差一大截?
我们quorum write latency 90th percentile<2ms, quorum read 90th percentile <
10ms 几十ms 怎么都够用了
我们从 ws 出去 99th percentile read 也就 30ms, 99th percentile write < 5ms
看一下你的C* tune 好没有, schema 怎样,不觉得read/write consistencey 会有
多大影响。

读。

【在 w***g 的大作中提到】
:
: ------------------------------------------------
: A down了的情况可以允许从B读不到数据。但是我觉得能做到A在线的话永远优先从A读。
: 本来cassandra的latency已经比别人差一大截了。要是上quorum write就更不行了。我
: 一个请求来回也就几十毫秒的时间可以用。

avatar
z*e
28
不太可能吧
c*显然是要比其它快一大截才对
除非你们把c*调成了cp系统

读。

【在 w***g 的大作中提到】
:
: ------------------------------------------------
: A down了的情况可以允许从B读不到数据。但是我觉得能做到A在线的话永远优先从A读。
: 本来cassandra的latency已经比别人差一大截了。要是上quorum write就更不行了。我
: 一个请求来回也就几十毫秒的时间可以用。

avatar
z*e
29
大牛说得是

<

【在 w**z 的大作中提到】
: 比谁差一大截?
: 我们quorum write latency 90th percentile<2ms, quorum read 90th percentile <
: 10ms 几十ms 怎么都够用了
: 我们从 ws 出去 99th percentile read 也就 30ms, 99th percentile write < 5ms
: 看一下你的C* tune 好没有, schema 怎样,不觉得read/write consistencey 会有
: 多大影响。
:
: 读。

avatar
w*g
30
如果就是做key-value store,key很小value 20KB,quorum read能到10ms? 你要确认
的话我就放心上了。多谢多谢!write慢点也就忍了。

<

【在 w**z 的大作中提到】
: 比谁差一大截?
: 我们quorum write latency 90th percentile<2ms, quorum read 90th percentile <
: 10ms 几十ms 怎么都够用了
: 我们从 ws 出去 99th percentile read 也就 30ms, 99th percentile write < 5ms
: 看一下你的C* tune 好没有, schema 怎样,不觉得read/write consistencey 会有
: 多大影响。
:
: 读。

avatar
z*e
31
你应该试一下,而不是让他确认
而且从你上文看,估计是c*被改了
你还是试一下保险

【在 w***g 的大作中提到】
: 如果就是做key-value store,key很小value 20KB,quorum read能到10ms? 你要确认
: 的话我就放心上了。多谢多谢!write慢点也就忍了。
:
: <

avatar
w*g
32
redis-benchmark很好用。cassandra有类似的东西可以用吗?

<

【在 w**z 的大作中提到】
: 比谁差一大截?
: 我们quorum write latency 90th percentile<2ms, quorum read 90th percentile <
: 10ms 几十ms 怎么都够用了
: 我们从 ws 出去 99th percentile read 也就 30ms, 99th percentile write < 5ms
: 看一下你的C* tune 好没有, schema 怎样,不觉得read/write consistencey 会有
: 多大影响。
:
: 读。

avatar
g*g
33
With quorum read/write, it's strong consistency. And you are looking at
write at ms level, read a few times slower.

【在 w***g 的大作中提到】
: quorum read/write 延时会成倍增加啊。其实只要quorum write就行了,但那样也有点
: 不值得,毕竟只要绝大部分时候consistent就行。但是因为写和读之间的时间非常短,
: 怕到不了eventual那一步,那样的话inconsistent就会成为常态。
: 话说有人知道eventual是几秒吗?貌似facebook也是受不了这个eventual改用别的了。

avatar
w*g
34
我是要去试一下。但试一下也是要成本的,人有经验的在哪儿问一下有什么不好。

【在 z****e 的大作中提到】
: 你应该试一下,而不是让他确认
: 而且从你上文看,估计是c*被改了
: 你还是试一下保险

avatar
z*e
35
那好吧,我只是觉得你说的情况跟他说的情况有出入

【在 w***g 的大作中提到】
: 我是要去试一下。但试一下也是要成本的,人有经验的在哪儿问一下有什么不好。
avatar
g*g
36
你如果不需要强consistency,大可以READ ONE, 如果你写也不怕丢,还可以WRITE one
或者Write Any.

【在 w***g 的大作中提到】
: 如果就是做key-value store,key很小value 20KB,quorum read能到10ms? 你要确认
: 的话我就放心上了。多谢多谢!write慢点也就忍了。
:
: <

avatar
w*z
37
C* write 比read 快3-5 倍
古德霸那里有很好得benchmark
http://techblog.netflix.com/2011/11/benchmarking-cassandra-scal
http://techblog.netflix.com/2012/07/benchmarking-high-performan
C*用对了 schema 不能乱搞,绝对快。quorum read 10ms 没问题。你有live system
nodetool cfstats
nodetool cfhistograms
看一下。 只是 那个 cfhistograms 看起来很蛋疼,估计你没看过,很难看懂得。

【在 w***g 的大作中提到】
: 如果就是做key-value store,key很小value 20KB,quorum read能到10ms? 你要确认
: 的话我就放心上了。多谢多谢!write慢点也就忍了。
:
: <

avatar
w*z
38
其实C* write 99.999% 情况下不会丢。 Datastax 曾经说过很多customer 都是 read
/write one.我们不觉得C*有performance 问题,所以还是用local_quorum

one

【在 g*****g 的大作中提到】
: 你如果不需要强consistency,大可以READ ONE, 如果你写也不怕丢,还可以WRITE one
: 或者Write Any.

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。