簡介:5月29日阿里雲開發者大會上,阿里巴巴集團副總裁、阿里雲數據庫產品事業部負責人李飛飛演講實錄。
我認爲雲原生是將來使用雲的標準方式,雲計算資源無處不在、取之不盡、用之不竭,不用關心雲資源在哪裏、有多少。就像今天咱們使用自來水同樣,沒有⼈會費盡心思考慮水從哪裏來。git
阿里雲在雲原生數據庫領域作了多年的實踐、嘗試與探索,與開發者一塊兒成長。咱們認爲接下來雲原生數據庫必須關注和發展的領域有如下五個:github
1)雲原生分佈式數據庫
將雲原生和分佈式技術深度融合,將Share Nothing、Share Storage、Share Everything架構深度融合。安全
2)智能化架構
利用AI、機器學習的技術,讓數據庫系統可以實現自動駕駛的能力,讓開發者能夠更好地管理和使用數據庫的服務,如自動調參、索引推薦、異常檢測等。併發
3)安全可信運維
安全可信的能力十分重要,好比說如何確保數據是全鏈路的、加密的、安全的,在存儲、傳輸、計算過程當中都可以提供安全可信的能力。機器學習
4)在離線一體化數據庫設計
減小數據鏈路,數據從在線處理、到在線分析、到離線的存儲,可否提供一體化的體驗,讓開發者能夠更簡單、更便捷地訪問和處理數據。分佈式
5)物聯網多模
面對AIOT、物聯網、車聯網的蓬勃發展,可否打造一個面向開發者與應用的物聯網多模的數據庫。
以上是咱們認爲接下來很是重要的五個方向,也正由於在這些方向的耕耘,阿里雲在去年得到了Gartner全球數據庫領導者的突破。
相信對於任何一個開發者而言,在數據層面最關心的是數據管理生命週期。下面站在開發者的視角,闡述數據的全鏈路生命週期究竟是什麼。
第一步是數據的生產和集成,在這一步如何更高效地作數據集成、數據清洗、數據傳輸、數據備份。當作完這步之後,下一步是數據的實時處理,這裏面就是咱們很是熟悉的傳統關係型數據庫、在線交易、OLTP等。緊接着就是數據分析和發現,用戶如何作數據脫敏、數據的血緣關係等。
以上就是數據管理的生命全週期,咱們在上面構建不一樣的解決方案,和開發者、合做夥伴一塊兒面向應用、行業、客戶去打造最終的Killer APP。
下面就從生命週期的各個階段來闡述一下咱們爲開發者提供了哪些工具,開發者基於這些工具能夠作哪些事情。
數據生產與集成是數據的第一輩子命週期,就像新生兒同樣,數據來到這個世界必需要經歷採集,而後是存儲和處理。
如上圖所示,在這個過程當中阿里雲提供了DTS(Data Transmission Service),支持17種以上不一樣的數據源,能夠作實時增量或者全量的同步,讓應用很是簡潔地實現數據從多元異構的數據源到多元異構的目標端實時的數據同步。
DBS能夠實現跨雲的備份、雲上雲下數據備份的統一,讓數據在多雲多端之間無縫流動。
DMS(Database Management Service)能夠幫助用戶作任務編排、數據分析、血緣分析等一系列事情。
以上構成了阿里雲在數據生產和集成的基礎能力。
數據生產和集成以後是數據的實時處理。
做爲開發者,咱們最關心的就是確保在任何狀況下,在線交易場景的應用永遠在線、數據永遠不丟失,在這裏咱們提供了不一樣的選擇。
1)雲數據庫 RDS:提供企業級數據庫自治能力
首先,阿里雲提供本身的雲數據庫RDS。
每一個雲廠商都有RDS,阿里雲的RDS和其餘RDS有什麼不一樣呢?
發展到雲原生數據庫2.0,阿里雲RDS最大的特色就是提供企業級的數據庫自治能力(Autonomous Database Service)。
首先,經過Kubernetes構建一個雲原生的管控平臺,全部的管控能力都進行了微服務化和容器化部署,這樣能夠屏蔽底層多元異構的資源,爲開發者提供一個雲原生的開發環境和部署環境。
在這個上面,咱們利用AI和Machine Learning的技術,構建了自動駕駛數據庫平臺。爲開發者提供了許多能力,好比自動壓測,咱們能夠自動生成壓測數據,讓它的工做負載與在真實環境幾乎同樣,這樣開發者能夠更好地調測在線系統。另外,咱們提供了索引推薦、參數調優等一系列自動化自治服務能力。
此外,困擾開發者的許多問題,好比在線應用運行速度變得很慢,線程池被打滿等,經過DAS(Database Autonomy Service)能夠幫助開發者更快更好地發現與解決。
2)雲原生關係型數據庫 PolarDB
除了阿里雲RDS以外,雲原生數據庫2.0最核心的能力之一就是雲原生關係型數據庫PolarDB。
爲了讓開發者可以更好地在PolarDB上開發應用,咱們確保PolarDB 100% 兼容 MySQL、100% 兼容 PostgreSQL、高度兼容 Oracle 語法,讓開發者實現輕鬆上雲。
不少企業和開發者有向全球部署的需求,好比在線教育、遊戲,須要咱們的應用可以就近服務用戶,阿里雲推出了全球部署的能力,稱爲Global Database。這表示PolarDB能夠實現跨AZ(Available Zone)的部署,實現RPO等於0,很是低的RTO。經過跨AZ的能力數據實時同步,能夠實現用戶在開發者的應用上就近訪問。
爲了讓開發者更好地體驗到阿里雲的產品,咱們推出了I/O帶寬免費、性價比更高的PolarDB實例,價格僅爲其餘雲廠商雲原生數據庫的30%—40%。
除此以外,咱們還進行了性能測試。
咱們用開發者很是熟悉的SysBench,鏈接事務處理、讀寫混合測試,測試了CPU 密集型和I/O密集型。
如上圖所示,咱們對比了PolarDB和CPU密集型、I/O密集型兩個雲原生數據庫在SysBench上的標準性能測試,能夠看到Polar DB在兩種不一樣工做負載的狀況下都展示出很是優異的性能。
3)雲原生分佈式數據庫PolarDB-X
開發者常常面臨海量數據高併發、超高併發的場景。針對這種場景,阿里雲推出了PolarDB-X,即PolarDB的分佈式版本,也就是將雲原生架構存儲計算分離,上面再構建一層架構來支持一體化分佈式數據庫。
PolarDB-X支持海量高併發、全局二級索引、HTAP複雜查詢、分佈式事務、在線彈性擴展。
以上圖的全局二級索引爲例,它支持ACID,這樣讓開發者能夠更關注業務應用的開發,而不須要關注分庫、分表這樣複雜的邏輯。
咱們用X-Paxos來支持兩個數據副本、一個日誌副本,並且咱們的三副本能夠作到跨AZ部署、支持同城跨機房的RPO等於0。
實時數據庫處理以後,當積累了大量的交易數據,如何在數據裏面發現信息?這就來到了數據分析和發現階段。
雲原生數據倉庫AnalyticDB(簡稱ADB)是雲原生架構,計算存儲分離,計算資源按需彈性,相對傳統方式,成本能夠降低3倍。
咱們在這種雲原生的架構上實現了冷熱數據分層,1TB能夠低至114元/月,一份存儲多種計算是將來數據分析領域發展的大趨勢,用一個存儲多種計算引擎可讓咱們適應工做負載,究竟是離線的ETL、仍是在線的交互式分析,總體成本能夠大幅度降低。
利用前文的這些技術,能夠幫助開發者實如今離線一體化的開發和應用,支持離線ETL以及在線的交互式分析,本質上就是將MTB架構和BSP模型完美地結合在一塊兒。
咱們也高度兼容生態,而且咱們很快會推出Spark兼容版,將這些開源的生態在咱們的雲原生數倉ADB裏面完美結合,實現基於負載的智能化調度和混合應用的支持。
最後是數據開發和管理。
咱們面向數據庫開發者提供一站式的在線數據平臺,阿里雲的開發者社區支持了幾十萬數據庫開發者利用DMS的能力,訪問和管理多元異構的數據庫資源。
DMS支持開發者們全部耳熟能詳的數據庫,從阿里雲的PolarDB、PolarDB-X、RDS、AnalyticDB等,再到MySQL、Oracle、SQL Server等。
接入之後,它提供數據資產、數據庫設計、數據庫開發、數據集成、數據服務等一站式的能力,幫助開發者實現數據化運維、容災/多活、T+1/實時/歸檔、數據集中處理、BI報表、多維分析等能力。
阿里雲做爲全球雲原生數據庫的領導者,將成爲第一家宣佈核心的雲原生數據庫技術進行開源的雲廠商,邀請開發者一塊兒共建雲原生數據庫2.0。
做爲全球數據庫領導者,咱們將雲原生數據庫PolarDB for PG Paxos高可用集羣版開源,目前在Github上開源公開訪問。
在9月份,咱們會推出基於HLC混合時鐘的高擴展分佈式版本,在明年會推出Share Nothing的Sharding和插件化版本,在MySQL生態很早就開源了RDS AliSQL,現在作一個重磅升級,RDS會推出RDS GalaxySQL,以後會推出Paxos高可用性版,而後是雲原生的分佈式版。
咱們看一下具體作哪些事情?
上圖中是咱們爲MySQL和PG生態兩大社區準備開源的組件。
數據庫正在加速雲化,雲原生以及分佈式技術正在重塑數據庫整個技術棧。阿里雲在自身互聯網業務和雲數據庫服務有豐富的實踐經驗,在高可用、分佈式、雲原生、存計分離有技術積累。這些技術以組件和系統的方式開放出來,與開源社區一塊兒共建雲原生分佈式數據庫生態。全部開源的組件都採用對開發者最友好的協議,遵循Apache Version 2.0協議,歡迎開發者和咱們一塊兒共建全球領先、有中國特點的雲原生數據庫2.0社區。
好比經過開源的PolarDB for PG版本,利用X-Paxos協議,幫助開發者快速實現RPO等於0,兼容及高可用數據庫。拋棄傳統的主備模式,走向三節點的模式,全部開源的組件都是即插即拔即用,讓開發者快速享受到PolarDB的能力,而且基於現有的PG、MySQL生態持續發展,歡迎你們加入雲原生數據庫2.0的開源社區。
源碼開放地址:https://github.com/alibaba/PolarDB-for-PostgreSQL
【相關閱讀】
阿里雲開源PolarDB數據庫,與社區共建雲原生分佈式數據庫生態
本文內容由阿里雲實名註冊用戶自發貢獻,版權歸原做者全部,阿里雲開發者社區不擁有其著做權,亦不承擔相應法律責任。具體規則請查看《阿里雲開發者社區用戶服務協議》和《阿里雲開發者社區知識產權保護指引》。若是您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將馬上刪除涉嫌侵權內容。