女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺析openEuler Cantian引擎

openEuler ? 來源:openEuler ? 2023-09-13 17:25 ? 次閱讀

在前陣子的DTCC 2023上,華為團(tuán)隊(duì)與萬里開源聯(lián)合發(fā)布了一個(gè)Mysql的共享存儲(chǔ)并發(fā)讀寫的解決方案,其核心技術(shù)就是Cantian引擎。Cantian是一個(gè)能讓普通的單機(jī)數(shù)據(jù)庫變成具有類似Oracle RAC能力數(shù)據(jù)庫的中間件,目前支持innodb,今后將支持更多的數(shù)據(jù)庫存儲(chǔ)引擎。目前已經(jīng)在openEuler社區(qū)開源。

倉庫地址:

https://gitee.com/openeuler/cantian

0113582c-5216-11ee-a25d-92fbcf53809c.png

上圖是Cantian的一個(gè)邏輯架構(gòu)圖,基于企業(yè)級(jí)集中式存儲(chǔ),Cantian引擎在MySQL的SQL引擎與innodb存儲(chǔ)引擎之間構(gòu)建了一個(gè)中間層,這個(gè)中間層可以模擬innodb的行為,因此MySQL的SQL引擎可以十分方便地與之對(duì)接。因?yàn)閕nnodb和事務(wù)控制是緊密相關(guān)的,因此Cantian里除了包含MySQL的存儲(chǔ)層外還包含了MySQL的事務(wù)管理層。

01330488-5216-11ee-a25d-92fbcf53809c.png

在MySQL中引入Cantian引擎的好處是,加入這個(gè)中間層后,MySQL就具備了多節(jié)點(diǎn)并發(fā)讀寫的能力,搖身一變就變成了MySQL RAC了。上面這張圖能夠讓大家更好地理解參天引擎。

在Cantian中,undo/temp/log雖然也存儲(chǔ)在共享存儲(chǔ)中,不過是實(shí)例獨(dú)占式訪問的,不在集群層面共享,平時(shí)只能在實(shí)例內(nèi)讀寫。只有故障恢復(fù)時(shí),集群中的其他實(shí)例才能讀取。控制文件、system/users等表空間是可以在集群中并發(fā)讀寫的。

那么Cantian是如何實(shí)現(xiàn)多實(shí)例并發(fā)讀寫的呢?在本文第一張圖中有一個(gè)Global Cache的示意,在多個(gè)實(shí)例之間通過緩沖區(qū)融合技術(shù)實(shí)現(xiàn)了多實(shí)例一致性訪問。

0159460c-5216-11ee-a25d-92fbcf53809c.png

Cantian實(shí)現(xiàn)全局緩沖的算法與Oracle 9I RAC有些類似,根據(jù)算法,可以確定某個(gè)緩沖塊的Master實(shí)例,當(dāng)某實(shí)例擁有current block的時(shí)候可以直接訪問,否則需要通過Master咨詢?cè)揵lock是否在某個(gè)實(shí)例的緩沖中。Master通知該塊的持有者將其發(fā)送給需要的數(shù)據(jù)庫實(shí)例。

017d1ff0-5216-11ee-a25d-92fbcf53809c.png

大家看看上面這張Oracle 9i RAC Cache fusion的示意圖,是不是有點(diǎn)和上面的圖十分相似的感覺。不過Cantian在緩沖區(qū)融合算法的實(shí)現(xiàn)上和Oracle Cache Fusion有較大的差別,并且由于UNDO的訪問特性限制,當(dāng)MVCC需要一個(gè)經(jīng)過多個(gè)實(shí)例多次變更的PRE-IMAGE的時(shí)候,在Cantian引擎里的組裝過程有些復(fù)雜,需要一級(jí)級(jí)的向前傳遞,最終才能完成獲取。

01a44328-5216-11ee-a25d-92fbcf53809c.png

這種模式的數(shù)據(jù)訪問如果發(fā)生在一個(gè)多實(shí)例環(huán)境下,Cantian引擎可能存在一定的性能問題。如果能夠?qū)崿F(xiàn)在一個(gè)實(shí)例完成多次構(gòu)建,則效率要高很多,只不過這可能會(huì)讓分布式鎖管理更為復(fù)雜。目前Cantian實(shí)現(xiàn)的Cache Fusion算法還只是第一代,隨著該項(xiàng)目的發(fā)展,我想這方面的算法會(huì)進(jìn)一步優(yōu)化。

