MongoDB
MongoDB是一种面向文档的数据库管理系统,用C++等语言撰写而成,介于关系型数据库和非关系型数据库之间,以解决应用进程开发社区中的大量现实问题。MongoDB由MongoDB Inc.(当时是10gen团队)于2007年10月开发,2009年2月首度推出,现以看源的服务器端公共许可(SSPL)分发。
![]() | |
开发者 | MongoDB Inc. |
---|---|
首次发布 | 2009年2月11日[1] |
当前版本 |
|
源代码库 | |
编程语言 | C++, Go, JavaScript, Python |
操作系统 | Windows 7/2008R2及以上、Linux、macOS 10.11及以上、Solaris[3]、 FreeBSD[4]等 |
平台 | x86_64、ARM64及s390x,企业版额外支持PPC64LE[5] |
语言 | 英文 |
类型 | 面向文档的数据库 |
许可协议 | 服务器端公共许可证(SSPL)、商业许可证、语言驱动采用Apache许可证[6] |
网站 | www![]() |
部署
MongoDB社区版是免费的,可获得为Windows、Linux和OS X二进制版本[7]。许多Linux套件管理系统曾经包含MongoDB的套件,由于许可证变更,MongoDB已经从Debian、Fedora和Red Hat Enterprise Linux发行中移除。[8][9]
MongoDB使用内存映射文档,32比特系统上限制大小为2GB的数据,64比特支持更大的数据。[10] MongoDB的内核构件只能在小端序系统上运行,客户端库可以在小端序和大端序的系统上运行[11]。
语言支持
MongoDB有官方的驱动如下:C[12],C++[13],C#[14],Erlang[15],Haskell[16],Java[17],JavaScript[18],Lisp[19],fibjs[20],node.JS[21],Perl[22],PHP[23],Python[24],Ruby[25],Scala[26],Go[27],Rust[28]。
目前还有许多非官方式的驱动,ColdFusion,[29] Delphi,[30] Erlang,[31][32] Factor,[33] Fantom,[34] Go,[35] JVM languages (Clojure, Groovy [36], Scala, etc.),[37] Lua,[38] HTTP REST,[39] Racket,[40]和Smalltalk.[41]。
拷贝
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
副本集
副本集类似于主从式架构,但他们结合的能力为副机,如果当前一直迟缓时,选出新的主机。
管理与图形化接口
GUIs
目前较受欢迎的UI有:
- Robo 3T (原Robomongo)[46] – 这是一个C++及Qt写成的跨平台桌面进程。
- Fang of Mongo[47] –这是一个网页式的界面,由Django和jQuery所构成.
- Futon4Mongo[48] – a clone of the CouchDB Futon web interface for MongoDB.
- Mongo3[49] – Ruby写成的接口.
- MongoHub[50] –一个OS X应用程序.
- Opricot[51] – a browser-based MongoDB shell,由PHP撰写而成.
- Database Master MongoDB Tool for Windows
- RockMongo Best PHP MongoDB Administrator轻量级,支持多国语言。
- MongoVUE Download CS,图形界面,封装较好。
- MongoDB Compass,MongoDB官方的跨平台GUI。
著名用户
- Wordnik[52]
- diaspora[53]
- Shutterfly[54]
- foursquare[55]
- bit.ly[56]
- The New York Times[57]
- SourceForge[58]
- Business Insider[59]
- Etsy[60]
- LHC[61]
- Thumbtack[62]
- 趋势科技[63]
参考文献
- . DB-Engines. [2018-05-04]. (原始内容存档于2017-09-18) (美国英语).
- .
- . MongoDB Manual. [2018-09-19]. (原始内容存档于2020-12-02).
- . FreeBSD News. [2018-05-04]. (原始内容存档于2017-12-28).
- . MongoDB Manual. [2018-09-19]. (原始内容存档于2020-12-03).
- . mongodb.com. [2018-09-19]. (原始内容存档于2020-11-14).
- . MongoDB. [August 14, 2018]. (原始内容存档于2018-08-14) (美国英语).
- Vaughan-Nichols, Steven J. . ZDNet. [January 17, 2019]. (原始内容存档于2019-01-16) (英语).
- . GeekWire. January 16, 2019 [January 17, 2019]. (原始内容存档于2019-01-17) (美国英语).
- . [2011-06-23]. (原始内容存档于2009-09-12).
- . [2018-09-19]. (原始内容存档于2020-12-03).
- C(页面存档备份,存于)
- C++(页面存档备份,存于)
- C# / .NET(页面存档备份,存于)
- Erlang(页面存档备份,存于)
- Haskell(页面存档备份,存于)
- Java(页面存档备份,存于)
- JavaScript
- Lisp(页面存档备份,存于)
- fibjs(页面存档备份,存于)
- node.JS(页面存档备份,存于)
- Perl(页面存档备份,存于)
- PHP(页面存档备份,存于)
- Python(页面存档备份,存于)
- Ruby(页面存档备份,存于)
- Scala(页面存档备份,存于)
- Go(页面存档备份,存于)
- , mongodb, 2022-08-05 [2022-08-08], (原始内容存档于2022-08-08)
- . [2011-06-23]. (原始内容存档于2020-10-01).
- . [2011-06-23]. (原始内容存档于2016-08-14).
- . [2011-06-23]. (原始内容存档于2020-06-22).
- . [2011-06-23]. (原始内容存档于2010-04-22).
- . [2011-06-23]. (原始内容存档于2016-04-19).
- . [2011-06-23]. (原始内容存档于2020-08-03).
- . [2011-06-23]. (原始内容存档于2020-11-09).
- . [2011-06-23]. (原始内容存档于2017-09-09).
- . [2011-06-23]. (原始内容存档于2013-01-29).
- . [2011-06-23]. (原始内容存档于2016-01-18).
- . [2011-06-23]. (原始内容存档于2019-11-18).
- . [2011-06-23]. (原始内容存档于2018-07-20).
- . [2011-06-23]. (原始内容存档于2019-10-18).
- . [2011-06-23]. (原始内容存档于2020-10-24).
- . [2011-06-23]. (原始内容存档于2020-09-16).
- . [2011-06-23]. (原始内容存档于2011-07-16).
- . [2011-06-23]. (原始内容存档于2016-06-08).
- . [2018-09-19]. (原始内容存档于2020-12-05).
- . [2011-06-23]. (原始内容存档于2020-09-12).
- . [2011-06-23]. (原始内容存档于2016-12-25).
- . [2011-06-23]. (原始内容存档于2016-03-05).
- . [2011-06-23]. (原始内容存档于2011-06-13).
- . [2011-06-23]. (原始内容存档于2011-06-18).
- . 2010-10-25 [2011-05-24]. (原始内容存档于2020-11-09).
- . 2010-12-23 [2010-12-23]. (原始内容存档于2010-11-24).
- . 2010-04-30 [2010-06-28]. (原始内容存档于2011-05-18).
- . 2010-05-21 [2010-06-28]. (原始内容存档于2010-06-12).
- . 2010-05-21 [2010-06-28]. (原始内容存档于2010-06-11).
- Maher, Jacqueline. . NYTimes Open Blog. 2010-05-25 [2010-06-28]. (原始内容存档于2020-11-09).
- . PyCon 2010. 2010-02-20 [2010-06-28]. (原始内容存档于2011-02-11).
- . Business Insider. 2010-11-06 [2010-06-28]. (原始内容存档于2020-09-10).
- . Code as Craft: Etsy Developer Blog. 2010-05-19 [2010-06-28]. (原始内容存档于2011-06-14).
- . The MongoDB NoSQL Database Blog. 2010-06-03 [2010-08-03]. (原始内容存档于2016-09-08).
- . Thumbtack Blog. 2011-05-03 [2011-05-15]. (原始内容存档于2011-05-09).
- 杨惠芬. . ithome. 2013-01-17 [2013-01-21]. (原始内容存档于2013-01-28).
外部链接
- Official MongoDB Project Website(页面存档备份,存于)
- mongoDB User Group(页面存档备份,存于) on LinkedIn
- MongoDB news and articles on myNoSQL(页面存档备份,存于)
- Eric Lai. (2009, July 1). No to SQL? Anti-database movement gains steam(页面存档备份,存于)
- MongoDB articles on NoSQLDatabases.com
- June 2009 San Francisco NOSQL Meetup Page
- Designing for the Cloud (页面存档备份,存于) at MIT Technology Review
- EuroPython Conference Presentation(页面存档备份,存于)
- YouTube上的Non-relational data persistence in Java using MongoDB - Software Engineer at MongoDB
- Interview with Mike Dirolf on The Changelog about MongoDB background and design decisions
- MongoMvc - A MongoDB Demo App with ASP.NET MVC(页面存档备份,存于)
- FAQs about MongoDB