天天看點

巨杉資料庫:金融級資料庫是怎樣煉成的巨杉資料庫:金融級資料庫是怎樣煉成的

巨杉資料庫:金融級資料庫是怎樣煉成的

巨杉資料庫:金融級資料庫是怎樣煉成的巨杉資料庫:金融級資料庫是怎樣煉成的

巨杉資料庫SequoiaDB是一家特立獨行的金融級資料庫廠商。大型企業客戶需要“原廠”金融級資料庫産品和服務,巨杉資料庫堅持以此為宗旨,曆經6年從1.0到3.0的不斷疊代創新,目前已經廣泛應用于銀行、證券、保險、政府、電信等大型企業的核心生産系統。

巨杉聯合創始人王濤表示,在業務量爆炸性增長的今天,傳統資料庫正面臨着巨大的挑戰,例如Oracle、DB2,其擴充能力和成本效益都存在相當的局限性。大型企業需要的是既有分布式能力,又如Oracle這樣能達到金融級水準的資料庫産品。

是以,在6年不斷成長創新疊代中,巨杉改變了國産資料庫長期低迷的狀态。在分布式領域,巨杉資料庫已經走在Oracle 12c的前面。

“金融級”的核心來自于原廠的産品能力

大型企業IT的管理是個非常複雜的過程,既要考慮技術的先進性,也要滿足各種系統的相容、合規以及風控的要求。是以,大型企業在選擇技術産品時,首先要判斷該産品是否滿足企業級需求。

除了高性能與可靠性以外,企業級最根本的核心是産品化,适用于多種負載及業務場景;以及原廠支援能力,并且提供源代碼及核心開發人員級别的技術支撐。

網際網路公司的技術發展路線是以解決自身業務的特定場景和功能為目的,并不考慮産品化,這和面向大型企業的産品發展路線相比,是兩種不同的模式。這也是為什麼網際網路巨頭也很難推出金融級産品的原因。

是以說,滿足金融級需求的核心要素是原廠産品能力,即完全自主掌控産品代碼和産品的發展路線。

銀行是金融級應用的标杆

以銀行為首的金融行業占據了50%以上的企業級IT投入,接着才是政府、營運商等行業。一般來說,一家銀行通常擁有超過百種以上的業務系統,而且曆經幾十年的法律和業務規則的演進。是以,業界公認銀行在選擇技術産品過程中,對于安全性、可靠性、複雜度等企業級功能要求最為嚴苛。

銀行作為企業級軟體應用的标杆行業,被其采用的産品達到了金融級産品的最高标準,自然更能夠滿足其他行業的要求。

 1、銀行使用者對于産品的選擇非常嚴苛,為什麼這麼多銀行會選擇巨杉資料庫呢?

這得益于巨杉的企業級基礎軟體基因。巨杉的研發技術以IBM DB2資料庫和華為分布式技術團隊為班底,是中國最好的“原廠”資料庫産品團隊。

巨杉資料庫經過6年從1.0到3.0的不斷疊代創新,曆經了大中型銀行核心生産系統的嚴格驗證和洗禮,厚積薄發,才成為被銀行金融業界所信任的金融級資料庫産品。

2、資料庫産品的發展曲線和生命周期都比較長,這是什麼原因呢?巨杉對于此的觀點怎麼樣的呢?

的确如此,資料庫是基礎性軟體,好比汽車的引擎一樣,是任何系統的_關鍵部件,具有“牽一發而動全身“的特性。這就要求資料庫具有相當高的成熟度。這種成熟度需要在技術、産品、工程、支援以及行業經驗上具有相當長時間的積累。

傳統的關系型資料庫中,例如Oracle、IBM DB2等,都曆經20多年才達到現在的版本。任何一款資料庫從研發到産品都是一個曆經磨難的過程,一般需要6年以上的時間才能走出0到1 的階段,然後再在行業和實際應用場景中不斷地曆煉打磨,逐漸過渡到成熟期。

另外,金融級資料庫産品面對的是諸如銀行、證券、保險等頭部行業大型企業,對産品上的複雜度和成熟度又提出了更高層次的要求。是以,其生命周期還要更長。

SequoiaDB作為金融級資料庫産品曆經6年發展,進入3.0時代,得到上百家大型銀行等大型客戶的采用和信任。這标志着巨杉資料庫已經進入了資料庫生命曲線的成熟期。

3、巨杉一直堅持“原廠”,這是為什麼?

這和巨杉的商業模式息息相關。巨杉主營是資料庫産品及服務,服務于很上百家大型的企業,上千的業務系統,每年還在不斷地增長。資料庫作為基礎工具型軟體,要滿足各種系統需求,而不為單一特定的場景服務。做到這點的核心就是“原廠”掌握核心代碼,掌控産品路線,能夠快速應對客戶需求的同時也能保證産品化。

我們都知道,細節定成敗,實踐出真知,技術實力的背後是産品能力。一個成熟的産品需要不斷的在大規模的金融級應用中實踐與砺煉。這個過程就是不斷爬坑、不斷積累經驗和不斷完善細節。

這對一個産品研發的工程及管理能力提出了相當高的要求。例如巨杉資料庫産品的測試,産品達到99%以上自動化測試覆寫率,為保障品質,每個小版本的測試都涉及12,000個以上的測試用例,橫跨超1000個伺服器節點。

隻有這樣,我們的産品才能做到隻用一個産品、一個研發團隊來滿足所有的客戶,提供“原廠”代碼級别的支撐服務。

4、巨杉資料庫和Oracle, MySQL這樣的傳統關系型資料庫的關系和對比是怎麼樣的?有何優勢?”

