Cassandra批处理操作唯一id

时间:2014-05-14 16:36:58

标签: cassandra cql cql3 datastax-enterprise

我们知道时间uuid会创建一个与时间相关的唯一ID,但是当我想在不同的表中添加相同的唯一ID时会发生什么。假设我想复制与上传到不同表格的图像相关的信息,以便在上传图像时我写一个批处理语句,在每个表格中我想给图像unique id,所以我使用time uuid ...所有表格都是相同的ID,或者它们是不同的。

我知道Cassandra是无模式的,我不需要唯一ID,但我想使用memcachedelasticsearch来更快地进行回溯和搜索,如果我想要发生什么会发生什么编辑图像信息我将在userid和其他信息的帮助下搜索它,然后我将能够更改值。对我而言,时间效率低下。

还有其他办法吗?

1 个答案:

答案 0 :(得分:2)

每当您生成基于时间的uuid timeuuid时,即使您同时生成两个,它也将是唯一的。这是因为在timeuuid内部,它包含时间和非常大的随机数。

如果要对许多表/记录使用相同的timeuuid,请先在代码中生成timeuuid,然后将timeuuid传递给cql update语句这两个表都使用您预先生成的timeuuid