MongoDB
Template:NoteTA Template:Infobox software
MongoDB是一種面向文档的数据库管理系统,用C++等语言撰寫而成,介于关系型数据库和非关系型数据库之间,以解决应用程序开发社区中的大量现实问题。MongoDB由Template:Tsl(当时是10gen團隊)于2007年10月开发,2009年2月首度推出。2018年,MongoDB改成以Template:Link-en分发,不再属于开源软件。
部署
MongoDB社区版是免费的,可获得为Windows、Linux和OS X二进制版本[1]。許多Linux套件管理系統曾经包含MongoDB的套件。2018年因许可证变更,MongoDB不再属于开源软件,Debian、Fedora和Red Hat Enterprise Linux等Linux发行版已從软件存储库中移除了MongoDB。[2][3]
MongoDB使用内存映射文件,32位元系統上限制大小為2GB的資料,64位元支持更大的資料。[4] MongoDB的核心构件只能在小端序系統上运行,客户端库可以在小端序和大端序的系統上运行[5]。
語言支援
MongoDB有官方的驅動如下:C[6],C++[7],C#[8],Erlang[9],Haskell[10],Java[11],JavaScript[12],Lisp[13],fibjs[14],node.JS[15],Perl[16],PHP[17],Python[18],Ruby[19],Scala[20],Go[21],Rust[22]。
目前還有許多非官方式的驅動,ColdFusion,[23] Delphi,[24] Erlang,[25][26] Factor,[27] Fantom,[28] Go,[29] JVM languages (Clojure, Groovy [30], Scala, etc.),[31] Lua,[32] HTTP REST,[33] Racket,[34]和Smalltalk.[35]。
複製
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)[39] – 这是一个C++及Qt写成的跨平台桌面程序。
- Fang of Mongo[40] –這是一個網頁式的界面,由Django和jQuery所構成.
- Futon4Mongo[41] – a clone of the CouchDB Futon web interface for MongoDB.
- Mongo3[42] – Ruby寫成的介面.
- MongoHub[43] –一個OS X應用程式.
- Opricot[44] – a browser-based MongoDB shell,由PHP撰寫而成.
- Database Master MongoDB Tool for Windows
- RockMongo Best PHP MongoDB Administrator轻量级,支持多国语言。
- MongoVUE Download CS,图形界面,封装较好。
- MongoDB Compass,MongoDB官方的跨平台GUI。
著名用戶
- Template:Le[45]
- Diaspora[46]
- Template:Le[47]
- foursquare[48]
- bit.ly[49]
- The New York Times[50]
- SourceForge[51]
- Business Insider[52]
- Etsy[53]
- LHC[54]
- Template:Le[55]
- 趨勢科技[56]
參見
参考文献
外部連結
- Template:Official WebsiteTemplate:Wayback
- mongoDB User GroupTemplate:Wayback on LinkedIn
- MongoDB news and articles on myNoSQLTemplate:Wayback
- Eric Lai. (2009, July 1). No to SQL? Anti-database movement gains steamTemplate:Wayback
- MongoDB articles on NoSQLDatabases.com
- June 2009 San Francisco NOSQL Meetup Page
- Designing for the Cloud Template:Wayback at MIT Technology Review
- EuroPython Conference PresentationTemplate:Wayback
- Template:Youtube
- Interview with Mike Dirolf on The Changelog about MongoDB background and design decisions
- MongoMvc - A MongoDB Demo App with ASP.NET MVCTemplate:Wayback
- FAQs about MongoDB
Template:- Template:NoSQL Template:Database Template:Node.js
- ↑ Template:Cite news
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ CTemplate:Wayback
- ↑ C++Template:Wayback
- ↑ C# / .NETTemplate:Wayback
- ↑ ErlangTemplate:Wayback
- ↑ HaskellTemplate:Wayback
- ↑ JavaTemplate:Wayback
- ↑ JavaScript
- ↑ LispTemplate:Wayback
- ↑ fibjsTemplate:Wayback
- ↑ node.JSTemplate:Wayback
- ↑ PerlTemplate:Wayback
- ↑ PHPTemplate:Wayback
- ↑ PythonTemplate:Wayback
- ↑ RubyTemplate:Wayback
- ↑ ScalaTemplate:Wayback
- ↑ GoTemplate:Wayback
- ↑ Template:Citation
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite news
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite news