gpt4 book ai didi

algorithm - 更改 CouchDB 中的 UUID 算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:09:28 27 4
gpt4 key购买 nike

这个问题引用的是 couchdb 1.5.0 版

就我的环境而言,我希望能够有效地对数据库中的文档进行排序,以便以后根据某种时间索引进行检索。我在网上看到couchdb中创建uuid的算法有四种。

此处列出了显示可用于生成 uuid 的算法的文档:http://couchdb.readthedocs.org/en/latest/config/misc.html#uuids-configuration

我怀疑默认的 uuid 算法设置是“连续的”,当发出 http://couchdb:5984/_uuids?count=50 并且我看到其中的大部分(如果不是全部)前 26 位数字相同,后 6 位是唯一的。

我尝试将算法更改为 utc 选项之一(“utc_random”或“utc_id”都可以),其中前 16 位是从 Unix 纪元开始的以微秒为单位的十六进制时间。

我用来更改 UUID 算法的方法是进入 local.ini 文件并附加以下节(之前没有):

[uuids]
算法 = utc_random

然后我重启 couchdb 服务

服务 couchdb 重启

当我再次查询一批 UUIDS 时,我仍然得到一个似乎表明正在生成的 uuid 仍在顺序算法中的结果。 (当我在此之后第二次查询 50 个 uuid 时,会注意到“顺序”算法行为)

我做错了什么吗?任何可以提供的帮助将不胜感激!

更新

在尝试了 Akshat Jiwan Sharma 建议的 curl 命令后,我重新研究了配置文件并找到了一个 default.ini 文件。这是似乎设置了 uuids 参数的文件,我用“utc_random”替换了“sequential”,重新启动了 couchdb 服务,一切都按预期工作。为了找到 couchdb 的配置文件,我使用了一个简单的命令行 couchdb -c 再次感谢您的所有帮助,你们真棒!

最佳答案

您可以检查几项内容。

  1. 您是否添加了另一个配置文件?您可以在 couchdb 中链接配置文件,如果您这样做,将仅使用链中最后一个文件的更改。

  2. 调用 http://localhost:5984/_config/uuids 获取有关 couchdb 使用的 uuid 算法的信息。你应该得到这样的结果

{"algorithm":"utc_random","max_count":"1000"}

您可以验证 couchdb 是否已获取您的配置。

您还可以通过 rest api 更改配置文件。这将有助于调试,因为您不需要再次重新启动 couchdb。这种方法的好处是只会改变相关的配置文件。

这里是你如何做到的

curl -X PUT http://localhost:5984/_config/uuids/algorithm -d '"utc_random"'

请注意,如果您在要更改的参数中有拼写错误,例如 ramdom 而不是 random (我实际上输入了那个!)couch db 将抛出运行时异常,您必须求助于手动更改配置文件。

关于algorithm - 更改 CouchDB 中的 UUID 算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24312743/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com