1

使用这种 cassandra 配置:

Connected to Test Cluster at localhost:9161.
[cqlsh 4.0.1 | Cassandra 2.0.1 | CQL spec 3.1.1 | Thrift protocol 19.37.0]

当我尝试这样做时:

ALTER TABLE snpSearch WITH compaction_strategy_class='SizeTieredCompactionStrategy'

我收到此错误:

Bad Request: Unknown property 'compaction_strategy_class'

我知道 SizeTieredCompactionStrategy 是默认策略,但我还想修改 sstables 大小,并且:

ALTER TABLE snpSearch WITH compaction_strategy_class='SizeTieredCompactionStrategy' AND  compaction_strategy_options:sstable_size_in_mb:10;

给我这个错误:

Bad Request: line 1:116 mismatched input ':' expecting '='

我阅读了 cql 文档,应该是正确的,有人知道可能是什么问题吗?

谢谢

4

1 回答 1

3

正确的格式是:

ALTER TABLE snpSearch WITH compaction={'class':'SizeTieredCompactionStrategy'};

此处描述了命令WITH选项的格式。重要的部分是:ALTER

[...] 支持的(和语法)与 CREATE TABLE 语句 [...]

CQL3.1 文档中的示例显示了如何设置压缩和压缩策略。

(经过测试[cqlsh 4.0.1 | Cassandra 2.0.1 | CQL spec 3.1.1 | Thrift protocol 19.37.0]。)

于 2013-11-05T16:52:17.717 回答