簡體   English   中英

MongoDB在服務器上的讀取性能非常慢

[英]MongoDB very slow read performance on server

基本上,我有執行批處理作業的Windows服務。

我有兩個相關的集合,customerAccounts和事件。 事件收集記錄客戶在站點上執行的操作,包括時間戳,事件名稱,發生的頁面以及用戶名。

該服務遍歷每個帳戶,並根據其在事件集合中具有的事件和一組用戶定義的規則,計算出其旅行階段和帳戶關閉的風險。

目前,我的數據庫中大約有3500個帳戶和大約100,000個事件。 在我的開發PC上運行該服務僅需一分鍾多一點,但在服務器上卻要花很長的時間(我估計修改該服務大約需要2.5個小時,因此只能在一個客戶帳戶上執行該工作。

我的機器是具有16GB RAM的Core i7,服務器是具有24GB RAM的Intel Xeon E5-2609(64位,Win 2008 R2)。 我將數據庫放在一台更舊的服務器(32位,Windows 2003)上,該服務運行了大約2分鍾。 因此,我知道在我的開發機上只需要一分鍾多的時間,而在較舊的服務器硬件上只需要2分鍾多的時間,而在現代服務器上則需要幾個小時。

最初,Mongo Shell警告服務器上已啟用NUMA,應將其關閉以避免性能問題。 此后已關閉,但似乎對性能沒有影響。

當我運行db.currentOp(); 在服務器上,我注意到它總是有某種性質的查詢“ createIndexes”(索引是在很久以前創建的),但是當我mongodump /將數據庫還原到我的開發機並運行service / currentOp時,“ createIndexes”查詢不存在。 除此之外,似乎沒有其他事情讓我跳出來。

在這個神秘的性能問題上,沒有人有任何想法/幫助嗎? 如果需要的話,我會發布currentOp / mongostats。

快速解答:我重新安裝了Mongo。 沒有花哨的配置,只需運行安裝程序即可解決此問題。

我從來沒有弄清楚Mongo為什么不斷創建索引。 一天的事件日志中,日志文件的大小為0.25GB,用於“創建索引”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM