成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

微服務(wù)?數(shù)據(jù)庫?它們之間到底是啥關(guān)系?

felix0913 / 1415人閱讀

摘要:微服務(wù)架構(gòu)催生分布式數(shù)據(jù)庫王濤認(rèn)為,談?wù)摂?shù)據(jù)庫一定脫離不了應(yīng)用。巨杉數(shù)據(jù)庫,適合微服務(wù)的分布式數(shù)據(jù)庫正如同巨杉對于分布式數(shù)據(jù)庫的技術(shù)定位和目標(biāo),巨杉數(shù)據(jù)庫本身就是以分布式存儲底座與上層的數(shù)據(jù)庫實例兩層來進(jìn)行構(gòu)建的。

過去幾年來,“微服務(wù)架構(gòu)”這個術(shù)語持續(xù)火熱,它描述了一種將軟件應(yīng)用程序設(shè)計為可獨立部署的服務(wù)套件的特定方式。盡管這種架構(gòu)風(fēng)格沒有確切的定義,但圍繞業(yè)務(wù)能力,自動化部署,網(wǎng)點智能以及語言和數(shù)據(jù)的分散控制等方面存在著某些共同特征。
簡而言之,微服務(wù)架構(gòu)是一種將單應(yīng)用程序作為一套小型服務(wù)開發(fā)的方法,每種應(yīng)用程序都在其自己的進(jìn)程中運行,并與輕量級機(jī)制(通常是HTTP資源的API)進(jìn)行通信。這些服務(wù)是圍繞業(yè)務(wù)功能構(gòu)建的,可以通過全自動部署機(jī)制進(jìn)行獨立部署。這些微服務(wù)的將集中化管理部分降到最少,同時,微服務(wù)還可以用不同的編程語言編寫,并使用不同的數(shù)據(jù)存儲技術(shù)。
而涉及到數(shù)據(jù)存儲技術(shù),就不得不談到數(shù)據(jù)庫,而實際上,微服務(wù)和數(shù)據(jù)庫有著微妙的關(guān)系,微服務(wù)對于數(shù)據(jù)庫也有著和傳統(tǒng)架構(gòu)不盡相同的需求,那么,微服務(wù)和數(shù)據(jù)庫究竟有著什么樣的關(guān)系?數(shù)據(jù)庫又對微服務(wù)有何影響?如何選擇適合微服務(wù)的數(shù)據(jù)庫?巨杉數(shù)據(jù)庫聯(lián)合創(chuàng)始人兼CTO王濤向CSDN的記者分享了他的觀點。

