【发布时间】:2018-08-31 17:10:37
【问题描述】:
我已经从一个节点拍摄了完整的快照。我已经复制了快照目录,放在恢复节点的/var/lib/cassandra/data/Keyspace/Tables/目录下。我已经尝试过重新启动服务并尝试使用nodetool refresh 命令来恢复新节点中的数据。它就像一个魅力。
我无法列出记录数较多的表的记录数。对于具有较高记录的表,我正面临 Connection timed out 错误。所以我无法验证表中的全部数据是否已成功恢复。
我还尝试使用nodetool cfstats -H 和nodetool tablestats -H 检查键空间占用的大小,“使用的空间”参数似乎完全匹配。
我使用下面的命令来列出特定表的总数。
select count(*) from milestone LIMIT 100000;
我的问题:
如果在恢复过程中丢失的记录很少怎么办?如果备份和恢复数据的计数不匹配,我无法知道怎么办。您能否建议验证恢复是否成功的方法?
如何确保成功复制的记录总数?
【问题讨论】:
-
计数操作非常昂贵。如果你觉得你需要这样做,cqlsh 有一个控制请求超时的参数。你可以试试看。 --request-timeout="timeout" 是参数。 docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlsh.html
标签: cassandra cassandra-2.0 cassandra-3.0