Cassandra批处理操作唯一id
正如我们所知,时间uuid生成了一个与时间相关的唯一id,但是当我想在不同的表中添加相同的唯一id时会发生什么呢。假设我想复制与上传到不同表的图像相关的信息,因此在上传图像时,我会编写一个批处理语句,并在每个表中为图像提供一个Cassandra批处理操作唯一id,cassandra,cql,cql3,datastax-enterprise,Cassandra,Cql,Cql3,Datastax Enterprise,正如我们所知,时间uuid生成了一个与时间相关的唯一id,但是当我想在不同的表中添加相同的唯一id时会发生什么呢。假设我想复制与上传到不同表的图像相关的信息,因此在上传图像时,我会编写一个批处理语句,并在每个表中为图像提供一个唯一id,因此我使用时间uuid。。。那么所有的表都获得相同的id还是不同的id呢 我知道Cassandra没有模式,我不需要唯一的id,但我想使用memcached和elasticsearch更快地检索和搜索,如果我想编辑图像的信息,我将不得不在userid和其他信息的帮
唯一id
,因此我使用时间uuid
。。。那么所有的表都获得相同的id还是不同的id呢
我知道Cassandra没有模式,我不需要唯一的id,但我想使用memcached
和elasticsearch
更快地检索和搜索,如果我想编辑图像的信息,我将不得不在userid和其他信息的帮助下搜索它,然后我将能够更改价值在我看来,这是效率低下的
还有其他方法吗?每次生成基于时间的uuid
timeuuid
时,即使同时生成两个uuid,它也是唯一的。这是因为在timeuuid
中,它同时包含时间和一个非常大的随机数
如果要对多个表/记录使用相同的timeuuid
,请首先在代码中生成timeuuid
,然后使用预生成的timeuuid
将timeuuid>传递到两个表上的cql update语句中