微服務(wù)架構(gòu)催生分布式數(shù)據(jù)庫
王濤認(rèn)為,談?wù)摂?shù)據(jù)庫一定脫離不了應(yīng)用。從應(yīng)用程序開發(fā)來看,現(xiàn)在很多企業(yè)內(nèi)部的應(yīng)用開發(fā)都在從傳統(tǒng)中間件加數(shù)據(jù)庫的“煙囪式”開發(fā),向微服務(wù)架構(gòu)轉(zhuǎn)型。而在微服務(wù)體系架構(gòu)中,幾乎每個微服務(wù)都需要提供數(shù)據(jù)持久化的能力,而用戶也希望每個微服務(wù)所承載的數(shù)據(jù)量能夠無限的彈性擴(kuò)張。但是,在采用微服務(wù)架構(gòu)的過程中,每個微服務(wù)使用自身獨立的數(shù)據(jù)庫存儲又會使過去集中在一個地方的數(shù)據(jù)分散到很多不同的設(shè)備中,造成整個IT架構(gòu)的數(shù)據(jù)嚴(yán)重碎片化。舉例來說,一些互聯(lián)網(wǎng)公司僅僅在生產(chǎn)系統(tǒng)中就維護(hù)著兩、三萬個MySQL數(shù)據(jù)庫,這樣的話,想要進(jìn)行企業(yè)內(nèi)部的數(shù)據(jù)整合是極為困難的。
實際上,此前,當(dāng)企業(yè)用戶采用微服務(wù)體系架構(gòu)的時候,從數(shù)據(jù)管理的角度,業(yè)界有兩種做法。
第一種做法,就是對應(yīng)用程序進(jìn)行微服務(wù)改造,底層數(shù)據(jù)庫使用傳統(tǒng)集中式數(shù)據(jù)庫進(jìn)行存儲。這種做法對于應(yīng)用程序的改造相對較小,對于DBA運維人員來說學(xué)習(xí)成本也較低,但是相應(yīng)的,其存在數(shù)據(jù)緊耦合,無法彈性擴(kuò)張,以及可能存在單點故障等問題。
第二種做法,可能也是現(xiàn)在業(yè)界使用比較多的方式,就是每一組微服務(wù)對應(yīng)一個獨立的小數(shù)據(jù)庫,往往使用MySQL或PostgreSQL。這種機(jī)制能夠解決集中式存儲的問題,但是也帶來了新的挑戰(zhàn),包括數(shù)據(jù)極度碎片化,在微服務(wù)之間無法共享,運維成本極其高昂。
因此,兩種辦法都不能很好的解決微服務(wù)下數(shù)據(jù)存儲管理的問題,因此分布式數(shù)據(jù)庫就是要解決上述的兩個問題。第一就是針對每個微服務(wù)做到數(shù)據(jù)彈性擴(kuò)張,第二就是對整個企業(yè)IT做到數(shù)據(jù)的統(tǒng)一治理從而避免碎片化存儲。

打造適合微服務(wù)的分布式數(shù)據(jù)庫

