蒂姆,你真的应该分别张贴你的问题,而不是作为一个问题的任择议定书,它不是。
但是,为了回答,首先,在去阅读http://www.slideshare.net/benjaminblack/introduction-to-cassandra-replication-and-consistency本黑色的幻灯片。
完成?好了,现在的具体问题:
“怎么会在[副本]数据状态的差异可以在随后的和解读?”
最高时间戳获胜。
“所有区域的工作时间是否与系统时钟相同?”
时间戳由客户端(即您的应用服务器)提供。它们应该与例如ntpd(这是很好的做法),但高精度不是必需的,因为如果排序很重要,您应该通过使用唯一列名或通过使用外部锁来避免冲突。
例如:如果你有一个用户列表之后,你在Twitter的克隆,你应该给每个跟随自己的列,并会有没有办法丢失数据无论多么不同步的时钟是。
如果您对您的网站和两个管理员上传新图标的管理工具“同时,”一个更新要赢,它并没有真正无论哪个。在这里,你确实希望你的时钟同步,但“几ms内”已经足够接近。
如果要管理用户注册,并要允许创建帐户“jbellis”只有当它不存在,你需要一个锁管理器,不管你怎么时钟密切synchronzied是。
“陈旧的数据会返回吗?”
节点(比“区域”更好的思考单位)在其停机时间内不会丢失数据,直到通过读取修复,暗示切换或反熵修复发送该数据为止。同时,它将回复读取陈旧数据的请求;如果使用足够高的一致性级别,读取请求将等待足够的其他回复,以确保始终能够看到最新版本,这可能意味着如果有足够的其他副本停机,则无法完成请求。否则,低一致性级别(例如ONE)隐含地意味着“我明白,我用较低的一致性级别获得的较高的可用性和较低的延迟意味着我可以在停机后临时看到陈旧的数据。”
这是一个主观问题。你特意征求意见。 – TheCloudlessSky 2011-01-31 12:26:21
感谢您的时间。任何人都可以提出自己的看法,但我可以选择和研究更多关于他们的意见以及它如何适合我。我有机会跟随和研究他们的意见。这就是要求提出宝贵意见的原因。 – NANI 2011-01-31 12:32:54