焦旭
隨著數(shù)據(jù)庫的發(fā)展和應(yīng)用,作為新一代的分布式數(shù)據(jù)庫,其架構(gòu)與功能特性需要保證在與傳統(tǒng)數(shù)據(jù)庫全兼容的基礎(chǔ)上,擁抱微服務(wù)與云計(jì)算框架?;诖耍植际綌?shù)據(jù)庫對(duì)于分布式交易與ACID必須保證與傳統(tǒng)技術(shù)完全兼容。同時(shí),在面向微服務(wù)應(yīng)用開發(fā)與云計(jì)算基礎(chǔ)架構(gòu)時(shí),新一代分布式數(shù)據(jù)庫必須支持彈性擴(kuò)張、資源隔離、多租戶、可配置一致性、多模式(支持各類SQL協(xié)議)和集群內(nèi)可配置容災(zāi)策略等一系列功能。
日前,在第十屆中國數(shù)據(jù)庫技術(shù)大會(huì)(DTCC 2019)上,專注于SequoiaDB分布式關(guān)系型數(shù)據(jù)庫與SequoiaCM企業(yè)內(nèi)容管理軟件的巨杉數(shù)據(jù)庫正式發(fā)布了旗下“金融級(jí)分布式關(guān)系型數(shù)據(jù)庫SequoiaDB v3.2版本”。
作為巨杉數(shù)據(jù)庫的聯(lián)合創(chuàng)始人、CTO兼總架師的王濤,在大會(huì)上還作了題為《分布式數(shù)據(jù)庫的發(fā)展與未來》的主題演講。
王濤表示:“未來是私有云和微服務(wù)應(yīng)用的時(shí)代,作為分布式數(shù)據(jù)庫,我們不僅僅將其定位成過去某一個(gè)數(shù)據(jù)庫的替代。分布式數(shù)據(jù)庫的核心價(jià)值在于,能夠從數(shù)據(jù)庫的層面以服務(wù)資源池的形式,向上層被從煙囪式架構(gòu)向微服務(wù)架構(gòu)拆散的成百上千個(gè)小服務(wù)提供數(shù)據(jù)庫訪問能力的平臺(tái)?!?/p>
王濤指出,傳統(tǒng)單點(diǎn)數(shù)據(jù)庫的容量瓶頸,僅僅是分布式數(shù)據(jù)庫所解決的問題之一。更重要的是在未來微服務(wù)化應(yīng)用開發(fā)以及云化平臺(tái)的趨勢下,應(yīng)用不再以“煙囪式”的中間件加數(shù)據(jù)庫模式進(jìn)行構(gòu)建,而是采用數(shù)千甚至上萬的微服務(wù)程序構(gòu)建成的復(fù)雜網(wǎng)狀模型。因此,分布式數(shù)據(jù)庫需要滿足以下能力,才能夠滿足上層應(yīng)用的彈性擴(kuò)展、高并發(fā)、高吞吐量、與靈活敏捷的需求。
王濤向記者表示,在技術(shù)需求驅(qū)動(dòng)下,分布式數(shù)據(jù)庫核心技術(shù)能力分為兩個(gè)方面,一方面是對(duì)傳統(tǒng)技術(shù)的兼容,如完整的ACID支持,事務(wù)和一致性保證;以及SQL的完整支持,傳統(tǒng)數(shù)據(jù)庫如MySQL/PostgreSQL的語法完全兼容。
另一方面,則是技術(shù)創(chuàng)新,這包括分布式與擴(kuò)展性,應(yīng)對(duì)數(shù)據(jù)量的變化,實(shí)現(xiàn)存儲(chǔ)層和計(jì)算層的彈性擴(kuò)展;多模式訪問接口,支持多類型數(shù)據(jù)管理和多種模式的訪問接口; HTAP交易/分析混合處理能力,復(fù)雜業(yè)務(wù)需求下,實(shí)現(xiàn)數(shù)據(jù)的物理隔離,互不干擾。
記者了解到,巨杉數(shù)據(jù)庫作為一款金融級(jí)分布式關(guān)系型數(shù)據(jù)庫,本身就是以分布式存儲(chǔ)底座與上層的數(shù)據(jù)庫實(shí)例兩層來進(jìn)行構(gòu)建的。其自研的原生分布式存儲(chǔ)引擎支持完整 ACID,具備彈性擴(kuò)展、高并發(fā)和高可用特性,支持MySQL、PostgreSQL和SparkSQL等多種SQL訪問形式,適用于核心交易、數(shù)據(jù)中臺(tái)、內(nèi)容管理等應(yīng)用場景。
具體而言,底層的分布式存儲(chǔ)作為資源池,數(shù)據(jù)的存儲(chǔ)、分布式事務(wù)控制、記錄和表鎖等都在底層分布式存儲(chǔ)實(shí)現(xiàn)。而數(shù)據(jù)庫實(shí)例層則提供對(duì)上層應(yīng)用程序的SQL服務(wù),用戶可以創(chuàng)建mysql pg sparksql等結(jié)構(gòu)化實(shí)例,也可以創(chuàng)建json s3和文件系統(tǒng)的非結(jié)構(gòu)化實(shí)例。如此一來,每個(gè)實(shí)例中的數(shù)據(jù)在底層是存放在一臺(tái)機(jī)器還是十臺(tái)機(jī)器,對(duì)上層應(yīng)用來說完全透明不需要感知。因此,在巨杉數(shù)據(jù)庫中,一個(gè)mysql表可以輕易存儲(chǔ)十億甚至百億級(jí)別的數(shù)據(jù),開發(fā)者在寫SQL的時(shí)候完全不需要關(guān)注底層表到底被分散在多少臺(tái)物理設(shè)備中。
通過對(duì)架構(gòu)的梳理和優(yōu)化,以及性能的提升,巨杉數(shù)據(jù)庫最新公布的SequoiaDB v3.2版本具有:標(biāo)準(zhǔn)SQL支持,MySQL協(xié)議級(jí)兼容;金融級(jí)分布式OLTP;Multi-Model多模數(shù)據(jù)引擎;HTAP混合事務(wù)/分析處理;輕松實(shí)現(xiàn)PB級(jí)別數(shù)據(jù)管理;提高數(shù)據(jù)安全與多活容災(zāi)等特點(diǎn)。
王濤認(rèn)為:“未來,分布式數(shù)據(jù)庫的發(fā)展必將呈現(xiàn)出不斷增長的趨勢?!闭窃谶@種信念下,自2011年以來,王濤帶領(lǐng)著技術(shù)團(tuán)隊(duì)從零打造了巨杉的分布式數(shù)據(jù)庫。
如今,SequoiaDB已經(jīng)擁有了超過50家大型銀行客戶,以及超過千家的企業(yè)用戶。SequoiaDB更是在2017、2018年作為中國首家數(shù)據(jù)庫廠商連續(xù)入選Gartner的數(shù)據(jù)庫年度報(bào)告。