11

我正在使用 Cassandra 1.2.5。使用 cassandra-cli 在 Cassandra 中创建列族后,是否可以使用 cassandra-cli 或 CQL 修改列族的主键?

具体来说,我目前有下表(来自 CQL):

CREATE TABLE "table1" (
  key blob,
  column1 blob,
  value blob,
  PRIMARY KEY (key, column1)
);

我希望表如下,而不必删除并重新创建表:

CREATE TABLE "table1" (
  key blob,
  column1 blob,
  value blob,
  PRIMARY KEY (key)
);

这可以通过 cassandra-cli 或 CQL 实现吗?

4

1 回答 1

16

主键直接决定 cassandra 存储表(列族)中包含的数据的方式和位置。主键由分区键和集群键(可选)组成。

分区键确定哪个节点存储数据。它负责跨节点的数据分发。附加列确定每个分区的集群(请参阅复合键文档)。

因此更改主键将始终需要迁移所有数据。我不认为 cqlsh 或 cassandra-cli 有这个命令(截至 2015 年)..

于 2013-08-26T09:38:35.207 回答