阿里雲POLARDB:一個生而不凡的數據庫

關係型數據庫並不新鮮。這個誕生於上世紀70年代的「老古董」,在業內不斷涌現出多種不一樣類型的數據庫的狀況下,仍然站在舞臺的中央,它的地位也依舊不可替代。當前主流的關係型數據庫包括Oracle、DB二、SQL-Server、MySQL、PostgreSQL等。數據庫

  在雲計算的普遍應用下,多種主流的關係型數據庫也紛紛被移植到了雲上。但伴隨着大數據的發展,數據量的爆發式增加,企業對數據庫性能與存儲規模的要求已愈來愈高。而在雲計算從1.0時代向2.0時代不斷邁進的背景下,如何在資源型服務的基礎上提供更好的應用服務則成爲雲服務提供商的主要目標之一。單純地將現有數據庫產品移植到雲上已沒法徹底知足企業用戶的需求,不管是雲服務提供商仍是用戶,都須要一個徹底爲雲打造的優秀的雲原生數據庫。編程

  阿里雲數據庫業務總經理曹偉(鳴嵩)將POLARDB稱做是「承載着阿里雲數據庫從過去1.0時代走向2.0時代的一個標誌性的產品」。做爲阿里雲自研的新一代雲原生關係型數據庫,POLARDB除了具有關係型數據庫的核心特徵外,同時也更關注如何知足用戶對雲服務的特殊業務需求,包括成本、業務連續性及可擴展性等各個方面。工具

阿里雲POLARDB:一個生而不凡的數據庫

▲阿里雲數據庫業務總經理曹偉(鳴嵩)在英特爾傲騰技術媒體分享會上發表演講性能

 

三大核心特性測試

  開發雲原生數據庫並不意味着創建一個新的「門派」,不能由於業務要遷移到雲就必須去適應一套新的編程接口,這是不可取的。所以兼容性是阿里雲數據庫團隊研發POLARDB時的第一理念。包括目前最主流的、開發者最喜歡用的MySQL和PostgreSQL這兩種數據庫生態,POLARDB均可以作到100%兼容。用戶一行代碼都不用改,就能夠把業務從原來的開源數據庫遷移到POLARDB平臺。大數據

  談到兼容性的問題時,曹偉的態度甚至有些「強硬」,他表示:「從第一天起咱們就不接受99%的兼容,只有100%的兼容。在作技術方案選型的時候,即使有一個方案可能不兼容某些東西,但實現起來更簡單,咱們也不會妥協,必定是100%兼容。」優化

  若是說100%的兼容性是不可妥協的原則,那性能和容量則更像是一種追求了。性能的重要性天然無需贅述,特別是在現在數據量大幅暴漲的狀況下,用戶對性能的需求早已不一樣往日。阿里雲數據庫團隊通過不斷地攻堅、優化,使得POLARDB擁有了行業領先的超高性能。通過Sysbench性能測試工具的測試,POLARDB的每秒事務處理量(TPS)可達到22萬,而開源數據庫只有3.5萬次。與開源數據庫相比,POLARDB實現了約六倍的性能提高。同時價格不變,爲用戶節省了大量的成本。阿里雲

  容量擴展也一直是用戶的一大難題。以往用戶的容量不足時,多數經過兩種辦法解決:一是擴容,經過切分業務,將數據庫進行拆分,再以此實現水平擴展;第二是按期作數據搬移,將訪問頻次較低的數據遷移到一個冷數據庫中,以得到可用的存儲空間。但不管是擴容到多個數據庫,仍是進行數據搬移,對用戶來講開發成本都是很是大的,同時還涉及到管理與保證業務連續性的問題。做爲雲原生數據庫,POLARDB能夠支持用戶彈性擴容,最高可達100TB,而這個容量對99%的用戶來講是徹底足夠的。雲計算

  除此以外,POLARDB還有一個核心優點就是「一寫多讀共享同一份數據」。對於一些如淘寶這種讀的訪問比寫的訪問多的業務,過去的作法是用「一主多從」的技術來實現。簡單來講就是一個主庫寫,將數據同步給多個從庫,再使用這些從庫完成讀的訪問。但這種模式有很大的缺點,第一是形成空間浪費,須要不少副本;第二是擴容時間長,由於添加節點時每每須要拷貝數據。POLARDB的作法是讓「一主多從」共享同一個數據副本,無需額外創建多個從庫。並且在幾分鐘內就能夠增長一個只讀節點並啓動服務。blog

相關文章
相關標籤/搜索