2017-11-13 08:58:01
MongoDB今天發(fā)布了其文檔數(shù)據(jù)庫3.6版本的簡易說明,旨在使開發(fā)人員能夠更輕松地使用數(shù)據(jù)。MongoDB首席技術官兼聯(lián)合創(chuàng)始人Eliot Horowitz表示,MongoDB已經為核心數(shù)據(jù)庫增加了許多功能,目的是為了讓開發(fā)人員提高工作效率。
在兩年前推出的3.2版本中,MongoDB引入了Equi-join,用戶可以使用查找操作符將兩個集合連接在一起,但查找只能處理equi-join。Horowitz表示,在3.6版本中,用戶可以進行任何想要的內部或外部鏈接,并且可以對子集合進行查詢,現(xiàn)在很容易支持從多個來源獲取數(shù)據(jù)的復雜分析,這將幫助人們通過任何形式的網站從開發(fā)者那里獲得不同來源的數(shù)據(jù)。
過去六年,在匯總管道中進行表達式更新是受歡迎的功能。例如,代表MongoDB中電子商務商店訂單的文檔可能包含許多不同的訂單項。如果用戶想給購物車20%的折扣,可以很容易地發(fā)出一個單一操作給每個項目折扣,而不是手動做每個項目。或者可以將更改應用于數(shù)據(jù)的一個子集,例如在每個尚未發(fā)貨的行上提供折扣。
Horowitz表示,MongoDB的Connector for BI現(xiàn)在已經嵌入到MongoDB的Ops Manager管理工具中。
進一步的變化包括能夠使用JSON定義數(shù)據(jù)庫可以執(zhí)行的模式,Horowitz指出現(xiàn)在的模式非常靈活。
新的更改流使開發(fā)人員能夠構建實時應用程序來設置通知。例如,每次訂購新訂單時,都可以通知托運人。新的文檔數(shù)據(jù)庫可以讓開發(fā)者及時聆聽數(shù)據(jù)庫中發(fā)生的變化,以便對下游的變化做出反應。
3.6版本的另一個新功能是可重試寫入,它可以消除MongoDB在地理上擴展和分布的能力,以便在發(fā)生服務器崩潰時及時處理可用性。當服務器崩潰時,某些操作是否失敗或成功還不清楚。這時,開發(fā)者必須編寫代碼來處理。有了可重寫的輸入,驅動程序會自動為你做。服務器可以保證重試只會發(fā)生一次,開發(fā)人員不必擔心可用性,應用程序也不必處理故障轉移。只允許單個重試的原因是,如果應用程序正在執(zhí)行一個函數(shù)(如遞增計數(shù)器),并且寫入被執(zhí)行多次,則可能導致數(shù)據(jù)不正確。
同時,新版本具備更嚴格的安全性,Ops Manager的進一步更新以及Atlas托管的數(shù)據(jù)庫即服務(如跨區(qū)域復制和驗證)的改進也已實施。
該公司撰寫了一份白皮書,詳細解釋了3.6版本中的新功能。MongoDB表示,該更新版本將于下月初發(fā)布。