MongoDB

一种面向文档的数据库管理系统

MongoDB是一種文件導向數據庫管理系統,用C++等語言撰寫而成,以解決應用程式開發社群中的大量現實問題。MongoDB由MongoDB Inc.(當時是10gen團隊)於2007年10月開發,2009年2月首度推出,現以伺服器端公共許可(SSPL)分發。

MongoDB
Mongodb.png
開發者MongoDB Inc.英語MongoDB Inc.
初始版本2009年2月11日,​11年前​(2009-02-11[1]
穩定版本
4.2.1
(2019年10月18日,​11個月前​(2019-10-18
預覽版本
4.2.1-rc0
(2019年10月11日,​11個月前​(2019-10-11
原始碼庫https://github.com/mongodb/mongo
程式語言C++, Go, JavaScript, Python
作業系統Windows 7/2008R2及以上、LinuxmacOS 10.11及以上、Solaris[2]FreeBSD[3]
系統平台x86_64ARM64s390x,企業版額外支援PPC64LE[4]
語言英文
類型面向文件的數據庫
許可協定伺服器端公共許可證(SSPL)、商業許可證、語言驅動採用Apache許可證[5]
網站https://www.mongodb.com

部署編輯

MongoDB社群版是免費的,可獲得為WindowsLinuxOS X二進制版本[6]。許多Linux套件管理系統曾經包含MongoDB的套件,由於許可證變更,MongoDB已經從DebianFedoraRed Hat Enterprise Linux發行中移除。[7][8]

MongoDB使用記憶體對映檔案, 32位元系統上限制大小為2GB的資料,64位元支援更大的資料。[9] MongoDB的核心構件只能在小端序系統上執行,客戶端庫可以在小端序和大端序的系統上執行[10]

語言支援編輯

MongoDB有官方的驅動如下: CC++C# / .NETErlangHaskellJavaJavaScriptLispfibjsnode.JSPerlPHPPythonRubyScalaGo

目前還有許多非官方式的驅動,ColdFusion,[11] Delphi,[12] Erlang,[13][14] Factor,[15] Fantom,[16] Go,[17] JVM languages (Clojure, Groovy [18], Scala, etc.),[19] Lua,[20] HTTP REST,[21] Racket,[22]和Smalltalk.[23]

複製編輯

MongoDB的開發人員可以保證一個操作已被複製到至少 個伺服器上每個運行的基礎.

主從式編輯

由於操作都是在主機,從機將複製任何更改的數據。

例如:starting a master/slave pair locally:

$ mkdir -p ~/dbs/master ~/dbs/slave
$ ./mongod --master --port 10000 --dbpath ~/dbs/master
$ ./mongod --slave --port 10001 --dbpath ~/dbs/slave --source localhost:10000

副本集編輯

副本集類似於主從式架構,但他們結合的能力為副機,如果當前一直遲緩時,選出新的主機。

管理與圖形化介面編輯

監視編輯

支援MongoDB的監視外掛程式:

GUIs編輯

目前較受歡迎的UI有:

  • Robo 3T (原Robomongo)[28] – 這是一個C++Qt寫成的跨平台桌面程式。
  • Fang of Mongo[29] –這是一個網頁式的介面,由Django和jQuery所構成.
  • Futon4Mongo[30] – a clone of the CouchDB Futon web interface for MongoDB.
  • Mongo3[31] – Ruby寫成的介面.
  • MongoHub[32] –一個OS X應用程式.
  • Opricot[33] – a browser-based MongoDB shell,由PHP撰寫而成.
  • Database Master MongoDB Tool for Windows
  • RockMongo Best PHP MongoDB Administrator輕量級,支援多國語言。
  • MongoVUE Download CS,圖形介面,封裝較好。
  • MongoDB Compass,MongoDB官方的跨平台GUI。

著名用戶編輯

參考文獻編輯

  1. ^ State of MongoDB March, 2010. DB-Engines (美國英語). 
  2. ^ Install MongoDB. MongoDB Manual. 
  3. ^ How-To: MongoDB on FreeBSD 10.x. FreeBSD News. 
  4. ^ Production Notes - Supported Platforms. MongoDB Manual. 
  5. ^ MongoDB Licensing. mongodb.com. 
  6. ^ MongoDB Download Center. MongoDB. [August 14, 2018] (美國英語). 
  7. ^ Vaughan-Nichols, Steven J. MongoDB "open-source" Server Side Public License rejected. ZDNet. [January 17, 2019] (英語). 
  8. ^ MongoDB’s licensing changes led Red Hat to drop the database from the latest version of its server OS. GeekWire. January 16, 2019 [January 17, 2019] (美國英語). 
  9. ^ [1]
  10. ^ Hardware Considerations
  11. ^ ColdFusion driver
  12. ^ Delphi
  13. ^ Emongo Erlang driver
  14. ^ Erlmongo Erlang driver
  15. ^ Factor driver
  16. ^ Fantom driver
  17. ^ gomongo Go driver
  18. ^ GMongo
  19. ^ JVM language center
  20. ^ LuaMongo
  21. ^ REST interface
  22. ^ [2]
  23. ^ Smalltalk driver
  24. ^ Munin plugin
  25. ^ Ganglia plugin
  26. ^ Scout slow-query plugin 頁面存檔備份,存於互聯網檔案館
  27. ^ Cacti plugin
  28. ^ Robo 3T - formerly Robomongo — native MongoDB management tool (Admin UI). [2018-09-19]. 
  29. ^ Fang of Mongo
  30. ^ Futon4Mongo
  31. ^ Mongo3
  32. ^ MongoHub
  33. ^ Opricot 互聯網檔案館存檔,存檔日期2011-06-18.
  34. ^ 12 Months with MongoDB. 2010-10-25 [2011-05-24]. 
  35. ^ MongoDB - diasporatest.com. 2010-12-23 [2010-12-23]. (原始內容存檔於2010-11-24). 
  36. ^ Implementing MongoDB at Shutterfly - Presentation at MongoSF. 2010-04-30 [2010-06-28]. 
  37. ^ MongoDB at foursquare - Presentation at MongoNYC. 2010-05-21 [2010-06-28]. (原始內容存檔於2010-06-12). 
  38. ^ bit.ly user history, auto-sharded - Presentation at MongoNYC. 2010-05-21 [2010-06-28]. (原始內容存檔於2010-06-11). 
  39. ^ Maher, Jacqueline. Building a Better Submission Form. NYTimes Open Blog. 2010-05-25 [2010-06-28]. 
  40. ^ How Python, TurboGears, and MongoDB are Transforming SourceForge.net. PyCon 2010. 2010-02-20 [2010-06-28]. (原始內容存檔於2010-07-13). 
  41. ^ How This Web Site Uses MongoDB. Business Insider. 2010-11-06 [2010-06-28]. 
  42. ^ MongoDB at Etsy. Code as Craft: Etsy Developer Blog. 2010-05-19 [2010-06-28]. (原始內容存檔於2011-06-14). 
  43. ^ Holy Large Hadron Collider, Batman!. The MongoDB NoSQL Database Blog. 2010-06-03 [2010-08-03]. 
  44. ^ Building Our Own Tracking Engine With MongoDB. Thumbtack Blog. 2011-05-03 [2011-05-15]. (原始內容存檔於2011-05-09). 
  45. ^ 楊惠芬. 趨勢科技導入MongoDB-追蹤管理全球10萬個行動裝置,上萬筆資料同時寫入. ithome. 2013-01-17 [2013-01-21]. (原始內容存檔於2013-01-28). 

外部連結編輯