要打造適合微服務(wù)架構(gòu)的數(shù)據(jù)庫,巨杉數(shù)據(jù)庫采用了計算存儲分離的架構(gòu)。其中存儲層采用自研的原生分布式數(shù)據(jù)庫引擎,上層計算層則可以創(chuàng)建成百上千個數(shù)據(jù)庫實例,同時每個數(shù)據(jù)庫實例對應(yīng)用完全透明,不需感知。
因此,在這種系統(tǒng)架構(gòu)下,從單個應(yīng)用來看,和傳統(tǒng)標(biāo)準(zhǔn)數(shù)據(jù)庫完全一致,不需關(guān)注數(shù)據(jù)被切分在哪些不同物理設(shè)備上,做到彈性伸縮。同時,所有的物理設(shè)備從邏輯上進(jìn)行統(tǒng)一管理,甚至不同實例里面的數(shù)據(jù)可以在可配置的權(quán)限下進(jìn)行共享。
那么,適合微服務(wù)的分布式數(shù)據(jù)庫都應(yīng)該具有哪些特性呢?王濤認(rèn)為這主要應(yīng)該從兩大維度、五個方面來看。
兩大維度一是對傳統(tǒng)技術(shù)的兼容,二是技術(shù)和架構(gòu)的創(chuàng)新。
在對傳統(tǒng)技術(shù)的兼容方面來看,首先,必須支持ACID。因為從數(shù)據(jù)庫來看,盡管很多人說CAP不可兼得因此要犧牲一致性,但巨杉認(rèn)為這是不可取的。對于大部分公司來說,數(shù)據(jù)都是核心生命線,絕對不能為了上分布式犧牲數(shù)據(jù)的一致性和安全性,需要對用戶的財產(chǎn)和信息負(fù)責(zé)。因此,新型面向聯(lián)機(jī)交易的分布式數(shù)據(jù)庫必須對傳統(tǒng)ACID有完美的支持,與傳統(tǒng)Oracle DB2的數(shù)據(jù)安全性一致性保持兼容。
其次,SQL的完整性。這個主要是從對傳統(tǒng)應(yīng)用的兼容與開發(fā)人員能力重用的角度看。一般來說,SQL語法兼容的完整性,以及對已有標(biāo)準(zhǔn)的兼容必須具備,例如對MySQL、Oracle、DB2、PostgreSQL這種主流協(xié)議的兼容。
而從新技術(shù)的前瞻性來看,首先,未來是私有云和微服務(wù)應(yīng)用的時代,那么作為分布式數(shù)據(jù)庫,就不僅僅簡單的將其定位成過去某一個數(shù)據(jù)庫的替代。分布式數(shù)據(jù)庫的核心價值在于,能夠從數(shù)據(jù)庫的層面以服務(wù)資源池的形式,向上層被從煙囪式架構(gòu)向微服務(wù)架構(gòu)拆散的成百上千個小服務(wù)提供數(shù)據(jù)庫訪問能力的平臺。在這個定位下,數(shù)據(jù)庫資源池在保證與傳統(tǒng)數(shù)據(jù)庫100%兼容的基礎(chǔ)上,必須滿足分布式彈性擴(kuò)張,當(dāng)資源池里面空間和計算能力不足時,需要通過動態(tài)增加計算存儲節(jié)點的方式進(jìn)行擴(kuò)容。
其次,過去的數(shù)據(jù)庫由于僅針對某一個特定應(yīng)用,采用中間件和數(shù)據(jù)庫一對一綁定的方式,因此只需要提供自身一種模式的訪問就夠了。但是當(dāng)進(jìn)行數(shù)據(jù)庫資源池化的時候,上層應(yīng)用自然面對來自不同開發(fā)商、不同業(yè)務(wù)類型、不同SLA級別的服務(wù),大家采用的開發(fā)流程、SQL標(biāo)準(zhǔn)、以及安全策略各不相同,因此分布式數(shù)據(jù)庫必須能夠支持多種模式的訪問接口。
最后,HTAP,即交易分析混合處理能力。譬如一些賬務(wù)數(shù)據(jù),可能最核心的關(guān)鍵應(yīng)用來自于聯(lián)機(jī)交易業(yè)務(wù)實時使用這些數(shù)據(jù),但是同時一些后臺的實時報表,或者安全審計機(jī)構(gòu)需要進(jìn)行統(tǒng)計分析的時候,來自不同微服務(wù)的業(yè)務(wù)可能需要對同一份數(shù)據(jù)同時以交易和分析的方式進(jìn)行訪問。這種情況下,能不能在資源池內(nèi)對交易與分析業(yè)務(wù)進(jìn)行物理資源隔離,及時對同一份數(shù)據(jù)同時訪問并可以做到互不干擾尤為關(guān)鍵,因此,適合微服務(wù)的數(shù)據(jù)庫必須具有較強(qiáng)的交易分析混合處理能力。

