摸索了幾天,大體也初步算入了mongodb的門,仔細一想,mongodb和傳統關系型數據庫差別很大了。
傳統關系型數據庫中,一個數據庫有一個或者多個表(Table),表中的數據是稱之為記錄,一行一行的,每行數據分不同的字段。
舉一個容易理解的例子。一個人有姓名,性別,年齡,以及很多張銀行卡;
如果使用關系型數據庫,我們可能會是使用兩張或者更多表來做記錄,一張用戶表來存用戶的基本信息,另一張表通過用戶id,和銀行卡id,通過多條記錄來存此人的多張銀行卡對應關系;
那如果是在mongodb中,那就對應一個文件了
舉個例子就是這樣的數據了
{
Name:'小明',Sex:'男',Age:'25',
BankCards:[ ‘123445678','12233333','5555555']
}
所以到目前的mongodb中,它是沒有關系這個概念的;
此圖反應了mongdb和傳統的關系型數據庫(mysql,oracle)之間的對比;

應該說是,mongodb存的是一個完整的對象了,這個對象數據是已文檔的形式存儲的。至于它有什么優點,網上一大片說它優點,這里抓網絡內容貼上:
架構:MongoDB是文檔型數據庫,其中一個集合保存不同的不同的文件。字段的數量,內容和該文件的大小可以是不同于從一個文件復制到另一個。
一個單一的對象是結構清晰
沒有復雜的連接
深查詢能力。 MongoDB支持動態查詢使用基于文檔的查詢語言,如SQL幾乎一樣強大的文件
調優
易于規模化:MongoDB是易于擴展
不需要數據庫對象的應用程序對象轉換/映射
使用內部存儲器存儲(窗口)工作組,從而實現更快的數據存取
不過缺點有很多,首先:不支持事物,而不會支持這種什么inner join ,left join等這樣的關系連接,(因為不是關系型數據庫嘛)。還有個我覺得是缺點,占用空間!
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接
您可能感興趣的文章:- MongoDB模糊查詢操作案例詳解(類關系型數據庫的 like 和 not like)
- MongoDB學習筆記(四) 用MongoDB的文檔結構描述數據關系
- 淺談MongoDB 關系