如何在cassandra中用CQL3创建一个计数器列族?
我经常使用: CREATE COLUMNFAMILY userstats (username varchar主键,图像计数器) WITH default_validation=counter AND comment='User Stats';
现在,当我在CQL3中运行它时,我得到: Bad Request: default_validation不是CREATE COLUMNFAMILY的有效关键字参数
发布于 2012-06-06 02:30:33
CQL3不再坚持“动态列名”模型。它仍然可以生成任意宽的cassandra行,但它们看起来像CQL中的“普通”窄表,所有列都已命名和定义。这就是为什么CQL3不再支持设置default_validation或comparator等。
在CQL3中做任何重要的事情之前,您应该先阅读并理解http://www.datastax.com/dev/blog/schema-in-cassandra-1-1。
然而,您的问题的答案是,它就像去掉default_validation一样简单
CREATE TABLE userstats (
username varchar PRIMARY KEY,
images counter
) WITH comment='User Stats';尽管不清楚您是否打算在那里每行使用多个计数器,因为您需要一个default_validation。如果你这样做了,并且你的comparator应该是varchar,你可以这样做:
CREATE TABLE userstats (
username varchar,
countername varchar,
value counter,
PRIMARY KEY (username, countername)
) WITH comment='User Stats';..and让images只是其中一个对立面名称。
https://stackoverflow.com/questions/10871595
复制相似问题