爲了用於我的項目,我一直在努力學習Mongodb一個星期。在我的項目中,我將存儲一個巨大的地理位置數據,我認爲Mongodb是最適合存儲這些信息的。另外,速度對我來說非常重要,Mongodb響應速度比Mysql快。在一個項目中同時使用Mongodb和Mysql
但是,我將對項目的某些部分使用一些連接,而且我不確定是否將用戶信息存儲在Mongodb中。我在編寫過程中聽到有些問題可能發生在mongodb上。我應該只使用mongodb與集合(而不是連接)還是兩者?
爲了用於我的項目,我一直在努力學習Mongodb一個星期。在我的項目中,我將存儲一個巨大的地理位置數據,我認爲Mongodb是最適合存儲這些信息的。另外,速度對我來說非常重要,Mongodb響應速度比Mysql快。在一個項目中同時使用Mongodb和Mysql
但是,我將對項目的某些部分使用一些連接,而且我不確定是否將用戶信息存儲在Mongodb中。我在編寫過程中聽到有些問題可能發生在mongodb上。我應該只使用mongodb與集合(而不是連接)還是兩者?
在大多數情況下,我會建議爲一個項目選擇一個數據庫,如果該項目不是很大。在真正的大項目(或一般企業),I think長期組織將使用
但對於更合理範圍的東西,只需選擇那個用例的核心,然後將其用於一切。
在mongodb中存儲用戶數據的IMO很好 - 您可以對單個BSON文檔執行原子操作,以便像「以原子方式分配此用戶名」這樣的操作是可行的。通過重做日誌(--journal)(v1.8 +),複製,slavedelayed複製,可以獲得相當高的數據安全性 - 與紙上的其他db產品一樣高。反對安全的主要觀點是產品是新舊軟件總是比較安全的。
如果您需要執行非常複雜的ACID事務(如會計),請使用RDBMS。
此外,如果您需要進行大量報告,那麼當前的mysql可能會更好,特別是如果數據集適合一臺服務器。 SQL GROUP BY語句非常強大。
您不會在MongoDB和MySQL之間加入。
我不確定我是否同意你所有的陳述。相對速度與您的使用案例是最好的基準。
你真正需要了解的是什麼,兩個數據庫的相對優勢和劣勢分別是:
這些應該是您選擇的基礎。
MongoDB有一些很好的功能來支持地理位置工作。然而,它不一定比MySQL更快。有很多基準測試表明,MySQL在很多情況下都勝過MongoDB(例如http://mysqlha.blogspot.com/2010/09/mysql-versus-mongodb-yet-another-silly.html)。
話雖如此,我還沒有在寫作期間MongoDB丟失信息的問題。我建議如果你想使用MongoDB,你也可以使用if,以避免必須跨數據庫「關聯」,然後只有在需要時纔將用戶遷移到MySQL。
在大多數簡單的CRUD中,調優的MySQL將優於MongoDB?這是一個大膽的陳述,不需要知道插入類型,索引,查詢,數據集的大小,機器上RAM的數量等等。只有基準測試可以以這種或那種方式證明這樣的陳述。 –
「堅牢度」?我認爲好的語法會說「速度」。 – duffymo
你太複雜了 – tetris