使用CassandraDB/MongoDB等进行自动增量/序列仿真

abo*_*sun 9 mongodb cassandra nosql

我正在尝试使用nonsql Cassandra DB构建小型网络系统(url快捷方式),我堆栈的问题是id自动生成.

有人已经堆积了这个问题吗?

谢谢.

PS UUID不适合我,我需要使用从0到Long.MAX_VALUE(java)的所有数字.所以我确实需要一些与sql序列完全相同的东西

更新:

我不熟悉GUID ID的原因在于我的应用程序范围.

我的应用程序有url快捷方式部分,我确实需要尽可能缩短网址.所以我遵循下一个方法:我从0开始将数字转换为base64字符串.所以在结果我有像mysite.com/QA(其中QA是基本64字符串)的网址.

这很容易使用SQL DB实现,我只是使用自动递增的ID,将其转换为URL并确保100%,该URL是唯一的.

wum*_*ump 3

自动增量 ID 本质上不能很好地扩展,因为它们需要单一来源来生成数字。这就是为什么 MongoDB 等可分片/可复制数据库使用更长的、类似 GUID 的对象标识符。为什么你如此需要 LONG 值?

您也许可以使用原子增量来完成此操作,保留旧值,但我不确定。这仅限于单服务器设置。