卡桑德拉TimeOut?

时间:2014-10-31 17:20:34

标签: cassandra timeout cqlsh

我在单个表中有一个大型数据集(超过200万行,每行超过100列),几个月前存储在cassandra中(可能是2个?)我能够执行一个简单的命令来跟踪该表中的记录数量:

SELECT count(*) from mydata limit 11111111;

几天前,我尝试了同样的命令并收到以下错误:

errors={}, last_host=168.176.61.25

错误本身并没有多说,经过谷歌的一些研究后我认为它可能与超时有关。正如您可能期望更短的运行查询正确执行,并且错误总是在处理10秒后出现。

据我了解,cassandra的超时时间是在cassandra.yaml中设置的,我更改了以下值

read_request_timeout_in_ms:25000

range_request_timeout_in_ms:25000

request_timeout_in_ms:25000

然而,错误没有任何变化,并且在相同的10秒后仍然失败,

有什么想法吗?

非常感谢

Fuanka

1 个答案:

答案 0 :(得分:1)

如果您只想计算记录数,请不要使用count(*),在您的架构中放置一个计数器列:http://www.datastax.com/documentation/cql/3.0/cql/cql_using/use_counter_t.html

如果您还需要获取其他操作的所有数据,这种超时有多种原因,如果需要,我可以为您提供一些。