巨杉數(shù)據(jù)庫,適合微服務(wù)的分布式數(shù)據(jù)庫
正如同巨杉對于分布式數(shù)據(jù)庫的技術(shù)定位和目標(biāo),巨杉數(shù)據(jù)庫SequoiaDB本身就是以分布式存儲底座與上層的數(shù)據(jù)庫實例兩層來進(jìn)行構(gòu)建的。底層的分布式存儲作為資源池,自身負(fù)責(zé)數(shù)據(jù)的存儲、分布式事務(wù)控制、記錄和表鎖等,都在底層原生分布式存儲實現(xiàn)。
數(shù)據(jù)庫實例層則提供對上層應(yīng)用程序的SQL服務(wù),用戶可以創(chuàng)建MySQL、PostgreSQL、Spark SQL等結(jié)構(gòu)化實例,也可以創(chuàng)建JSON或S3文件系統(tǒng)的非結(jié)構(gòu)化實例。每個實例中的數(shù)據(jù)對上層應(yīng)用來說完全透明。因此,在SequoiaDB中,一個MySQL表可以輕易存儲十億甚至百億級別的數(shù)據(jù),開發(fā)者在寫SQL的時候完全不需要關(guān)注底層表到底被分散在多少臺物理設(shè)備中。
作為業(yè)界原生分布式數(shù)據(jù)庫以及新一代分布式數(shù)據(jù)庫的代表,SequoiaDB對于分布式交易與ACID與傳統(tǒng)技術(shù)完全兼容,架構(gòu)與功能特性與傳統(tǒng)數(shù)據(jù)庫完全兼容。同時,SequoiaDB還積極擁抱新一代微服務(wù)與云計算框架,在面向微服務(wù)應(yīng)用開發(fā)與云計算基礎(chǔ)架構(gòu)時,支持彈性擴(kuò)張、資源隔離、多租戶、可配置一致性、多模式(支持各類SQL協(xié)議)、集群內(nèi)可配置容災(zāi)策略等一系列功能。
事實上,傳統(tǒng)單點數(shù)據(jù)庫的容量瓶頸,僅僅是分布式數(shù)據(jù)庫所解決的問題之一。更重要的是在未來微服務(wù)化應(yīng)用開發(fā)以及云化平臺的趨勢下,應(yīng)用不再以“煙囪式”的中間件加數(shù)據(jù)庫模式進(jìn)行構(gòu)建,而是采用數(shù)千甚至上萬的微服務(wù)程序構(gòu)建成的復(fù)雜網(wǎng)狀模型。因此,分布式數(shù)據(jù)庫需要能夠滿足上層應(yīng)用的彈性擴(kuò)展、高并發(fā)、高吞吐量、與靈活敏捷的需求。而SequoiaDB在這些方面都有著出色的表現(xiàn),包括:
完整的ACID支持,事務(wù)和一致性保證;SQL的完整支持,傳統(tǒng)數(shù)據(jù)庫MySQL/PostgreSQL的語法完全兼容。分布式與擴(kuò)展性,應(yīng)對數(shù)據(jù)量的變化,實現(xiàn)存儲層和計算層的彈性擴(kuò)展;多模式訪問接口,支持多類型數(shù)據(jù)管理和多種模式的訪問接口; HTAP交易/分析混合處理能力,復(fù)雜業(yè)務(wù)需求下,實現(xiàn)數(shù)據(jù)的物理隔離,互不干擾。

而在此次大會最新發(fā)布的 3.2版本中,巨杉通對SequoiaDB進(jìn)行大幅度性能優(yōu)化與提升,使得其在分布式的交易型業(yè)務(wù)下,整體性能提升2~3倍,CPU消耗節(jié)省超過30%,從而大大提升了對微服務(wù)的支持力度。

SequoiaDB,不僅僅是支持微服務(wù)而已
實際上,SequoiaDB 并不僅僅是微服務(wù)的“良師益友”,其更大維度下的定位是一款真正的金融級分布式關(guān)系型數(shù)據(jù)庫。


巨杉數(shù)據(jù)庫目前在企業(yè)級應(yīng)用場景主要包括分布式在線交易、數(shù)據(jù)中臺以及分布式內(nèi)容管理。

在線交易是數(shù)據(jù)庫最廣泛應(yīng)用的場景之一,通常用來支撐核心業(yè)務(wù)運營。分布式在線交易數(shù)據(jù)庫核心業(yè)務(wù)價值包括,分布式架構(gòu)轉(zhuǎn)型,高并發(fā)、高處理能力,業(yè)務(wù)持續(xù)擴(kuò)展能力以及自主可控與數(shù)據(jù)安全要求。SequoiaDB存儲引擎采用原生分布式架構(gòu),擴(kuò)展便捷;完整支持分布式事務(wù)、強(qiáng)一致多副本高可用;無單點故障,數(shù)據(jù)庫引擎原生支持多中心容災(zāi)。

