MongoDB Cloud來了
每年6月是MongoDB舉辦技術(shù)大會(huì)的日子,這是MongoDB一年一度最大的活動(dòng),MongoDB重大技術(shù)的發(fā)布和未來產(chǎn)品路線也會(huì)在這次大會(huì)上發(fā)布,因此,是觀察MongoDB未來發(fā)展的最好機(jī)會(huì)。今年因?yàn)樾鹿诜窝滓咔榈脑,?huì)議改成了線上,大會(huì)名稱變成了MongoDB.Live 2020,但是,大會(huì)承載的使命沒變。會(huì)上不僅發(fā)布了新的品牌——MongoDB Cloud,還有眾多重要發(fā)布,包括Atlas眾多新的功能(Atlas Search、Atlas Data Lake、Atlas Online Archive)、MongoDB Realm、MongoDB Charts、MongoDB Shell等,會(huì)上MongoDB的最新版本的MongoDB 4.4(beta版)也正式亮相。
釋放數(shù)據(jù)潛能
MongoDB是數(shù)據(jù)庫行業(yè)的后起之秀,但成長非常迅速,已經(jīng)持續(xù)多年與Oracle、MySQL、SQL Server、PostgreSQL一起位列全球五大最流行的數(shù)據(jù)庫,其影響力已經(jīng)超過傳統(tǒng)數(shù)據(jù)庫DB2。
在大會(huì)上,MongoDB 總裁兼首席執(zhí)行官 Dev Ittycheria透露了MongoDB公司的一些成長數(shù)據(jù)。截至目前,MongoDB 社區(qū)版已下載超過 1 億次,在全球 100 多個(gè)國家及地區(qū)中擁有超過 1.8萬家各種規(guī)模的企業(yè)客戶。根據(jù)Stack Overflow 在全球范圍內(nèi)進(jìn)行的開發(fā)人員調(diào)查表明,連續(xù) 4 年MongoDB 被開發(fā)人員評(píng)為全球范圍內(nèi)最受開發(fā)人員青睞的數(shù)據(jù)庫。
“MongoDB 以釋放數(shù)據(jù)潛能為使命,我們致力于解決開發(fā)人員的數(shù)據(jù)問題。”Dev Ittycheria在演講時(shí)表示。
MongoDB 總裁兼首席執(zhí)行官 Dev Ittycheria
的確,由于 MongoDB 獨(dú)特的文檔模型和查詢語言使數(shù)據(jù)處理變得如此容易,很快擁有了一個(gè)熱愛 MongoDB 的龐大開發(fā)人員社區(qū)。當(dāng)時(shí)傳統(tǒng)數(shù)據(jù)庫已經(jīng)非常不適用于新型應(yīng)用程序,因?yàn)檫@些程序常常需要處理來自不同來源的多種格式的大量數(shù)據(jù),還要適應(yīng)競爭日益激烈的市場。而傳統(tǒng)的關(guān)系型數(shù)據(jù)庫不靈活、無法水平擴(kuò)展,從而使其開發(fā)緩慢且維護(hù)成本高昂。
MongoDB首席產(chǎn)品官Sahir Azam說,作為一種新的開源通用數(shù)據(jù)庫,MongoDB有三大核心技術(shù)優(yōu)勢:
首先,是其文檔模型。文檔模型使數(shù)據(jù)處理變得容易,因?yàn)樗哂徐`活性,適用于廣泛的用例,并很好地映射了開發(fā)人員在現(xiàn)代的、面向?qū)ο蟮木幊陶Z言中的工作方式。
第二,分布式系統(tǒng)。水平擴(kuò)展、冗余和工作負(fù)載隔離是現(xiàn)代數(shù)據(jù)庫的基本要求,因此分布式架構(gòu)十分必要的。
第三,可以在任何地方運(yùn)行;贛ongoDB可以開始在筆記本電腦上進(jìn)行開發(fā),在公司數(shù)據(jù)中心中運(yùn)行它,或者在公共云中對(duì)其進(jìn)行管理。
“當(dāng)然,傳統(tǒng)數(shù)據(jù)庫確實(shí)提供了對(duì)關(guān)鍵任務(wù)應(yīng)用程序至關(guān)重要的功能,但我們已經(jīng)將諸如傳統(tǒng)數(shù)據(jù)庫的這些關(guān)鍵功能,如事務(wù)、二級(jí)索引、聚合功能以及安全性和管理功能等整合到 MongoDB。” Sahir Azam說,這些功能的組合使得 MongoDB 具備以任何規(guī)模支持任何應(yīng)用程序的強(qiáng)大實(shí)力。這就是MongoDB 現(xiàn)在背后全球數(shù)百萬開發(fā)人員和成千上萬企業(yè)青睞的原因。
從Altas到MongoDB Cloud
云數(shù)據(jù)庫已經(jīng)大勢所趨。Gartne此前發(fā)布的研究報(bào)告《The Future of the Database Management System (DBMS) Market Is Cloud》認(rèn)為,數(shù)據(jù)庫創(chuàng)新的主戰(zhàn)場已經(jīng)從傳統(tǒng)的本地市場轉(zhuǎn)到了云上,數(shù)據(jù)庫云服務(wù)是大趨勢,將數(shù)據(jù)庫安裝在企業(yè)數(shù)據(jù)中心的服務(wù)器上已經(jīng)或者很快將成為一種“過時(shí)”的方法。
MongoDB對(duì)此也早有準(zhǔn)備,于2016推出了Atlas——這是MongoDB的云版本,由MongoDB來運(yùn)營。Atlas自年推出以來取得了長足發(fā)展,目前已經(jīng)落戶AWS、微軟Azure、谷歌GCP,并成為MongoDB的主要收入來源,在2021財(cái)年第一季度營收中占比42%。
不過,MongoDB對(duì)云市場有更大的期待。在本次大會(huì)上MongoDB推出了全新的云品牌MongoDB Cloud,旗下有三個(gè)產(chǎn)品,包括Atlas、Atlas Data Lake和Ream。
MongoDB首席產(chǎn)品官Sahir Azam
Atlas毫無疑問是MongoDB Cloud品牌下最核心的產(chǎn)品。MongoDB一直在不斷打造和豐富Atlas的功能集。本次大會(huì)上展示了Atlas很多新的功能,比如自動(dòng)擴(kuò)展、Schema建議等。其中,Atlas的自動(dòng)擴(kuò)展功能可以根據(jù)工作負(fù)載實(shí)時(shí)、自動(dòng)進(jìn)行計(jì)算能力和存儲(chǔ)能力的擴(kuò)容,其最直接的受益是節(jié)省費(fèi)用;而Schema建議功能則可以對(duì)數(shù)據(jù)模型的建模提供建議,有助于性能優(yōu)化,目前這兩個(gè)功能目前都已正式上線。另外,Atlas Search也正式上線。Atlas Search具有類似Google搜索類似的全文本搜索功能,同時(shí)其還能夠統(tǒng)一對(duì)Atlas、AWS S3進(jìn)行查詢,從而簡化查詢和搜索工作。
MongoDB Cloud之下的另一個(gè)重磅產(chǎn)品是Atlas Data Lake,這個(gè)去年發(fā)布了Beta版,如今已經(jīng)正式上線。Atlas Data Lake允許用戶使用MongoDB查詢語言查詢存儲(chǔ)在AWS S3中的數(shù)據(jù)。這為用戶提供了更多存儲(chǔ)和查詢數(shù)據(jù)的靈活性。MongoDB還加強(qiáng)了Atlas Data Lake與Atlas、AWS S3之間的集成,實(shí)現(xiàn)了Atlas Data lake的在線歸檔( Atlas Online Archive),也就是說,用戶可以進(jìn)行設(shè)置,讓一部分冷數(shù)據(jù)自動(dòng)存儲(chǔ)到AWS S3中。
Atlas中部分新增的功能
MongoDB Cloud旗下的第三個(gè)重磅產(chǎn)品是Realm,它來自于去年收購的嵌入式數(shù)據(jù)庫公司Realm。Realm主要運(yùn)行在移動(dòng)設(shè)備,如今Realm可以自動(dòng)實(shí)現(xiàn)Realm中的數(shù)據(jù)同步并將其從移動(dòng)設(shè)備備份到MongoDB Cloud中,這想必是此次Realm被納入MongoDB Cloud中的一個(gè)重要原因。對(duì)于開發(fā)人員來說,這種同步能力讓它們可以更輕松地在移動(dòng)設(shè)備上處理數(shù)據(jù),并且使數(shù)據(jù)在后端的MongoDB數(shù)據(jù)庫中可見。
MongoDB 4.4 beta版亮相
今年MongoDB.live 2020大會(huì)上另一個(gè)重要發(fā)布是MongoDB 4.4 beta版,這也是很多開發(fā)人員非常關(guān)注的。MongoDB 4.4中的確推出一些新功能,包括片鍵可修改、增強(qiáng)的集合功能、Hedged read功能等,無論是在MongoDB數(shù)據(jù)庫(私有云)或Atlas(公共云)都將從新版MongoDB中受益。
MongoDB 4.4中新增的部分功能
分片是MongoDB集群中分配數(shù)據(jù)的常用方法,這樣可以確保各個(gè)分片上的負(fù)載分布更加均勻。從MongoDB 4.2開始可以對(duì)分片的片鍵值進(jìn)行修改,修改后MongoDB會(huì)自動(dòng)根據(jù)新的片鍵值將文檔移動(dòng)新的片上,從而大大提高了效率。在MongoDB 4.4中又進(jìn)了一步,現(xiàn)在可以修改片鍵,也就是重新定義片鍵,從而可以更靈活地控制如何在MongoDB集群上組織數(shù)據(jù)。比如,剛開始你可能采用比較粗粒度的分片,后來可以修改片鍵來調(diào)整分配,MongoDB數(shù)據(jù)庫將根據(jù)新的片鍵自動(dòng)重新分配數(shù)據(jù)存儲(chǔ)位置。
MongoDB 4.4還將擁有更強(qiáng)大的集合功能。MongoDB 4.4新增了Union 操作,它可以把多個(gè)數(shù)據(jù)集的數(shù)據(jù)匯集到一起,從而可以進(jìn)行更多探索和查詢工作。通過Union,把數(shù)據(jù)的匯集工作放到了MongoDB中,否則都要編碼通過應(yīng)用程序來完成了,也可以減少對(duì)數(shù)據(jù)進(jìn)行ETL的需求。
MongoDB 4.4中還新增了Hedged read功能,即數(shù)據(jù)庫會(huì)把查詢需求同時(shí)發(fā)給多個(gè)復(fù)制集,并從響應(yīng)最快的節(jié)點(diǎn)返回結(jié)果從而最大程度地減少延遲,這樣可以改善用戶體驗(yàn)。這個(gè)功能背后的考慮是:數(shù)據(jù)庫默認(rèn)狀態(tài)是一致性優(yōu)先,也就是要返回最新的數(shù)據(jù),不過,有些時(shí)候如果返回的數(shù)據(jù)不是最新的也關(guān)系不大而是更希望能盡快得到結(jié)果,這就是Hedged read的價(jià)值。
除了上述重要發(fā)布和更新之外,在MongoDB.Live 2020大會(huì)上還發(fā)布了一些新的或者增強(qiáng)的MongoDB工具,包括MongoDB Chart、MongoDB Shell、MongoDB CLI。其中,新的MongoDB Chart中添加了儀表板篩選以及可嵌入的SDK,可直接應(yīng)用程序集成。作為連接到MongoDB數(shù)據(jù)庫進(jìn)行查詢和管理集群的最常用工具,新的MongoDB Shell通過自動(dòng)完成功能提高了效率,并通過語法高亮顯示提高了可讀性。特別是在遇到問題時(shí),新的Shell更容易追蹤問題。全新的MongoDB CLI是一個(gè)采用命令行對(duì)Atlas的部署進(jìn)行操作的操作界面,借助它還可以在Ops Manager或Cloud Manager中管理Atlas環(huán)境和在自托管群集之間輕松切換。
安全也是本次大會(huì)的一個(gè)重要內(nèi)容。從MongoDB 4.2開始其新增了客戶端字段級(jí)加密的功能,目前這個(gè)功能已普遍可用,現(xiàn)在MongoDB再不斷增加新的驅(qū)動(dòng),包括Javascript、Node.js、Python、Go等。
HashiCorp Vault是一個(gè)用于存儲(chǔ)和控制對(duì)應(yīng)用程序中所有服務(wù)的敏感信息(例如密碼、證書和加密密鑰)的系統(tǒng),MongoDB為HashiCorp Vault構(gòu)建了MongoDB Atlas密鑰引擎,利用Atlas密鑰引擎可以輕松管理和控制數(shù)據(jù)庫用戶的訪問。
另外,大會(huì)上還宣布Atlas已經(jīng)可以支持AWS IAM數(shù)據(jù)庫身份驗(yàn)證,F(xiàn)在,用戶可以使用IAM允許應(yīng)用程序、容器和無服務(wù)器函數(shù)使用臨時(shí)AWS IAM憑據(jù)向Atlas集群進(jìn)行身份驗(yàn)證,就像您的應(yīng)用程序向其他AWS服務(wù)進(jìn)行身份驗(yàn)證一樣。
寫在最后
作為MongoDB一年一度的技術(shù)盛會(huì),MongoDB.live 2020大會(huì)內(nèi)容非常豐富,內(nèi)容遠(yuǎn)不止上述這些。應(yīng)該說,為了簡化和方便開發(fā)人員對(duì)數(shù)據(jù)的利用,最大程度地釋放數(shù)據(jù)的潛能,MongoDB做了大量工作,并還將持續(xù)下去。正如MongoDB首席產(chǎn)品官Sahir Azam在其主題演講中所說:
“我們所做的每一件事都源于我們希望開發(fā)人員能擺脫數(shù)據(jù)處理的麻煩,讓開發(fā)人員可以專注于真正重要的事情。我們希望大家知道MongoDB是現(xiàn)代的通用數(shù)據(jù)平臺(tái),讓您為未來構(gòu)建的數(shù)據(jù)平臺(tái)。”
本文章選自《數(shù)字化轉(zhuǎn)型方略》雜志,閱讀更多雜志內(nèi)容,請(qǐng)掃描下方二維碼
