中國數據庫OceanBase登頂之路

今年天貓雙11當天,OceanBase數據庫再次刷新數據庫處理峯值,達6100萬次/秒,創造了新的世界紀錄。數據庫

在此以前一個月,據權威機構國際事務處理性能委員會TPC披露:螞蟻金服的分佈式關係數據庫OceanBase,打破美國甲骨文公司保持了9年的世界紀錄,成爲首個登錄該榜單的中國數據庫系統。服務器

b3e83026-fb73-477a-b138-52b435c129fa.jpeg

做爲全球首個應用在金融核心系統的分佈式關係數據庫,螞蟻金服OceanBase的出現,是金融科技發展過程當中極爲重要的一步。架構

事實上,螞蟻金服OceanBase「登頂」之路絕非易事,卻又是理想主義使然!正如馬雲所講,「我不懂技術,可是我尊重技術。」併發


九年積澱縮影,一切從零開始

2008年,阿里巴巴集團首席架構師王堅提出「去IOE」,即擺脫業務系統對IBM小型機、Oracle數據庫以及EMC存儲的過分依賴。2009年開始,阿里舉全公司之力投入到雲計算的研發和使用中,隨後在陽振坤帶領下啓動了OceanBase分佈式關係數據庫項目。數據庫設計

從2011年雙11到2019年雙11,自主研發的OceanBase數據庫,以遠低於傳統商業數據庫的成本,更高的可用性,一次次地刷新世界紀錄,打破了核心數據庫長期被傳統商業數據庫壟斷的格局。分佈式

2017年,OceanBase數據庫邁出了商業化關鍵的第一步,爲南京銀行「鑫雲+」互金開放平臺提供金融級分佈式關係數據庫服務。此後,OceanBase不只在西安銀行、廣東農信、人保健康險、招商證券、蘇州銀行、常熟農商行等金融機構的生產系統中投入運行,而且還出口到了印度和美國等地,爲當地的支付業務提供數據庫服務。ide


數據庫的前世此生,螞蟻金服自主研發之路

之前,在以IOE爲表明的傳統IT環境中,Oracle數據庫的地位根深蒂固。2008年王堅博士成爲阿里集團首席架構師,他意識到IOE架構對於阿里長期運營成本的影響以及對將來業務發展的制約,不只提出了「去IOE」的想法,還有力地推進了自研數據庫OceanBase的發展。高併發

從2009年開始的雙11,每一年產生和處理的數據量都在爆發式增加,若是一直採用Oracle數據庫的話,運營成本將是天價。另外一方面,爲傳統IT環境而設計的Oracle數據庫,並無考慮到互聯網的大規模、高併發、大容量等新興需求。爲此,阿里巴巴/螞蟻金服開始走上了自主研發的道路,從頭開始從新設計一個完徹底全自主研發的數據庫產品——OceanBase。性能

本質上來看,OceanBase與Oracle同樣都是關係型數據庫,但Oracle是針對傳統業務場景而造成的集中式數據庫,而OceanBase則是面向高併發、大數據環境而誕生的分佈式關係數據庫。因爲是徹底分佈式架構,OceanBase工做時,把原來集中存儲和處理的數據分散到不一樣的機器上進行,系統的存儲和計算能力均可以經過增長或減小機器而實現水平伸縮,克服了傳統數據庫集中式系統沒法水平伸縮的窘境。大數據

從第一行代碼起步到今天超過百萬行代碼,支撐雙11的超高峯值以及螞蟻金服的全面業務,OceanBase能夠說是一個劃時代的數據庫產品。正如螞蟻金服資深技術專家陳萌萌所言,「真正用分佈式架構解決像螞蟻金服這麼大規模事務性需求的分佈式數據庫,目前只有OceanBase。」


複雜業務場景錘鍊出來的分佈式數據庫!差點「夭折」的OceanBase

因爲數據庫的穩定性、正確性、高可用、高性能等苛刻要求,自主研發數據庫須要的是行業背景和企業實踐,這也是爲何中國大多數企業、高校和科研機構沒法在數據庫研發上取得突破性進展的緣由之一。

