Sorting Cassandra在同一列上更新和排序
我正在寻找有关cassandra数据建模的一些输入,用于时间轴类型的功能。为了存储时间线的数据,我计划在cassandra中使用Sorting Cassandra在同一列上更新和排序,sorting,cassandra,updating,timeline,timeuuid,Sorting,Cassandra,Updating,Timeline,Timeuuid,我正在寻找有关cassandra数据建模的一些输入,用于时间轴类型的功能。为了存储时间线的数据,我计划在cassandra中使用timeuuid,并将其作为集群键。这将有助于对数据进行排序。但是相同的数据可以更新,我需要存储与数据对应的更新的timeuuid,以便可以在时间轴中向上推送它。这涉及获取以前的数据timeuuid行,删除它并插入新的一行。但似乎没有表现出来。如何在同一列(在我的例子中是timeuuid)上处理排序和更新以实现时间线功能 我建议您使用以下模式: CREATE TABLE
timeuuid
,并将其作为集群键。这将有助于对数据进行排序。但是相同的数据可以更新,我需要存储与数据对应的更新的timeuuid,以便可以在时间轴中向上推送它。这涉及获取以前的数据timeuuid行,删除它并插入新的一行。但似乎没有表现出来。如何在同一列(在我的例子中是timeuuid)上处理排序和更新以实现时间线功能 我建议您使用以下模式:
CREATE TABLE timeline_idx {
timeline_key text,
time timeuuid,
content_key text,
PRIMARY KEY ((partition_key), time)
}
CREATE TABLE timeline_content {
content_key text,
content blob,
PRIMARY KEY (content_key)
}
Timeline_idx用于为您提供按时间线排序的内容键。然后,您可以在第二个名为timeline_content的表中检索内容。它没有排序,也没有集群密钥。您可以在不知道其timeuuid的情况下更新内容。我为时间线键和内容键选择文本类型,但只要它唯一地标识时间线和内容,您可以选择任何您想要的内容。我建议您使用此模式:
CREATE TABLE timeline_idx {
timeline_key text,
time timeuuid,
content_key text,
PRIMARY KEY ((partition_key), time)
}
CREATE TABLE timeline_content {
content_key text,
content blob,
PRIMARY KEY (content_key)
}
Timeline_idx用于为您提供按时间线排序的内容键。然后,您可以在第二个名为timeline_content的表中检索内容。它没有排序,也没有集群密钥。您可以在不知道其timeuuid的情况下更新内容。我为时间线键和内容键选择文本类型,但您可以选择任何您想要的,只要它唯一地标识时间线和内容。仍然是相同的问题,因为他希望更新时间戳和帖子内容。需要从timeline_idx中删除,并进行新的插入。不确定这里最好的模型是什么。或者只是做一个新的插入。客户端可以从timeline\u idx中筛选不同的内容\u键。仍然存在相同的问题,因为他希望更新时间戳以及帖子的内容。需要从timeline_idx中删除,并进行新的插入。不确定这里最好的模型是什么。或者只是做一个新的插入。客户端可以从timeline\u idx中筛选不同的内容\u密钥。