數(shù)據(jù)庫也去中心化?深度解析分布式數(shù)據(jù)庫

在云計算、大數(shù)據(jù)等新技術(shù)的帶動下,越來越多的企業(yè)需要對結(jié)構(gòu)化的數(shù)據(jù)進(jìn)行查詢、分析、處理和更新。同時,隨著創(chuàng)新業(yè)務(wù)的不斷增加,業(yè)務(wù)的復(fù)雜及龐大的體量必然會產(chǎn)生錯綜復(fù)雜且規(guī)模巨大的結(jié)構(gòu)化數(shù)據(jù),這些都必然迫使企業(yè)對數(shù)據(jù)庫的需求指向大規(guī)模、高可靠、高擴(kuò)展及高性能。

成都創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計、網(wǎng)站制作、外貿(mào)營銷網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的藍(lán)山網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

對任何企業(yè)而言,數(shù)據(jù)庫都是其應(yīng)用的核心資源,如何選擇適合自身企業(yè) IT 架構(gòu)及業(yè)務(wù)的核心數(shù)據(jù)庫是每一個 CIO/CTO 必須面對的問題。

本文將從互聯(lián)網(wǎng)企業(yè)及傳統(tǒng)行業(yè)(銀行、保險等行業(yè))兩個部分來具體分析和闡述,希望對大家有所幫助。?

互聯(lián)網(wǎng)公司的主流是 MySQL ?

開源數(shù)據(jù)庫MySQL ,由于其自身特點和互聯(lián)網(wǎng)使用場景,在互聯(lián)網(wǎng)界非常受歡迎,有著極為廣泛的應(yīng)用。

互聯(lián)網(wǎng)公司往往有高并發(fā)、大數(shù)據(jù)量等業(yè)務(wù)特點,同時為了在激烈的競爭中占得先機(jī),產(chǎn)品會不斷迭代,需要不斷推出新產(chǎn)品,并做大量的促銷運營活動,這些從技術(shù)角度來看是沒有辦法提前預(yù)知的,只能寄希望于 IT 的伸縮能力,所以互聯(lián)網(wǎng)公司對于系統(tǒng)的伸縮能力都有著執(zhí)著的追求。

MySQL 之所以在互聯(lián)網(wǎng)圈子廣受歡迎,可以簡單歸納為以下幾點:

  • MySQL 雖然是開源軟件,但是簡單易用、具備極高的穩(wěn)定性、功能也比較完善,且可以根據(jù)業(yè)務(wù)特點定制所需的存儲引擎,進(jìn)行性能優(yōu)化,從而適應(yīng)自身業(yè)務(wù)。很多商用的數(shù)據(jù)庫軟件設(shè)計目標(biāo)并沒有考慮互聯(lián)網(wǎng)業(yè)務(wù)經(jīng)常面臨的高并發(fā)、海量用戶場景,無法滿足企業(yè)的基本需求。

  • 由于 MySQL 代碼完全開源,當(dāng)企業(yè)的業(yè)務(wù)出現(xiàn)任何問題時,可以第一時間進(jìn)行排查和響應(yīng),從而保證用戶體驗。而商用數(shù)據(jù)庫軟件的核心技術(shù)用戶無法深度掌握,很難有足夠快速的問題解決能力。

  • 將 MySQL 運行在標(biāo)準(zhǔn)的 X86 服務(wù)器上,硬件費用大大降低,同時也可以節(jié)省一大筆 License 費用。

MySQL 雖然有種種優(yōu)勢,但 MySQL 也不是萬能的,一個復(fù)雜 SQL 或者大表 Join 就可能使 MySQL 負(fù)載過重,資源耗盡。同時 MySQL 自身也有一個很嚴(yán)重的缺點:沒有一個成熟的高可用和分布式解決方案。

所以,大多數(shù)互聯(lián)網(wǎng)公司的選擇都是混合使用,當(dāng) MySQL 能解決問題時就用 MySQL,而一些對性能、安全性、可靠性要求更高的業(yè)務(wù)則使用商用數(shù)據(jù)庫軟件,然后再看有沒有機(jī)會去替換。

金融行業(yè)

金融行業(yè)絕大多數(shù)系統(tǒng)的數(shù)據(jù)存儲層都采用“小型機(jī)+商用數(shù)據(jù)庫+高端存儲陣列”的實現(xiàn)方式,隨著業(yè)務(wù)和技術(shù)的發(fā)展,這種方式逐漸暴露出一些問題。

  • 安全可控需求,監(jiān)管機(jī)構(gòu)從國家信息安全高度對銀行業(yè)的 IT 基礎(chǔ)設(shè)施提出了開源化、國產(chǎn)化、安全可控的要求。

  • 銀行業(yè)面臨著日趨嚴(yán)峻的 IT 成本控制壓力,而基于現(xiàn)行數(shù)據(jù)存儲層的實現(xiàn)方式,每個系統(tǒng)的數(shù)據(jù)存儲成本都以數(shù)百萬計。

  • 隨著電子銀行、網(wǎng)上銀行業(yè)務(wù)的創(chuàng)新、拓展,數(shù)據(jù)存儲層缺乏良好的可擴(kuò)展性,難以應(yīng)對應(yīng)用層的高并發(fā)數(shù)據(jù)訪問。

  • 過去銀行采用高端的設(shè)備,比如使用小型機(jī)和大型存儲來保證數(shù)據(jù)庫的可用性。在擴(kuò)展性方面,主要通過增加 CPU、內(nèi)存、磁盤等方式提高處理能力。這種集中式架構(gòu),使得數(shù)據(jù)庫逐漸成為整體系統(tǒng)的瓶頸,越來越不適應(yīng)海量數(shù)據(jù)對計算能力的巨大需求。

金融行業(yè)普遍面臨互聯(lián)網(wǎng)金融在技術(shù)和業(yè)務(wù)上帶來的新挑戰(zhàn),高可用、高可靠、可擴(kuò)展的大數(shù)據(jù)平臺和分布式數(shù)據(jù)庫解決方案是金融行業(yè)的全新技術(shù)選擇,不但有利于金融行業(yè)提升業(yè)務(wù)創(chuàng)新能力和用戶體驗,同時增強(qiáng)了自身的技術(shù)儲備,以迎接互聯(lián)網(wǎng)時代的市場挑戰(zhàn)。

因此,對于銀行業(yè)來說,以「分布式數(shù)據(jù)庫 + Hadoop 大數(shù)據(jù)平臺」解決方案來逐步替代現(xiàn)有關(guān)系型數(shù)據(jù)庫成為最佳選擇。

新一代分布式關(guān)系型數(shù)據(jù)庫應(yīng)運而生

分布式數(shù)據(jù)庫是這些大型企業(yè)用戶(如電商、金融、制造、零售等)承載核心業(yè)務(wù)的重要技術(shù)選型方向之一,是幫助企業(yè)處理大規(guī)模結(jié)構(gòu)化數(shù)據(jù)的重要技術(shù)平臺。為滿足用戶對分布式數(shù)據(jù)庫的實際需求,同時幫助傳統(tǒng)企業(yè)將核心業(yè)務(wù)逐步向云端遷移,青云QingCloud 自主研發(fā)了新一代分布式數(shù)據(jù)庫。

青云的分布式關(guān)系型數(shù)據(jù)庫 —— RadonDB

青云QingCloud RadonDB 是基于 MySQL 研發(fā)的新一代分布式關(guān)系型數(shù)據(jù)庫,規(guī)??蔁o限水平擴(kuò)展,支持分布式事務(wù),具備金融級數(shù)據(jù)強(qiáng)一致性,滿足企業(yè)級核心數(shù)據(jù)庫對大容量、高并發(fā)、高可靠及高可用的苛刻要求。

數(shù)據(jù)庫也去中心化?深度解析分布式數(shù)據(jù)庫

RadonDB 架構(gòu)圖

如上圖所示,RadonDB 采用分布式 SQL 節(jié)點 + 分布式存儲節(jié)點的高可用分布式架構(gòu),每個分區(qū)內(nèi)采用一主多從的架構(gòu)設(shè)計,數(shù)據(jù)多副本存儲,可自動實現(xiàn)故障秒級切換與瞬間生效。同時支持跨數(shù)據(jù)中心部署,全面保障服務(wù)高可用。

