首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在couchdb从1.6.1迁移到2.3.1的过程中,由于内存问题,couchup实用程序花费了大量时间重新构建视图

在couchdb从1.6.1迁移到2.3.1的过程中,由于内存问题,couchup实用程序花费了大量时间重新构建视图
EN

Stack Overflow用户
提问于 2020-12-16 15:37:45
回答 1查看 134关注 0票数 2

在我将couchdb从1.6.1迁移到2.3.1的过程中,couchup实用程序花了很多时间来重建视图。couchup实用程序存在内存问题。数据库大小为500 GB。这需要永远的时间。已经快5到6天了,还没有完成。有没有办法加快速度呢?

当尝试进行复制时,在couchup运行2-3分钟后,couchdb会因为内存泄漏问题而死,然后再次启动。复制大约需要10天。对于replicate,它显示进度条,但对于rebuild视图,它不显示进度条。我不知道已经完成了多少。

couchdb安装在RHEL Linux服务器上。

EN

回答 1

Stack Overflow用户

发布于 2020-12-17 02:51:58

减少积压增长:

当couchup遇到超过5秒才能重建的视图时,couchup将继续调用额外的视图urls,从而触发它们的重建。一旦一些长时间运行的视图重建正在运行,即使是较短的重建也将至少需要5秒,从而导致大量积压。如果单个数据库很大,或者(map/reduce函数效率非常低),最好将超时设置为5分钟左右。如果您看到的不止两个:

代码语言:javascript
复制
 Timeout, view is processing. Moving on.

消息可能是时候取消couchup并将超时时间增加一倍。

观察指数增长

默认情况下,view_index_dir与数据库目录相同,所以如果数据在/var/lib/couchdb/shards中,那么/var/lib/couchdb就是配置目录,索引存储在/var/lib/coucdh/.shards中。您可以观察哪些索引碎片文件正在创建和增长,或者将view_index_dir移动到单独的位置以便于观察。

哪些资源即将耗尽?

一般来说,您可以调优couchdb,如果系统没有重新构建所有索引,则很难说是否需要调优,等等。

特别是,您可能希望查找并禁用任何自动压缩。查看/proc/[couchdb proc]中的文件,找出有效的fd限制,有多少打开的文件,以及崩溃是否发生在特定数量的打开的文件周围。由于分片,打开文件的数量通常是早期版本的倍数。

查看内存增长情况,找出它是否足够稳定,以便使用交换来防止问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65319019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档