數(shù)據(jù)中臺是當(dāng)前十分火熱的概念,數(shù)據(jù)中臺在企業(yè)微服務(wù)架構(gòu)中的角色十分重要,像齒輪一樣連通上層快速迭代的微服務(wù)應(yīng)用和下層基礎(chǔ)架構(gòu),同時還可以提供全量數(shù)據(jù)的實時在線服務(wù),泛指傳統(tǒng)核心交易以外的所有對外服務(wù)業(yè)務(wù),基于SequoiaDB構(gòu)建的數(shù)據(jù)中臺核心業(yè)務(wù)價值包括:數(shù)據(jù)高性能實時訪問,海量數(shù)據(jù)全生命周期在線,業(yè)務(wù)持續(xù)擴(kuò)展能力。

內(nèi)容管理平臺為企業(yè)提供存儲、管理和使用海量非結(jié)構(gòu)化數(shù)據(jù)能力。常見應(yīng)用包括影像平臺、文檔管理平臺、音視頻雙錄系統(tǒng)等?;赟equoiaDB搭建的內(nèi)容管理平臺的核心業(yè)務(wù)價值包括,海量非結(jié)構(gòu)化數(shù)據(jù)管理和實時訪問,豐富的內(nèi)容管理功能,海量非結(jié)構(gòu)化數(shù)據(jù)全生命周期在線以及業(yè)務(wù)持續(xù)擴(kuò)展能力。

據(jù)悉,目前巨杉數(shù)據(jù)庫已在近百家大型商業(yè)銀行核心生產(chǎn)業(yè)務(wù)上線,并廣泛應(yīng)用于金融、電信、政府、互聯(lián)網(wǎng)、交通等領(lǐng)域,企業(yè)用戶總數(shù)超過1000家。同時,巨杉也是中國首家連續(xù)兩年入選Gartner 數(shù)據(jù)庫報告的數(shù)據(jù)庫廠商。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/18028.html

相關(guān)文章

  • 一份Docker的反方辯論——我還是用Heroku好了

    摘要:那都是老一套了。已死已經(jīng)沒有人用了?,F(xiàn)在所有的一切都在容器化,它是未來。這是確保它可靠的唯一方式。我現(xiàn)在需要一個是的,為了穩(wěn)定性。我猜是規(guī)模的對,沒錯。我明白了,好吧,我懂了。那我來重復(fù)一遍確保我領(lǐng)悟了這些。 這是一篇在國外社區(qū)非?;鸬奈恼隆S蒀ircleCI創(chuàng)始人所寫,追逐熱點新技術(shù)的程序員與只想做個簡單web應(yīng)用的程序員對話,Docker到底能否解決簡單小應(yīng)用的問題嗎?Herok...

    codeGoogle 評論0 收藏0
  • BFC到底是啥?

    摘要:兩個兄弟盒之間的豎直距離由屬性決定。即使存在浮動盡管一個盒的行盒可能會因為浮動收縮,這也成立。它是塊級盒布局出現(xiàn)的區(qū)域,也是浮動層元素進(jìn)行交互的區(qū)域。定位和清除浮動的樣式規(guī)則只適用于處于同一塊格式化上下文內(nèi)的元素。 前言 在面試中,我們經(jīng)常會遇到一個常見的面試題,什么是BFC?于是我就去查閱了相關(guān)資料: css規(guī)范中是這樣描述BFC的 9.4.1 塊格式化上下文 浮動,絕對定位元素,...

    jeffrey_up 評論0 收藏0
  • DevOps到底是什么意思?

    摘要:是持續(xù)集成,而對應(yīng)多個英文,持續(xù)交付或持續(xù)部署。到底是什么這個詞,其實就是和兩個詞的組合。它的英文發(fā)音是,類似于迪沃普斯。根據(jù)年的調(diào)查發(fā)現(xiàn),的受訪者已經(jīng)接受了,而前一年這一比例為。的認(rèn)證目前最受歡迎的就是和。提到DevOps這個詞,我相信很多人一定不會陌生。作為一個熱門的概念,DevOps近年來頻頻出現(xiàn)在各大技術(shù)社區(qū)和媒體的文章中,備受行業(yè)大咖的追捧,也吸引了很多吃瓜群眾的圍觀。那么,Dev...

    Tecode 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<