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). 

外部链接编辑