gpt4 book ai didi

sql - 使用 CQL 遍历 Cassandra 表的分区键

转载 作者:行者123 更新时间:2023-12-04 20:23:50 24 4
gpt4 key购买 nike

使用 CQL3,如何枚举 Cassandra 中表的所有分区键?特别是返回不同的键和对结果进行分页时会很复杂。

最佳答案

您可以按照以下示例进行操作。创建测试表:

> create table partition_keys_test (p_key text PRIMARY KEY, rest text);

并插入一些行,例如:
> insert into partition_keys_test (p_key, rest) VALUES ('1', 'blah');

我为 p_key '1', '2', ..., '9' 做了这个。

然后翻阅分区键。从...开始:
> select p_key from partition_keys_test limit 2;
p_key
-------
6
7

对于页面大小 2。然后,获取最后一个 p_key 结果并在下一个查询中使用它:
> select p_key from partition_keys_test where token(p_key) > token('7') limit 2;
p_key
-------
9
4

依此类推,直到您收到小于您的页面大小的结果。

请注意,您应该期望这会通读您的整个数据集。对于非常宽的行,它可能不会,但 I/O 仍然非常繁重。

此外,如果行被创建或删除并且具有比您到目前为止更高的标记,它们将出现在后续查询中。因此,如果您在创建或删除行时运行上述分页查询,则可能会或可能不会返回分区键,具体取决于时间。

关于sql - 使用 CQL 遍历 Cassandra 表的分区键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18230895/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com