01cac2f0-5216-11ee-a25d-92fbcf53809c.png

目前Cantian已經(jīng)實(shí)現(xiàn)了與MySQL的對(duì)接。MySQL SQL 層與 CTC 通過 MySQL 預(yù)定義的 hanlder/handlerton 接口進(jìn)行交互,CTC插件接收到 MySQL SQL 引擎調(diào)用存儲(chǔ)引擎插件執(zhí)行的請(qǐng)求,通過共享內(nèi)存通信模塊以及對(duì)接層邏輯將請(qǐng)求轉(zhuǎn)到 Cantian 引擎內(nèi)核,CTC 插件與 Cantian 引擎通信模塊設(shè)計(jì)為統(tǒng)一接口,動(dòng)態(tài)可替換機(jī)制,支持單進(jìn)程接口直接綁定、雙進(jìn)程共享內(nèi)存通信兩種部署模式。一個(gè) Cantian 引擎進(jìn)程可以對(duì)接一至多個(gè) MySQL 實(shí)例,不同實(shí)例間通過不同的共享內(nèi)存通道與 Cantian 引擎進(jìn)行通信,CTC 插件會(huì)維護(hù)實(shí)例的啟停時(shí)集群資源的分配與釋放。MySQL 元數(shù)據(jù)仍通過 InnoDB 引擎存儲(chǔ)與維護(hù),但 MySQL 對(duì)元數(shù)據(jù)的修改操作會(huì)通過 CTC 與 Cantian 引擎廣播到集群中存活的其他 MySQL 實(shí)例以保證集群的元數(shù)據(jù)一致性。廣播過程中遠(yuǎn)端 MySQL 實(shí)例會(huì)使用對(duì)應(yīng)權(quán)限的代理用戶執(zhí)行修改操作,從而保證集群執(zhí)行語句時(shí)的用戶權(quán)限的一致性。

020f21ca-5216-11ee-a25d-92fbcf53809c.png

在高可用方面,Cantian引擎加持下的MySQL數(shù)據(jù)庫無需主從架構(gòu)的故障切換,應(yīng)用可以在0數(shù)據(jù)丟失的情況下實(shí)現(xiàn)秒鐘級(jí)切換。這對(duì)于關(guān)鍵業(yè)務(wù)來說至關(guān)重要。

023778fa-5216-11ee-a25d-92fbcf53809c.png

Cantian引擎中的另外一個(gè)重要組件是DBStor,DBStor 通過直接提供數(shù)據(jù)庫 Log 和 Page 的存儲(chǔ)接口,將數(shù)據(jù)庫業(yè)務(wù)的存儲(chǔ)邏輯卸載,實(shí)現(xiàn)計(jì)算和存儲(chǔ)的分離。DBStor 采用 c/s 架構(gòu),客戶端部署在計(jì)算側(cè),提供給計(jì)算節(jié)點(diǎn) Log和 Page 存儲(chǔ)接口;服務(wù)端部署在存儲(chǔ)節(jié)點(diǎn),實(shí)現(xiàn) Log 和 Page 的存儲(chǔ)能力;客戶端和服務(wù)端基于 TCP/RDMA 來進(jìn)行通信。

02547964-5216-11ee-a25d-92fbcf53809c.png

DBStor私有接口適配其他友商的存儲(chǔ)需要一定的適配工作。項(xiàng)目組也會(huì)陸續(xù)開展一些國內(nèi)外存儲(chǔ)系統(tǒng)的適配工作。這是一個(gè)生態(tài)構(gòu)建的過程,需要通過社區(qū)生態(tài)來共同工作才能完成。在數(shù)據(jù)庫存儲(chǔ)引擎方面,Cantian目前已經(jīng)適配了innodb,PostgreSQL存儲(chǔ)引擎也在開發(fā)中,我想依托開源社區(qū)的力量,會(huì)有越來越多的數(shù)據(jù)庫適配Cantian。

