我是cassandra db的新成员,现在我正在处理它,查询选择出现了问题。
这是我的Cassandratable:
CREATE TABLE abc (
module text,
cid uuid,
date timestamp,
oid int,
PRIMARY KEY (module, cid)
)
在此表上,我需要创建一个查询:
select * from abc where module=aaa
此查询返回一个超时值,表示:
<SELECT * FROM canibis.cacherefresh WHERE module = Listing LIMIT 5000>, total time 5031 msec, timeout 5000 msec/cross-node
问题是:我按分区键过滤,但日志上说跨节点,有人知道为什么吗?
1条答案
按热度按时间sc4hvdpw1#
此查询返回一个超时值,表示:
<select*from canibis.cacherefresh where module=listing limit 5000>,总时间5031毫秒
这不是超时,当某些操作按预期被认为很慢时,会记录此消息。此消息只是通知观察到操作缓慢。
问题是:我按分区键过滤,但日志上说跨节点,有人知道为什么吗?
如果您的查询需要转到其他节点完成,那么它就变成了跨节点操作。所以上面的消息只是告诉你,你的操作是缓慢的,这是节间操作,这就是为什么它说超时5000毫秒/跨节点。
如果这样的消息很少,那么可能是由于gc暂停。