如何压缩uuid和timeuuid?

M98*_*M98 1 php java uuid cassandra timeuuid

uuid或通用唯一标识符和timeuuid是长 128 位值。

在 Cassandra 数据库中,由于它的概念,我使用uuidtimeuuid作为我们的实体标识符,现在我想压缩uuidtimeuuid或在客户端(用户)可以在 URL 栏中看到 id 时减小其大小。

例如 Twitter 也使用了 Cassandra,但是当你打开一条推文时,推文的 id 就像是10153967535312713一个简单的uuid就像10646334-2c02-11e6-bb4a-7720eb141b83是更多的字符而不是用户友好的(当然这两个 ID 都不是用户友好的:D)

在不同的编程语言中都有一些压缩函数,例如PHP中的gzcompress和 Java中的GZIPOutputStream,但是这些函数(类)会压缩数据并以GZIP格式返回,这在URL中是不允许使用的!

现在顺便说一下,有没有什么方法或函数/算法来获得更小或压缩版本的 uuid 或 timeuuid?

std*_*bar 5

Twitter很早以前就开发了Snowflake,相信 Twitter 还在用的就是这个 id。现在有许多可用的flake id 实现可以生成类似 UUID 的数字而不是真正的 UUID。我在我的一个项目中使用了Flake Java