cassandra在执行查询时读取超时,以便进行批量删除

58wvjzkj  于 2021-06-14  发布在  Cassandra
关注(0)|答案(1)|浏览(426)

我有三个节点的cassandra集群。我想对每个节点中包含大约1tb数据的特定表执行清理任务。

表包含多行具有创建日期(时间戳)的订阅服务器,我要清除最新条目(创建日期)早于7天的所有订阅服务器行。
例如,在上面所附的示例数据中,我们必须删除订阅服务器2的所有行,而如果运行2019-12-10,订阅服务器2的所有行都将保留。
我们有大约10米的订户,为了得到总的记录数,选择count(*)查询抛出下面的异常
readtimeout:来自服务器的错误:code=1200[coordinator node timed out waiting for replica nodes'responses]message=“操作超时-仅收到0个响应。”info={'收到的\u响应':0,'必需的\u响应':1,'一致性':'一'}
我应该用什么方法来读取cassandra,因为这不能在内存中作为3tb的大数据执行。

rlcwz9us

rlcwz9us1#

您的计数查询正在执行完整表扫描。这就是它超时的原因。您需要使用分区/群集密钥删除数据。

相关问题