CouchDB中的UUIDs

CouchDB中的UUIDs,couchdb,uuid,Couchdb,Uuid,我想知道UUID默认用CouchDB表示的格式。虽然RFC 4122描述了UUID,如550e8400-e29b-11d4-a716-446655440000,但CouchDB连续使用字符,如3069197232055D39BC5BC9348A36417。我在他们的维基和文档中搜索了一段时间,但是没有任何结果 您知道这是一种省略所有-的非RFC格式,还是一种完全不同的128位表示形式吗 背景是我正在使用Java UUID,其格式如RFC中所述。我看到了CouchDB样式的优点,它可能更便于构建内

我想知道UUID默认用CouchDB表示的格式。虽然RFC 4122描述了UUID,如
550e8400-e29b-11d4-a716-446655440000
,但CouchDB连续使用字符,如
3069197232055D39BC5BC9348A36417
。我在他们的维基和文档中搜索了一段时间,但是没有任何结果

您知道这是一种省略所有
-
的非RFC格式,还是一种完全不同的128位表示形式吗


背景是我正在使用Java UUID,其格式如RFC中所述。我看到了CouchDB样式的优点,它可能更便于构建内部树,但我希望确保使用一致的实现。

正如您所注意到的,从技术上讲,我们不将rfc标准用于UUID。版本4 uuid保留类似四位的内容来指定uuid的版本。我们也不使用通常在其他实现中看到的连字符格式化它们

CouchDB UUID是16个随机字节,格式为十六进制。粗略地说,这是一个v4 uuid,但不符合rfc

不管具体情况如何,实际上没有太多问题。通常不应该尝试解释uuid,除非您尝试进行某种带外分析。CouchDB永远不会解释UUID,我们只依赖其中涉及的随机性特性


底线是不必担心,只需在生成后将其作为字符串处理。

K我可以从doc站点提供一些2019年参考:“在任何情况下,最好提供自己的uuid”——

我之所以这么做是因为(嗜好)db是我第一次尝试编程的东西,它处理的是一个生成并使用4122兼容UUID的应用程序,我非常担心去掉“-”位并将其放回检索

在我意识到couchdb用作文档id的uuid是字符串而不是数字之前。。。doh。因此,我使用应用程序在创建对象以标识文档时生成的uuid。没有随机重复的UUID