Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cassandra在执行查询时读取超时,以便进行批量删除_Cassandra_Cassandra 2.0_Cassandra 3.0_Tombstoning_Tombstone - Fatal编程技术网

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

Cassandra在执行查询时读取超时,以便进行批量删除,cassandra,cassandra-2.0,cassandra-3.0,tombstoning,tombstone,Cassandra,Cassandra 2.0,Cassandra 3.0,Tombstoning,Tombstone,我有三个节点的Cassandra集群。我想对每个节点中包含大约1 TB数据的特定表执行清理任务 表由多行创建了日期(时间戳)的订阅服务器组成,我想清除最新条目(创建日期)早于7天的订阅服务器的所有行 例如,在上面所附的样本数据中,我们必须删除订阅服务器2的所有行,而如果运行2019-12-10,则订阅服务器2的所有行将被保留 我们有大约10万的订户,为了获得记录总数,选择count(*)查询抛出下面的异常 ReadTimeout:来自服务器的错误:code=1200[协调器节点在等待副本节点的

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

表由多行创建了日期(时间戳)的订阅服务器组成,我想清除最新条目(创建日期)早于7天的订阅服务器的所有行

例如,在上面所附的样本数据中,我们必须删除订阅服务器2的所有行,而如果运行2019-12-10,则订阅服务器2的所有行将被保留

我们有大约10万的订户,为了获得记录总数,选择count(*)查询抛出下面的异常

ReadTimeout:来自服务器的错误:code=1200[协调器节点在等待副本节点的响应时超时]message=“操作超时-仅接收到0个响应。”info={'received_responses':0,'required_responses':1,'consistency':'ONE'}


我应该使用什么方法来读取Cassandra,因为这不能作为3 TB的巨大数据在内存中执行。

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

我们没有任何其他来源来获取必须删除的标识符,首先我们必须读取所有数据,然后删除它,然后再进行操作。我们读取cassendra的标准应该是什么。然后您的表结构错误,这就是您遇到此问题的原因。更新表结构有问题。您可以添加一个表,在其中存储订阅服务器的已知配置文件ID。然后迭代:从订阅服务器\u id=a和profile\u id=b的表中进行选择,这可能会导致我们进行10M次选择查询。是否有任何方法可以缓解这种情况。