我将很快从1扩展到2个dc,因此我有点担心当使用本地\u quorum时会发生什么,我有一个dc坏了。假设我有两个dc:dc1和dc2。键空间a将沿着d1和d2进行复制。如果在使用本地仲裁在dc1中写入时无法将写入复制到dc2,那么提示的大小将是一个问题。我知道,由于使用了本地仲裁,写操作将被认为是成功的,但是由于数据需要复制,以便可以在dc2中读取相同的数据,以便进行分析,因此cassandra提示的建立会有问题吗?
idfiyjo81#
这实际上取决于写操作的数量,以及您希望如何从停机时间中恢复,以及停机时间有多大:cassandra还是会向所有节点发送写操作- LOCAL_* 只是说确认应该来自当地的dc如果另一个dc关闭,则会将提示写入磁盘,并在dc打开后重放如果dc停机时间超过 max_hint_window_in_ms ,则无论如何都需要执行修复,因此重放提示只会给服务器增加额外的负载如果您预期dc将在较长时间内一直处于关闭状态,则可以通过禁用为另一个dc写入提示 hinted_handoff_disabled_datacenters 设置-但您需要在dc返回后执行修复。p、 我看到了 datastax 标签-这是否意味着你在使用dse?如果是,什么版本?因为在dse6.x中,nodesync可以跟踪丢失的数据。
LOCAL_*
max_hint_window_in_ms
hinted_handoff_disabled_datacenters
datastax
1条答案
按热度按时间idfiyjo81#
这实际上取决于写操作的数量,以及您希望如何从停机时间中恢复,以及停机时间有多大:
cassandra还是会向所有节点发送写操作-
LOCAL_*
只是说确认应该来自当地的dc如果另一个dc关闭,则会将提示写入磁盘,并在dc打开后重放
如果dc停机时间超过
max_hint_window_in_ms
,则无论如何都需要执行修复,因此重放提示只会给服务器增加额外的负载如果您预期dc将在较长时间内一直处于关闭状态,则可以通过禁用为另一个dc写入提示
hinted_handoff_disabled_datacenters
设置-但您需要在dc返回后执行修复。p、 我看到了
datastax
标签-这是否意味着你在使用dse?如果是,什么版本?因为在dse6.x中,nodesync可以跟踪丢失的数据。