最后再分析一下Cantian的應(yīng)用場(chǎng)景,我首先想到的是做數(shù)據(jù)庫一體機(jī)。Cantian可以讓一個(gè)單機(jī)集中式數(shù)據(jù)庫快速地變成一個(gè)高性能、多讀多寫或者強(qiáng)一致性讀寫分離的數(shù)據(jù)庫系統(tǒng)。如果在后端用高性能分布式存儲(chǔ)替代集中式存儲(chǔ),還可以形成一個(gè)全軟的解決方案。只不過目前Cantian引擎要想獲得高性能,還必須依賴高速CMS網(wǎng)絡(luò)和高性能低延時(shí)的集中式存儲(chǔ)系統(tǒng),因此全軟的方案還不是目前的選項(xiàng),不過作為一個(gè)開源項(xiàng)目,隨著Cantian引擎的迭代發(fā)展,一切都是可能的。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 存儲(chǔ)系統(tǒng)
    +關(guān)注

    關(guān)注

    2

    文章

    422

    瀏覽量

    41241
  • 數(shù)據(jù)庫
    +關(guān)注

    關(guān)注

    7

    文章

    3900

    瀏覽量

    65769
  • 引擎
    +關(guān)注

    關(guān)注

    1

    文章

    366

    瀏覽量

    22887
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    849

    瀏覽量

    27517

原文標(biāo)題:【創(chuàng)新項(xiàng)目探索】淺析openEuler Cantian引擎

