使用cassandra-cli或CQL修改cassandra列族主键

问题描述:

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

具体而言,我现在有下表(从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吗?

主键直接确定cassandra如何以及在何处存储表(列族)中包含的数据。主键由分区键和集群键(可选)组成。

分区键确定哪个节点存储数据。它负责跨节点的数据分发。其他列确定每分区群集(请参阅compound key documentation)。

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