我使用的是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实现吗?
发布于 2013-08-26 17:38:35
主键直接决定cassandra如何以及在何处存储表(列族)中包含的数据。主键由分区键和集群键组成(可选)。
分区键确定哪个节点存储数据。它负责跨节点的数据分发。附加的列决定了每个分区的集群(请参见compound key documentation)。
因此,更改主键将始终需要迁移所有数据。我不认为cqlsh或cassandra-cli对此有命令(截至2015年)。
https://stackoverflow.com/questions/18421668
复制相似问题