Cassandra通过命令创建表失败

时间:2019-04-16 21:58:06

标签: cassandra

我正在尝试使用以下命令创建新表:

  

创建表schema2(城市varchar,位置列表,pop int,zip   varchar,状态varchar,主键(城市,邮政编码)),具有群集顺序   BY(城市ASC,zip DESC);

但是我得到了错误:

  

InvalidRequest:来自服务器的错误:代码= 2200 [无效查询]   message =“只能在聚类中定义聚类键列   ORDER指令”

我指定了我想要的主键,我只用主键进行了聚类排序,但是仍然会出错。我该如何解决?

1 个答案:

答案 0 :(得分:0)

  

创建表schema2(城市varchar,位置列表,pop int,zip   varchar,状态varchar,主键(城市,邮政编码)),具有群集顺序   BY(城市ASC,zip DESC);

在此定义中(city,zip)被称为PRIMARY KEY,city被称为分区密钥,而zip被称为集群密钥。数据基于分区键在所有节点之间分配。数据根据集群键在分区内排序。因此,您无法在城市执行订购。您提到的错误清楚地指出了它。如果您按照聚类顺序跳过城市,则将接受DDL。