如何压缩uuid和timeuuid?

时间:2016-06-06 21:34:17

标签: java php cassandra uuid timeuuid

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

在Cassandra数据库中,由于其概念,我使用 uuid timeuuid 作为我们的实体标识符,现在我想压缩 uuid 和< strong> timeuuid 或当客户端(用户)可以在网址栏中看到ID时减小其大小。

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

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

现在顺便提一下,是否有任何方法或功能/算法来获得更小或压缩版本的uuid或timeuuid?

1 个答案:

答案 0 :(得分:3)

很久以前Twitter最初开发Snowflake,我相信Twitter仍在使用这个ID。现在有many flake id implementations可用,可以生成类似UUID而不是真正的UUID。我在我的一个项目中使用了Flake Java