2013-07-15 93 views
3

我是MongoDB分片的新手,我們正面臨性能問題。我用三臺服務器測試了很多測試用例,我覺得與單個服務器上的單一實例mongod相比,MongoDB sharding不會提供更好的性能。MongoDB分片性能不佳

我正確嗎?如果我不正確,請提供測試集,分片鍵和負載測試程序。

測試用例1:

我沒有單個實例之間的一個負載測試上的mongod和單個碎片(http://docs.mongodb.org/manual/core/sharded-cluster-architectures-test/)和I中,因爲mongos和配置服務器的分片設置觀察到40%的性能下降。

mongos和config server是否佔用40%的服務器資源?

測試案例2:

我們觀察到的mongod實例的單個實例10K TPS。我們在三臺具有相同容量硬件的服務器(我們使用相同的服務器進行單個mongod實例測試)中觀察到mongo分片中的5.1K TPS。我們使用分片鍵作爲哈希索引ObjectId。

爲什麼我們無法通過三臺服務器獲得10K +的性能?有什麼方法可以使用分片來獲得10K +的性能?如果是,那麼如何?

+1

Foursquares使用Mongo來存儲數以百萬計的每日簽到。所以它必須是可能的。也許[這個演講會給你一些見解](http://www.10gen.com/presentations/scaling-mongodb-foursquare),你可以用它來使你的問題更加精確(不那麼寬泛)。 – ixe013

+2

爲您提供測試集,分片鍵和加載程序不是讀者的工作。這不是一個真正適合這類問題的論壇 - 它不是關於編程,它沒有簡單的答案。 –

回答

-10

改爲使用couchbase。我們停止使用MongoDB,因爲它比那裏的性能差。

+2

哈哈!這就是我要說的。 –

+2

嗯,任何證據都不是你自己的設計缺陷造成的?你沒有提供真正的實質性證據,但我們相信你,MongoDB只是緩慢和糟糕的表現?如果我誠實,這不是一個答案,不知道是誰投票... – Sammaye

+0

很容易找到證據來顯示性能問題。下面是一個例子:http://www.infoq.com/news/2013/04/NoSQL-Benchmark – ronnied