不可靠的環境確保高可用性
設置副本集(主從服務器設置)不僅方便快捷,還可以利用MongoDB快速、安全、自動地實現節點(或數據中心)故障轉移。
以後會有很大的規模。
數據庫擴展非常具有挑戰性。當單個表的大小達到5-10GB時,MySQL表的性能無疑會下降。如果您需要對數據庫進行切片和分區,MongoDB將輕松實現這壹點。
使用基於位置的數據查詢
MongoDB支持二維空間索引,因此可以快速準確地從指定位置獲取數據。
非結構化數據的爆炸式增長
在某些情況下,向RDBMS添加列可能會鎖定整個數據庫,或者增加負載,從而導致性能下降。這個問題通常發生在表大於1GB的時候(這是下面提到的BillRun系統中的痛點——單個表往往有幾個GB)。鑒於MongoDB的弱數據結構模式,添加1新字段不會對舊表產生任何影響,整個過程會非常快;因此,當應用程序發生變化時,您不需要1 DBA來修改數據庫模式。
缺乏專業的數據庫管理員
如果您沒有專業的DBA,並且不需要結構化數據和連接查詢,那麽MongoDB將是您的首選。MongoDB非常適合類持久化。類可以序列化成JSON,存儲在MongoDB中。需要註意的是,如果妳想獲得更大的規模,妳必須知道壹些最佳做法,以避免進入錯誤的領域。
個人理解:
如果寫負載和單個表過大,解決方法是通過碎片化實現水平擴展。其實mysql也是支持的。這不是理由。
我可以使用Mongodb的場景是,妳不需要太多的事務和多表關聯,使用Mongodb可以獲得更大的性能提升。或者無模式的使用場景。
什麽時候妳比MySQL更需要MongoDB?
標簽:多表關聯strongThe系統表關聯理解表不實現json。