巨杉的發展目标就是想成為“分布式”的“Oracle”。怎麼解釋呢,就是說從金融級産品能力和服務能力要達到Oracle的水準,但又是分布式的新一代資料庫。巨杉在分布式領域已經處于領跑地位,跑在了Oracle 的前面。

例如,巨杉資料庫在同一個分布式架構下支援非結構化的對象存儲,能夠在高并發場景下處理多種結構資料,大規模地降低了運維成本。這相比傳統資料庫是個獨特的優勢。

對比MySQL則大不相同,巨杉資料庫專注服務于大型的企業,MySQL則是更偏向于網際網路、創業階段的中小企業市場,金融級産品标準和服務對象都不一樣。

5、分布式資料庫真的是未來的方向嗎?

這點毋庸置疑。分布式的研究來自于并行計算,這其實很早就有,不是個新鮮事物。隻不過過去網絡、存儲、計算成本比較高的時候,分布式的成本和性價高。造成做分布式資料庫從成本和應用角度上不合适。

現在網絡、存儲、計算成本都大幅降低,這就是摩爾定律的威力。也是造成互網聯網在過去20年内的高速發展。發展到了現在,這種利用x86伺服器做分布式計算的能力已經大幅度超越了傳統集中式的能力。加之現在資料使用的量級也是每年技術級的增長,傳統資料庫力不從心,是以從需求和技術能力兩個方面都使得分布式資料庫成為必然。

6、現在大型企業就需要“兩地三中心”的說法,分布式資料庫能解決這個問題嗎?

兩地三中心是指跨地域的資料中心,是分布式的最重要的應用場景。Oracle在1992年開始就研究跨地域的資料同步,結果因為關系型的特點,優勢也成了劣勢,在分布式發展上非常失敗,是以回歸到集中模式了。

這裡面在術語上有“一緻性”的問題,就是如何保證不同地域節點的資料相同。其中強一緻指任何時候不同節點的資料都相同,而最終一緻性指經過很短的時間延遲後,不同節點的資料最後終會相同。這在過去傳統資料庫裡不可調和。分布式解決這個問題的能力非常強大,可配置的一緻性是分布式資料庫的重要部分,可以解決不同業務場景對不同一緻性的需求。

是以巨杉資料庫的特點之一就是支援兩地三中心的架構。

7、國外很多分布式的資料庫也開始提供SQL支援了,巨杉也支援是吧,這是為什麼?

巨杉支援SQL要回到2014年了,比國外同行起步早很多。巨杉當時雖然在性能上獨樹一幟,但是很快發現客戶的開發和運維都太習慣SQL了。SQL是個非常好的語言和工具,曆經40年培養了大量的使用者人才和應用習慣。可以說,99%的企業使用者都需要SQL。

巨杉的技術驅動來自于使用者和市場,是以當機立斷,我們就開始增強對SQL的支援,到現在,我們同時支援高并發的标準SQL也支援分析型的Spark SQL,滿足不同的使用者需求。

8、巨杉是NoSQL資料庫還是NewSQL,很多人都混淆,能解釋一下嗎?

巨杉資料庫在經曆了多年的發展以來,經曆了從NoSQL向NewSQL再向關系型資料庫不斷演進的過程,如今已經支援标準SQL、OLTP、對象存儲以及JSON存儲等多種模式。

根據Gartner的定義,如今的巨杉資料庫是一個典型的多模資料庫(Multi-Model Database),可以被當做關系型OLTP資料庫使用的同時,也支援半結構化資料與非結構化資料的存儲。

9、在産品上,目前巨杉資料庫的對标目标已經是Oracle而超越了MongoDB,在企業級市場特别是銀行,為什麼能夠比MongoDB更為成功?

巨杉資料庫 3.0是一款分布式對象存儲、分布式文檔型和分布式OLTP全覆寫的多模(Multi-Model)金融級分布式資料庫,而MongoDB,couchbase等産品僅相當于巨杉資料庫的一個子集。

SequoiaDB從開始之初就定位于原廠的金融級産品,1.0版本起就直接被銀行企業采用。MongoDB是面向開發者、程式員的資料庫産品,幫助開發快速疊代。是以SequoiaDB和MongoDB的出發點截然不同。

SequoiaDB從2.0版本開始,向着分布式多模資料庫不斷演進,大力發展SQL支援能力。不管從功能上還是性能上都超越MongoDB。

巨杉資料庫的商業模式對标Oracle,以大型企業為服務對象,而MongoDB則服務于長尾的中小型企業市場,雙方的使用者領域大不相同。是以巨杉并沒有把MongoDB作為對标産品和競争對手。

10、2012年成立至今,巨杉資料庫經曆哪幾個發展階段?整個産品打磨經曆了多長時間?

2012年,巨杉資料庫在公司成立之初,利用分布式的特征提高性能,解決傳統關系型的性能瓶頸。最早的版本是分布式文檔型資料庫,分布式架構下主要以高并發性能為優勢特點。

2015年初 2.0版本開始向多模(Multi-Model)的分布式資料庫發展,包括OLTP和SQL的支援,增加高并發查詢的SQL引擎和分析為主的Spark SQL引擎,并成為了Spark的全球14個發行商之一。

同時,巨杉也開發分布式對象存儲引擎,在同一個分布式架構下能同時管理操作記錄型資料和非結構化的塊結構資料。

2017年巨杉資料庫全面支援高性能海量資料處理,事務處理,資料庫級别的HTAP以及對象存儲等多種應用場景,并繼續加強分布式OLTP的能力。

繼續閱讀