mongodb 使用場景和不使用場景

2021-07-08 14:10:41 字數 1055 閱讀 3936

1.mongodb介紹

mongodb (名稱來自"humongous") 是乙個可擴充套件的高效能,開源,模式自由,面向文件的資料庫。它使用c++編寫。mongodb特點:

a.面向集合的儲存:適合儲存物件及json形式的資料。

b.動態查詢:mongo支援豐富的查詢表達方式,查詢指令使用json形式的標記,可輕易查詢文件中的內嵌的物件及陣列。

c.完整的索引支援:包括文件內嵌物件及陣列。mongo的查詢優化器會分析查詢表示式,並生成乙個高效的查詢計畫。

d.查詢監視:mongo包含乙個監視工具用於分析資料庫操作效能。

e.複製及自動故障轉移:mongo資料庫支援伺服器之間的資料複製,支援主-從模式及伺服器之間的相互複製。複製的主要目的是提供冗餘及自動故障轉移。

f.高效的傳統儲存方式:支援二進位制資料及大型物件(如**或)。

g.自動分片以支援雲級別的伸縮性:自動分片功能支援水平的資料庫集群,可動態新增額外的機器。

2.mongo使用場合

mongodb的主要目標是在鍵/值儲存方式(提供了高效能和高度伸縮性)以及傳統的rdbms系統(豐富的功能)架起一座橋梁,集兩者的優勢於一身。mongo適用於以下場景:

a.**資料:mongo非常適合實時的插入,更新與查詢,並具備**實時資料儲存所需的複製及高度伸縮性。

b.快取:由於效能很高,mongo也適合作為資訊基礎設施的快取層。在系統重啟之後,由mongo搭建的持久化快取可以避免下層的資料來源過載。

c.大尺寸、低價值的資料:使用傳統的關聯式資料庫儲存一些資料時可能會比較貴,在此之前,很多程式設計師往往會選擇傳統的檔案進行儲存。

d.高伸縮性的場景:mongo非常適合由數十或者數百台伺服器組成的資料庫。

e.用於物件及json資料的儲存:mongo的bson資料格式非常適合文件格式化的儲存及查詢。

不適合的場景:

a.高度事物性的系統:例如銀行或會計系統。傳統的關係型資料庫目前還是更適用於需要大量原子性複雜事務的應用程式。

b.傳統的商業智慧型應用:針對特定問題的bi資料庫會對產生高度優化的查詢方式。對於此類應用,資料倉儲可能是更合適的選擇。

c.需要sql的問題。

mongodb 使用場景和不使用場景

1.mongodb介紹 mongodb 名稱來自 humongous 是乙個可擴充套件的高效能,開源,模式自由,面向文件的資料庫。它使用c 編寫。mongodb特點 a.面向集合的儲存 適合儲存物件及json形式的資料。b.動態查詢 mongo支援豐富的查詢表達方式,查詢指令使用json形式的標記,...

mongodb 使用場景和不使用場景

mongodb 使用場景和不使用場景 2012 09 26 10 30 18 分類 linux 1.mongodb介紹 mongodb 名稱來自 humongous 是乙個可擴充套件的高效能,開源,模式自由,面向文件的資料庫。它使用c 編寫。mongodb特點 a.面向集合的儲存 適合儲存物件及js...

mongodb 使用場景和不使用場景

之前用過nosql來儲存document中的正文 分詞結果 以及標題等資料,一開始我們用的是cassandra,測試用了段時間後發現占用的硬碟比較大,主要是文件說明中說到的應該刪除的一些無用檔案總是不刪除,找了幾天也找不到解決的辦法,另外對insert資料的時間也不太滿意。於是就轉向改用mongod...