文章出處:【微信號(hào):openEulercommunity,微信公眾號(hào):openEuler】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何完成openEuler面向RK3399開發(fā)板的移植?

    如何制作openEuler的rootfs.img?如何完成openEuler面向RK3399開發(fā)板的移植?
    發(fā)表于 03-04 07:42

    歐拉開源操作系統(tǒng)(openEuler, 簡稱“歐拉”)簡介

    ,創(chuàng)新分布式、實(shí)時(shí)加速引擎和基礎(chǔ)服務(wù),結(jié)合邊緣、嵌入式領(lǐng)域競(jìng)爭(zhēng)力探索,打造全場(chǎng)景協(xié)同的面向數(shù)字基礎(chǔ)設(shè)施的開源操作系統(tǒng)。 業(yè)務(wù)價(jià)值:openEuler實(shí)現(xiàn)了從代碼開源到產(chǎn)業(yè)生態(tài)的快速構(gòu)建,為政府、銀行、電信
    發(fā)表于 06-17 10:52

    openEuler 社區(qū) 2022 年 6 月運(yùn)作報(bào)告

    openEuler社區(qū)運(yùn)作報(bào)告2022年6月去年11月,openEuler社區(qū)捐贈(zèng)給開放原子開源基金會(huì)后,openEuler在技術(shù)、商業(yè)、生態(tài)、開源建設(shè)等各方面取得顯著發(fā)展。本月,我們來聊聊
    發(fā)表于 07-08 14:37

    openEuler 社區(qū)完成首批顧問專家聘用,共同為社區(qū)的發(fā)展?貢獻(xiàn)力量

    openEuler 在2021年11月捐贈(zèng)給開放原子開源基金會(huì)后,在生態(tài)構(gòu)建、技術(shù)創(chuàng)新和商業(yè)落地全面加速,取得了跨越式進(jìn)展。作為一個(gè)支持多樣性計(jì)算和持續(xù)推動(dòng)技術(shù)創(chuàng)新的操作系統(tǒng)開源社區(qū)
    發(fā)表于 07-29 10:11

    使用 Canonical MAAS 部署 openEuler 測(cè)試

    云、HPC 場(chǎng)景時(shí),使用MAAS 是減少運(yùn)維成本的最佳選擇之一。在本文的測(cè)試 中,展示了如何通過Packer 為 MAAS 構(gòu)建 openEuler 映像并驗(yàn)證MAAS部署,可使用的臨時(shí)解決方法以及如
    發(fā)表于 08-24 11:43

    openEuler 資源利用率提升之道 03:rubik 混部引擎簡介

    ,為了保障在線業(yè)務(wù)服務(wù)質(zhì)量,防范關(guān)鍵業(yè)務(wù) QoS 違規(guī),rubik 混部引擎規(guī)劃提供多重保障以提升工作負(fù)載的運(yùn)行效率及穩(wěn)定性。第一道防線 - 基于內(nèi)核特性的資源隔離搶占機(jī)制openEuler Kernel
    發(fā)表于 09-01 11:00

    一次 Rancher 和 openEuler 的上云之旅

    社區(qū)建設(shè) Cloud Image。對(duì)于云原生場(chǎng)景,很顯然這是一項(xiàng)非常重要的基礎(chǔ)工作。部署 Rancher 以及下游集群openEuler 雖然內(nèi)置了 Docker 引擎,但最終我們?nèi)匀粵Q定不使
    發(fā)表于 09-29 10:57

    RISC-V SIG 推出基于openEuler 的下游發(fā)行版 Eulaceura

    近日,openEuler RISC-V SIG 推出了一款基于 openEuler 的發(fā)行版-Eulaceura。這是首個(gè)基于 openEuler 開發(fā)的 RISC-V 架構(gòu)的發(fā)行版,給
    發(fā)表于 12-22 15:52

    openEuler 加入 RISC-V Landscape,相關(guān)技術(shù)已完成生態(tài)適配

    開源歐拉 openEuler 已加入 RISC-V Landscape。此次加入 RISC-V Landscape, 意味著 openEuler 在對(duì) RISC-V 架構(gòu)的生態(tài)適配
    發(fā)表于 03-16 15:10

    歐拉(openEuler)Summit 2021:基于AI的操作系統(tǒng)性能調(diào)優(yōu)引擎

     歐拉(openEuler)Summit 2021直播會(huì)上,重點(diǎn)介紹基于AI的操作系統(tǒng)性能調(diào)優(yōu)引擎
    的頭像 發(fā)表于 11-10 10:46 ?2351次閱讀
    歐拉(<b class='flag-5'>openEuler</b>)Summit 2021:基于AI的操作系統(tǒng)性能調(diào)優(yōu)<b class='flag-5'>引擎</b>

    openEuler Summit開發(fā)者峰會(huì):基于AI的操作系統(tǒng)性能調(diào)優(yōu)引擎A-Tune

    openEuler Summit開發(fā)者峰會(huì):基于AI的操作系統(tǒng)性能調(diào)優(yōu)引擎A-Tune
    的頭像 發(fā)表于 11-10 10:51 ?1785次閱讀
    <b class='flag-5'>openEuler</b> Summit開發(fā)者峰會(huì):基于AI的操作系統(tǒng)性能調(diào)優(yōu)<b class='flag-5'>引擎</b>A-Tune

    歐拉(openEuler)Summit 2021:歐拉demo分享——A-Tune

    歐拉(openEuler)Summit 2021上,關(guān)于A-Tune:基于AI的操作系統(tǒng)性能調(diào)優(yōu)引擎案例分享。
    的頭像 發(fā)表于 11-10 10:18 ?1559次閱讀
    歐拉(<b class='flag-5'>openEuler</b>)Summit 2021:歐拉demo分享——A-Tune

    歐拉(openEuler)Summit 2021:基于openEuler CirroData自主可控誕生

    openEuler Summit 2021-分布式&多樣性計(jì)算分論壇上,介紹了基于openEuler CirroData自主可控誕生。
    的頭像 發(fā)表于 11-10 16:07 ?2534次閱讀
    歐拉(<b class='flag-5'>openEuler</b>)Summit 2021:基于<b class='flag-5'>openEuler</b> CirroData自主可控誕生

    openEuler Call for X 計(jì)劃”正式啟動(dòng)

    openEuler最具價(jià)值專家, openEuler Valuable Professional,是openEuler社區(qū)頒發(fā)給技術(shù)專家的一項(xiàng)榮譽(yù)認(rèn)證,以此表彰他們熱衷實(shí)踐、樂于分享的布道精神,為
    的頭像 發(fā)表于 06-21 14:36 ?854次閱讀
    “<b class='flag-5'>openEuler</b> Call for X 計(jì)劃”正式啟動(dòng)

    華為宣布CANTIAN引擎開源并發(fā)布分布式存儲(chǔ)全閃新品

    8月25日,以“在一起,共迎新機(jī)遇”為主題的第三屆華為數(shù)據(jù)存儲(chǔ)用戶精英論壇在西寧召開。在此次大會(huì)上, 華為正式宣布開源CANTIAN引擎,并推出分布式存儲(chǔ)全閃新品。 同時(shí),華為向與會(huì)客戶匯報(bào)
    的頭像 發(fā)表于 08-25 18:45 ?829次閱讀
    華為宣布<b class='flag-5'>CANTIAN</b><b class='flag-5'>引擎</b>開源并發(fā)布分布式存儲(chǔ)全閃新品