CouchDB延迟构建索引(Windows Server 2008 R2上的CouchDB 1.5.0)
据我所知,CouchDB会根据索引文件的名称散列每个设计文档的源代码.每当我更改源代码时,都需要重建索引. CouchDB在第一次请求文档时执行此操作.
我期望发生什么,想要发生什么 每次我更改设计文档时,对视图的第一次调用将比平时花费更长的时间并且可能会超时.该指数将继续建立.完成此操作后,视图将仅处理更改并且速度非常快. 实际发生了什么 >第一次运行修改后的视图时,我在状态窗口中看到该过程,慢慢达到100%.这大约需要2个小时.在此期间,所有CPU都得到充分利用. 如果我在达到状态4)时再次请求视图,则3)的特征再次开始.我必须在5到50次之间重复这个过程,直到我最终可以检索视图值. 如果视图在第1阶段或第2阶段第二次被请求,那么它肯定会耗尽内存而我必须重新启动CouchDB服务.尽管我的DB在运行一个作业时很少使用超过2 GByte,并且在正常操作中超过4 GByte. 我试图调整配置设置,添加更多内存,但似乎没有任何影响. 我的问题 我是否误解了运行视图的概念或者我的设置有问题? 上下文 我的文件非常大(1到20 MB).它们包含的数据结构良好,通常是网络分析报告,并且在关系数据库中可以存储为几个10k行的数据. 我的地图功能提取这些行.它将维度返回为关键数组.键阵有时超过20列.大多数视图只有不到10列. reduce函数将使用相同的键聚合(求和)行中的所有值.度量标准存储在字典中,可能包含不同的密钥. reduce函数标识一个文档中缺少的键,并将这些键添加到聚合为0. 我在Windows Server 2008 R2上使用CouchDB 1.5.0,具有2CPU和8 GB内存. 视图使用couchjs查询服务器以javascript编写. 我的设计文档通常由几个视图组成,其中“_lib”视图不发出任何数据,但包含由实际视图访问的详尽功能库. 解决方法
这是一个已知的问题,但以防万一:如果你有数十亿字节的文档,你可以忘记减少功能.只有
build-in ones可以足够快地工作.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何在Windows中打开文件而不阻止其重命名
- cef3:禁止win10高dpi下cef对内部网页进行缩放
- Windows操作系统中是否存在零拷贝?
- windows-7 – 我应该在Windows 7 RC XP模式下安装防病毒软件
- windows-xp – 无需登录即可在计算机上创建用户配置文件
- windows – PROCESS_TERMINATE的SetSecurityInfo失败
- windows-phone-7 – 使用来自隔离存储的背景图像路径创建辅
- windows-phone-7 – 禁用Windows Phone中scrollviewer的垂直
- windows – PE – 区分数据与函数导出
- (一个Windows人员问)在Linux上测量磁盘延迟:我是否烦心?