前端技術分享:什麼是MongoDB資料庫?

千鋒武漢發表於2021-08-11

       什麼是MongoDB資料庫? MongoDB是一個基於分散式檔案儲存的資料庫。由C++語言編寫。旨在為WEB應用提供可擴充套件的高效能資料儲存解決方案。 MongoDB是一個介於關聯式資料庫和非關聯式資料庫之間的產品,是非關聯式資料庫中最豐富,最像關聯式資料庫的。它支援的資料結構非常鬆散,是類似json的bson格式,因此可以儲存比較複雜的資料型別。

         Mongo最大的特點是它支援的查詢語言非常強大,其語法有點類似於物件導向的查詢語言,幾乎可以實現類似關聯式資料庫單表查詢的絕大部分功能,而且還支援對資料建立索引。 MongoDB 的原名一開始來自於 英文單詞"Humongous", 中文含義是指"龐大",即建立者的意圖是用它可以處理大規模的資料。

src=http___www.uml.org.cn_sjjm_images_201512161001.jpg&refer=http___www.uml.org

         很多程式設計師更喜歡稱呼它為 "芒果"資料庫,除了譯音更加相近之外,原因還來自於使用 MongoDB 的感覺: 使用MongDB的感受是一個字"爽"! 使用這個文件資料庫的特點是幾乎不受什麼限制,一方面Json文件式的結構更容易理解,而無Schema約束也讓DDL管理更加簡單,一切都可以很快速的進行。

       MongoDB適用 網站資料:Mongo 非常適合實時的插入,更新與查詢,並具備網站實時資料儲存所需的複製及高度伸縮性。 快取:由於效能很高,Mongo 也適合作為資訊基礎設施的快取層。在系統重啟之後,由Mongo 搭建的持久化快取層可以避免下層的資料來源過載。 大尺寸、低價值的資料:使用傳統的關係型資料庫儲存一些資料時可能會比較昂貴,在此之前,很多時候程式設計師往往會選擇傳統的檔案進行儲存。 高伸縮性的場景:Mongo 非常適合由數十或數百臺伺服器組成的資料庫,Mongo 的路線圖中已經包含對MapReduce 引擎的內建支援。 用於物件及JSON 資料的儲存:Mongo 的BSON 資料格式非常適合文件化格式的儲存及查詢。

       也許有人會有這樣的問題:MySQL、MongoDB、Redis、Hbase等這些資料庫哪個更好? 其實這是一個偽命題,脫離了具體的業務場景來討論好壞是紙上談兵,沒有最好的,只有最合適的,誰也無法保證完全取代誰,上面的每種資料庫都在變得更好,都在不停地完善自身。比如MySQL在不斷提升其JSON和地理位置處理能力、組複製(group replication)已在開發等;而MongoDB在增強join型別支援,提供更為複雜的多集合查詢能力,計劃支援事務等。

       總結來說就是:作為一個程式設計師,很有必要學習MongoDB資料庫!

       本文來自千鋒教育,轉載請註明出處。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2786366/,如需轉載,請註明出處,否則將追究法律責任。

相關文章