數(shù)據(jù)庫也去中心化?深度解析分布式數(shù)據(jù)庫

存儲層由多個 Node 組成,每個 Node 負(fù)責(zé)部分?jǐn)?shù)據(jù)存儲,同時在存儲節(jié)點內(nèi),通過 GTID + Raft + Semi-Sync-Replication 機(jī)制保障數(shù)據(jù)寫入的高度一致性。 底層硬件一般采用低成本的 X86 架構(gòu)存儲服務(wù)器。

同時,存儲層采用一主多從的 MySQL 作為存儲引擎,這點與行業(yè)內(nèi)其他的分布式數(shù)據(jù)庫不同(Google Spanner)。 之所以選擇經(jīng)典的 MySQL 作為存儲引擎,主要有以下幾點原因:

  • MySQL 使用廣泛,其可靠性和穩(wěn)定性經(jīng)過長期驗證;

  • 用戶的 MySQL 數(shù)據(jù)庫不需要進(jìn)行太多修改,即可遷移至 RadonDB;

  • MySQL 不斷的演進(jìn),功能日益完善,如支持計算下推,數(shù)據(jù)就近計算原則;多索引寫原子保證;SQL 與 Storage 層數(shù)據(jù)傳輸最小化等等。

數(shù)據(jù)庫也去中心化?深度解析分布式數(shù)據(jù)庫

如上圖所示,分布式數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)是相互關(guān)聯(lián)的,雖然每個小表(子表)都是分散的,但邏輯上是一個統(tǒng)一的整體,對上層應(yīng)用來說,可視為一個集中式的數(shù)據(jù)庫系統(tǒng)。

數(shù)據(jù)庫也去中心化?深度解析分布式數(shù)據(jù)庫

同時,小表(子表)可以動態(tài)漂移,隨著表的熱度和大小進(jìn)行動態(tài)的擴(kuò)容和伸縮,保證資源分配最優(yōu)化。支持存儲節(jié)點無限水平擴(kuò)展,從而提供可動態(tài)無限擴(kuò)展的存儲容量。性能隨節(jié)點擴(kuò)展而線性增長,輕松應(yīng)對超大容量及超高并發(fā)請求帶來的性能挑戰(zhàn)。

除上述基本特征外,RadonDB 還高度兼容 MySQL 語法,支持 HTAP 混合模式,可跨數(shù)據(jù)中心部署,支持智能化自動分表、平滑擴(kuò)容及自動運維,擴(kuò)容與故障切換時業(yè)務(wù)零中斷,無需人工干預(yù);同時支持 HTAP 混合模式,并提供完善的服務(wù)監(jiān)控、審計日志及安全防護(hù)措施。

作為一款基于云模式的大型分布式數(shù)據(jù)庫服務(wù),RadonDB 具備云服務(wù)所有的彈性、敏捷、按需和輕運維特性。

寫在最后

希望 RadonDB 數(shù)據(jù)庫可以給行業(yè)從業(yè)者帶來更多的可能,包括金融行業(yè)新業(yè)務(wù)、新 IT 的建設(shè),互聯(lián)網(wǎng)公司核心業(yè)務(wù)的高可靠、高性能等訴求。

未來,RadonDB 將會全部開源,希望可以有更多的伙伴加入進(jìn)來,給行業(yè)帶來更多的驚喜。如果你對分布式數(shù)據(jù)庫還有更多問題,12月12日,我們將會有一場線上發(fā)布會,RadonDB 的研發(fā)工程師會與大家面對面進(jìn)行交流,千萬不要錯過。

青云QingCloud 下一代企業(yè)級云架構(gòu) ——「全模云」線上發(fā)布會,期待你的報名。

http://t.cn/RYAz05V


名稱欄目:數(shù)據(jù)庫也去中心化?深度解析分布式數(shù)據(jù)庫
本文鏈接:http://muchs.cn/article22/iioocc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、商城網(wǎng)站外貿(mào)網(wǎng)站建設(shè)、云服務(wù)器、網(wǎng)站改版、微信公眾號

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司