幸運的是,OceanBase遇上了百年不遇的「天時」和「地利」的機遇。「天時」是當時互聯網的高併發帶來的數據庫的併發訪問和數據量的百倍、千倍的增長,而傳統數據庫固有的集中式系統沒法具有這種擴展能力。「地利」則是阿里巴巴/螞蟻金服自有龐大的業務和數據庫需求,這不只使得OceanBase有足夠的經濟價值,更爲OceanBase的成長提供了良好的土壤和營養。

e7e91075-182a-45df-90f8-6018a31cb8ad.png

事實上,OceanBase研發路上也幾經「夭折」。因MySQL就能知足淘寶大部分業務需求致使OceanBase團隊面臨解散,因業務系統改造量巨大致使OceanBase幾個月都沒法上線……所面臨種種的困境,都因獲得了王堅、彭蕾、程立、劉振飛等阿里巴巴/螞蟻金服衆多高管鼎力支持才化險爲夷。


摘下皇冠上的明珠

從2010立項開始算起,OceanBase用了7年多的時間纔在螞蟻金服取代Oracle成爲了支付寶的帳務等數據庫,這對整個金融行業具備里程碑意義。

2014年雙11,OceanBase僅處理10%的交易數據鏈;2015年雙11,OceanBase處理100%交易數據鏈和50%支付數據鏈;2016年雙11,所有交易數據鏈和支付數據鏈以及30%花唄帳務運行在OceanBase上;2017年雙11,包括整個帳務庫在內的所有核心繫統都100%運行在OceanBase上;2019年雙11,OceanBase再次刷新了數據庫處理峯值的世界紀錄,達到6100萬次/秒。

b5ffa0a3-3537-41f6-b56b-7d6e0aab905d.jpeg

區別於傳統集中式數據庫,OceanBase的根本特徵是分佈式架構,基於普通的PC服務器構建的知足金融級高可靠性以及數據一致性的數據庫系統。事實上,OceanBase也被稱爲原生的分佈式關係型數據庫,其把全部與高可靠性及數據一致性相關的問題在數據庫內核層面就解決掉,使得OceanBase真正具有高度集成、總體交付、對業務少侵入甚至無侵入的商業數據庫特徵,同時也真正克服了單純依賴分庫分表的分層設計中所缺失的全局一致及跨庫查詢等缺陷。

經過原生的分佈式數據庫設計以及PAXOS協議等,OceanBase實現了高可用、強一致、易用性、高性能、可擴展以及低成本。原先一臺高端服務器動輒幾十萬、幾百萬,而OceanBase僅用幾千元至幾萬元的PC服務器便可。螞蟻金服高級研究員陽振坤錶示,「OceanBase的性價比已經達到了現有商業數據庫的5倍~6倍以上,將來還將更高。」


OceanBase進入商業化新時代

從2017年開始,OceanBase跟隨整個螞蟻金服的金融科技開放,開始了向傳統金融賦能的實踐過程。同年OceanBase在南京銀行上線,爲南京銀行「鑫雲+」互聯網金融開放平臺提供金融級分佈式關係數據庫服務,邁出了商用的關鍵一步。隨後,西安銀行、廣東農信、人保健康險、招商證券、蘇州銀行、常熟農商行等也在生產系統中使用OceanBase。

7aead99b-da78-4c56-862e-28ad12c43d4d.jpeg

今天,針對企業廣泛迫切須要的高性能交易處理+大容量商業智能的混合負載需求,OceanBase分佈式關係數據庫將充分發揮自身水平擴展能力的優點,進一步完善和優化OLTP+OLAP混合負載的功能和性能,爲更多業務提供服務。


想要了解更多?

掃描下方二維碼關注11月19日「螞蟻金服雙11背後的技術:巔峯洞見·聚焦金融新技術」發佈會直播。

ca1a4034-3e0a-4742-ae66-ba5f7e15e5f6.png

相關文章
相關標籤/搜索