【发布时间】:2018-11-11 06:57:53
【问题描述】:
cql 查询字符串有最大长度限制吗?
我计划执行这种形式的长查询:select * from table where key in ('abc', 'xyz', ...),我估计查询字符串的长度在最坏的情况下约为 60kB。
【问题讨论】:
-
正如 Alex 所指出的,查询字符串的长度不会像 60K 的
IN参数那样成为问题。这称为“多键查询”,是 Cassandra 中已知的反模式。它如此糟糕的原因是它必须选择一个协调器(无论您使用哪个 LoadBalancingPolicy),并且该协调器必须访问集群中的每个节点才能满足此查询。专业提示:将IN参数的数量保持在您可以用一只手计算的数量。 -
如果我之前的评论不够令人信服,我会补充说,像这样的问题最终会成为 Cassandra 会议演示文稿的一部分,标题为“不要这样做。”
标签: cassandra datastax cassandra-3.0 datastax-java-driver