映射Cassandra超级列
我猜每个和卡桑德拉玩过的人都读过这篇文章 我试图在CassandraCli上创建我的模式,但是我有很多问题,有人能给我指引正确的方向吗?我试图创建一个类似的结构,就像文章中的注释列族 在CassandraCli终端I中,类型:映射Cassandra超级列,cassandra,super-columns,Cassandra,Super Columns,我猜每个和卡桑德拉玩过的人都读过这篇文章 我试图在CassandraCli上创建我的模式,但是我有很多问题,有人能给我指引正确的方向吗?我试图创建一个类似的结构,就像文章中的注释列族 在CassandraCli终端I中,类型: create column family posts with column_type = ‘Super’ and comparator = ‘AsciiType’ and subcomparator = TimeUUIDType; 它工作正常,没有文档告诉我,如果我添
create column family posts with column_type = ‘Super’ and comparator = ‘AsciiType’ and subcomparator = TimeUUIDType;
它工作正常,没有文档告诉我,如果我添加一个column\u元数据属性,这些属性将用于超级列,因为我的列族是super类型,我找不到它是否为true,因此:
create column family posts with column_type = ‘Super’ and comparator = ‘AsciiType’ and subcomparator = ‘TimeUUIDType’ and column_metadata = [{column_name:'body'}];
我试图创建与本文的注释列系列相同的内容,但是当我尝试填充
set posts['post1'][timeuuid()][body] = ‘Hello I am Goku!’;
我得到:
无效的UUID字符串:正文
我想,因为我选择了timeuuid类型的子比较程序,并且主体是字符串,所以它应该是timeuuid,那么,在创建文章注释时,超级列(timeuuid类型)中的列如何能够保存具有字符串类型名称的列呢
谢谢你试过引用
的“body”
set posts['post1'][timeuuid()]['body'] = ‘Hello I am Goku!’;
我想您切换了comparator类型和subcomparator类型的应用。在超级列族中,comparator_类型应用于超级列名称,subcombparator_类型应用于子列名称 切换比较器类型,您的第一个示例应该可以工作。我尝试了:
set posts[1][timeuuid()]['body'] = 'Hello I am Goku!';
它起作用了…
设置posts[1][timeuuid()][utf8('body')]=“你好,我是小悟空!”代码>
正确答案应该是
:p+1代表1询问有关卡桑德拉的问题的人。看到有人对SQL以外的东西感兴趣真是令人耳目一新。。。