我正在阅读教程,其中讲师说行中列的默认顺序是UTF8-tye
。但他没有进一步谈及这一点。
我不明白这是什么意思。特别是如果我的列是不同类型的,例如int
, timestamp
etc.
另外,我如何将列上的排序顺序指定为“UTF8 类型”以外的其他顺序。
他谈论的是列名称,而不是列值。
在旧的 cassandra 版本中,您可以使用 SuperColumns,它是行中列的集合。像这样的东西:
{ RowKey:
{ SuperColumn1Key: {c1:v, c2:v .... } },
{ SuperColumn2Key: {c1:v, c2:v .... } },
{ SuperColumn3Key: {c1:v, c2:v .... } }
}
这与今天的宽行类似。比较器可以建立行内超级列的排序,也可以按列的名称对列进行排序(您可以在 SuperColumnFamily 中选择两个不同的比较器,一个用于超级列排序,另一个用于列排序)。例如,对超级列使用 TimeUUID 比较器,您可以检索按时间排序的它们,而 UTF8Type 是“字母”排序。
想象一下 UTF8 列比较器中的这一行:
{ id: {"author":"john", "vote": 3} }
现在让我们添加一个新列,例如文本。由于它是 utf8,“text”(“a”
{ id: {"author":"john", "text": "blablabla", "vote": 3} }
不过我认为你看到的是一个旧视频,因为这个概念在新版本中不再使用
HTH,卡洛
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)