NoSQL數據庫 MongoDB 2.0.0-RC0 版本發布

fmms 13年前發布 | 20K 次閱讀 NOSQL

今天MongoDB剛剛發布了其第一個2.* 版本:MongoDB2.0.0-RC0,也發布了2.0版本的Release Notes,其中很多新功能和改進非常值得期待。下面NoSQLFan為大家細數。

NoSQL數據庫 MongoDB 2.0.0-RC0 版本發布

1.增加壓縮命令

以前只能通過repair整個數據庫的方式來進行數據壓縮,而2.0版本增加了一個 compact 命令 ,使你可以針對Collection和其索引進行壓縮。

2.并發增強

當寫操作不能在內存中完成(要寫的部分未命中實際內存)時,需要加上寫鎖。(SERVER-2563)目前已經在下面操作上實現:(翻譯是否正確?

  • Updates by _id
  • Removes
  • Long cursor iterations

3.減少客戶端線程消耗

MongoDB會為每個客戶端分配一個獨立線程,當并發量太大時,線程消耗的內存就不能忽略了。在新的版本中,MongoDB調整了每個線程占用的內存量。這個值將會小于系統的Stack Size或者設置成1MB。

4.索引效率增強

2.0版本對索引進行了重大的性能改進,現在同樣的索引,你可能可以節約25%的內存并提升25%的性能。

5.安全性

sharding的集群目前也提供了安全性支持

6.Replica Sets的改進

  • 提供了優先級設置功能,你可以給每一個節點設置優先級,在重新選舉主機的時候,優先級將會被納入選舉策略之中。
  • 提供了數據中心可知性,2.0版本中,節點了解自己及其它節點當前是對處于哪一個數據中心的。你可以在寫操作中指定級別,以使一些重要信息能夠同步的復制到遠端的IDC。
  • 提供w : “majority”的寫選項,在以前我們可以設置寫到幾臺機器就返回成功,2.0版本會提供一個majority的選項,意為同步到集群中的大多數機器。
  • 新增了一個reconfigure的選項,當集群中有些節點宕機后(但是大部分的節點還是活躍的),你可以使用此選項來調整新的配置。參見Reconfiguring a replica set when members are down
  • 目前如果Primary節點找不到一個能夠跟上它速度的Secondary(optime延長10秒以內),那么Primary將不能stepdown,當然你也可以強制使其stepdown。更多信息參見Forcing a Member to be Primary
  • shutdown操作增強,如果一個Primary執行shutdown操作,它會檢查是否有一個Secordary能夠跟上它的速度,如果沒有,它會先stepdown,等有Secondary的optime延長能夠在十秒內再關閉。
  • 當一個Secondary在運行repair或者compact操作時,Secondary會轉變狀態為“recovering”,這樣客戶端就不會在其繁忙進行repair或compact的時候訪問它了。

7.地理位置索引

  • 支持多個位置索引的建立,可以是在一個array中也可以是文檔嵌入。詳見Geospatial documentation
  • 地理位置索引還支持多邊形查詢,支持一些常規的多邊型。詳見這里

8.Journaling日志增強

  • 目前在64位平臺上,Journaling選項為默認開啟,需要通過–nojournal 啟動參數才能關閉。
  • Journaling日志中使用了壓縮,以減少磁盤IO。
  • 提供了–journalCommitInterval選項以自由配置group commit的時間間隔,默認是100ms。
  • 提供了新的getLastError {j: true}選項來使客戶端等待group commit完成后才返回。
  • 你可以臨時禁止Journaling日志,然后通過copy數據文件的方式進行熱備。詳見這里

9.增加ContinueOnError選項

當進行批量插入時,如果設置了ContinueOnError選項,那么中間某個插入操作出問題不會影響后續的插入操作。

10.增加新的正則表達式支持

11.修改了system 這個Collection的結構

來源:www.mongodb.org
轉自:http://blog.nosqlfan.com/html/2920.html

MongoDB簡介

MongoDB是一個介于關系數據庫和非關系數據庫之間的產品,是非關系數據庫當中功能最豐富,最像關系數據庫的。他支持的數據結構非常松散,是類似json的bjson格式,因此可以存儲比較復雜的數據類型。 Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似于面向對象的查詢語言,幾乎可以實現類似關系數據庫單表查詢的絕大部分功能,而且還支持對數據建立索引。

它的特點是高性能、易部署、易使用,存儲數據非常方便。主要功能特性有:

  • 面向集合存儲,易存儲對象類型的數據。
  • 模式自由。
  • 支持動態查詢。
  • 支持完全索引,包含內部對象。
  • 支持查詢。
  • 支持復制和故障恢復。
  • 使用高效的二進制數據存儲,包括大型對象(如視頻等)。
  • 自動處理碎片,以支持云計算層次的擴展性
  • 支持RUBY,PYTHON,JAVA,C++,PHP等多種語言。
  • 文件存儲格式為BSON(一種JSON的擴展)
  • 可通過網絡訪問

所謂“面向集合”(Collenction-Orented),意思是數據被分組存儲在數據集中,被稱為一個集合(Collenction)。每個 集合在數據庫中都有一個唯一的標識名,并且可以包含無限數目的文檔。集合的概念類似關系型數據庫(RDBMS)里的表(table),不同的是它不需要定 義任何模式(schema)。
模式自由(schema-free),意味著對于存儲在mongodb數據庫中的文件,我們不需要知道它的任何結構定義。如果需要的話,你完全可以把不同結構的文件存儲在同一個數據庫里。
存儲在集合中的文檔,被存儲為鍵-值對的形式。鍵用于唯一標識一個文檔,為字符串類型,而值則可以是各中復雜的文件類型。我們稱這種存儲形式為BSON(Binary Serialized dOcument Format)。

MongoDB服務端可運行在Linux、Windows或OS X平臺,支持32位和64位應用,默認端口為27017。推薦運行在64位平臺,因為MongoDB

在32位模式運行時支持的最大文件尺寸為2GB。

MongoDB把數據存儲在文件中(默認路徑為:/data/db),為提高效率使用內存映射文件進行管理。

項目地址:http://www.mongodb.org/
相關文檔:http://www.baiduhome.net/doc/search?q=mongodb&ft=all&od=0

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!