openGauss數(shù)據(jù)庫(kù)共享存儲(chǔ)特性概述
openGauss 3.1.1是openGauss 5.0.0 release版本的Preview版本,希望廣大社區(qū)伙伴和開發(fā)者基于此版本進(jìn)行場(chǎng)景化驗(yàn)證,提前發(fā)現(xiàn)問(wèn)題并反饋社區(qū),社區(qū)將在LTS版本發(fā)布前進(jìn)行問(wèn)題修復(fù)。當(dāng)前文檔說(shuō)明范圍僅限企業(yè)版。
版本介紹
3.1.1與之前的版本特性功能保持兼容,主要功能如下:
繼承功能:
- 基礎(chǔ)功能:SQL標(biāo)準(zhǔn)語(yǔ)法、數(shù)據(jù)類型、表(包括臨時(shí)表、全局臨時(shí)表、外部表)、視圖、物化視圖、外鍵、索引(包括btree索引、Gin索引、hash索引)、序列、函數(shù)、觸發(fā)器、聚合函數(shù)median、ROWNUM、UPSERT、、jsonb數(shù)據(jù)類型、GB18030字符集。
- 存儲(chǔ)過(guò)程:存儲(chǔ)過(guò)程、存儲(chǔ)過(guò)程內(nèi)commit/rollback、參數(shù)的存儲(chǔ)過(guò)程/函數(shù)調(diào)用省略()、存儲(chǔ)過(guò)程調(diào)試。
- 安全功能:認(rèn)證、權(quán)限管理、網(wǎng)絡(luò)通信安全、數(shù)據(jù)庫(kù)審計(jì)、全密態(tài)數(shù)據(jù)庫(kù)、動(dòng)態(tài)數(shù)據(jù)脫敏、國(guó)密算法、防篡改賬本數(shù)據(jù)庫(kù)、內(nèi)置角色和權(quán)限管理、透明加密、ANY權(quán)限管理等。
- 高可用:主備雙機(jī)、級(jí)聯(lián)備機(jī)、邏輯復(fù)制、極致RTO、備機(jī)擴(kuò)容、基于Paxos分布式一致性協(xié)議(DCF)、兩地三中心跨Region容災(zāi)。
- SQL引擎增強(qiáng):范圍分區(qū)、全局分區(qū)索引、LIST分區(qū)、HASH分區(qū)、基于范圍分區(qū)的自動(dòng)擴(kuò)展分區(qū)、行存轉(zhuǎn)向量化、自治事務(wù)、并行查詢、Global Syscache、IPv6協(xié)議、postgis插件。
- 存儲(chǔ)引擎增強(qiáng):延遲備庫(kù)、備機(jī)支持邏輯復(fù)制、并行邏輯解碼、灰度升級(jí)、滾動(dòng)升級(jí)、Hash索引、列存表主鍵唯一約束、Ustore存儲(chǔ)引擎、段頁(yè)式存儲(chǔ)、發(fā)布訂閱、行存表壓縮、MOT內(nèi)存表、NUMA-aware高性能優(yōu)化等。
- 備份恢復(fù):全量物理備份、邏輯備份、備機(jī)備份、增量備份和恢復(fù)、恢復(fù)到指定時(shí)間點(diǎn)(PITR)。
- AI能力:參數(shù)自調(diào)優(yōu)、慢SQL發(fā)現(xiàn)、AI查詢時(shí)間預(yù)測(cè)、數(shù)據(jù)庫(kù)指標(biāo)采集預(yù)測(cè)與異常監(jiān)控、DBMind自治運(yùn)維平臺(tái)、智能優(yōu)化器、智能索引推薦、deepSQL庫(kù)內(nèi)AI算法、庫(kù)內(nèi)AI算法支持XGBoost、multiclass和PCA。
- 運(yùn)維能力:WDR診斷報(bào)告新增數(shù)據(jù)庫(kù)運(yùn)行指標(biāo)、備機(jī)慢SQL診斷視圖、unique sql自動(dòng)淘汰。
- JDBC:支持JDBC客戶端負(fù)載均衡及讀寫分離。
- CM:支持CM集群管理,CM支持自定義資源管控,支持對(duì)外狀態(tài)查詢和推送能力。
- 工具鏈:開發(fā)工具DataStudio、數(shù)據(jù)遷移工具chameleon。
- 中間件:shardingSphere、openLookeng。
- 周邊生態(tài):dblink,支持openEuler、CentOS、Ubuntu、FusionOS系統(tǒng)
- 其他:cmake腳本編譯、容器化部署、kubernetes
新增功能:
- 主備共享存儲(chǔ)
- MySQL兼容性增強(qiáng)
- CM部署和數(shù)據(jù)庫(kù)部署解耦,CM支持增量升級(jí)
- MOT內(nèi)存表能力增強(qiáng)
其中,主備共享存儲(chǔ)特性是3.1.X版本引入的比較重要特性。下面重點(diǎn)介紹一下。
主備共享存儲(chǔ)
特性簡(jiǎn)介
本特性提供主備機(jī)共享一份存儲(chǔ)的能力,實(shí)現(xiàn)基于磁陣設(shè)備
的主備共享存儲(chǔ)HA部署形態(tài),可選通過(guò)OCK RDMA提升備機(jī)實(shí)時(shí)一致性讀能力_。_主備共享存儲(chǔ)架構(gòu)圖如下圖所示。
圖 1 主備共享架構(gòu)圖
客戶價(jià)值
解決傳統(tǒng)HA部署下存儲(chǔ)容量較單機(jī)部署翻倍的問(wèn)題,減少了存儲(chǔ)容量,節(jié)省磁陣設(shè)備。可選通過(guò)OCK RDMA提升備機(jī)實(shí)時(shí)一致性讀能力。
特性描述
-共享存儲(chǔ)依賴兩個(gè)自研的公共組件實(shí)現(xiàn)主備共享存儲(chǔ)的能力:
- 分布式存儲(chǔ)服務(wù)DSS(Distributed Storage Service)
DSS是獨(dú)立進(jìn)程,直接管理磁陣裸設(shè)備,并對(duì)外提供類似分布式文件系統(tǒng)的能力。通過(guò)共享內(nèi)存和客戶端API動(dòng)態(tài)庫(kù),為數(shù)據(jù)庫(kù)提供創(chuàng)建文件、刪除文件、擴(kuò)展和收縮文件、讀寫文件的能力。
- 分布式內(nèi)存服務(wù)DMS(Distributed Memory Service)
DMS是動(dòng)態(tài)庫(kù),集成在數(shù)據(jù)庫(kù)內(nèi)部,通過(guò)TCP/RDMA網(wǎng)絡(luò)傳輸PAGE內(nèi)容,將主備內(nèi)存融合,提供內(nèi)存池化能力,以此實(shí)現(xiàn)備機(jī)實(shí)時(shí)一致性讀功能。
共享存儲(chǔ)通過(guò)分布式存儲(chǔ)服務(wù)DSS組件實(shí)現(xiàn)主備共享一份存儲(chǔ)。與傳統(tǒng)建庫(kù)相比,共享存儲(chǔ)基于磁陣建庫(kù)將目錄分為三種類型,每實(shí)例獨(dú)占且不共享、每實(shí)例獨(dú)占且共享、所有實(shí)例共享。其中需要共享的目錄均需存放到磁陣設(shè)備上,而不共享的目錄存放在本地盤上。另外備機(jī)建庫(kù)只需要建隸屬于自己的目錄,不需要再次創(chuàng)建所有實(shí)例共享的目錄結(jié)構(gòu)。主備共享存儲(chǔ)新增了相關(guān)GUC參數(shù),以及將系統(tǒng)表存儲(chǔ)方式從頁(yè)式切換到段頁(yè)式。
共享存儲(chǔ)通過(guò)分布式內(nèi)存服務(wù)DMS組件實(shí)現(xiàn)主備頁(yè)面實(shí)時(shí)交換,提供備機(jī)實(shí)時(shí)一致性能力。即主機(jī)事務(wù)提交后,在備機(jī)立即能夠讀到,不存在延遲讀現(xiàn)象(事務(wù)隔離級(jí)別為Read-Committed)。
共享存儲(chǔ)通過(guò)OCK RDMA降低DMS主備頁(yè)面交換時(shí)延。TCP下的備機(jī)一致性讀進(jìn)行時(shí)延對(duì)比,開啟OCK RDMA,備機(jī)一致性讀時(shí)延至少要降低20%。
特性約束
主備共享存儲(chǔ)方案依賴于磁陣設(shè)備,磁陣的LUN需要支持SCSI3的PR協(xié)議(包括PR OUT(“PERSISTENT RESERVE OUT”)PR IN(“PERSISTENT RESERVE IN”)和INQUIRY), 用于實(shí)現(xiàn)集群IO FENCE。除此之外, 還需要支持SCSI3的CAW協(xié)議(COMPARE AND WRITE),用于實(shí)現(xiàn)共享磁盤鎖。如Dorado 5000 V3磁陣設(shè)備。
實(shí)現(xiàn)的主備共享存儲(chǔ)HA部署形態(tài)只支持1主1備和1主2備場(chǎng)景,其他場(chǎng)景為體驗(yàn)版未測(cè)試過(guò),不承諾。
由于主備共享存儲(chǔ)依賴類似分布式文件系統(tǒng)的功能來(lái)實(shí)現(xiàn)備機(jī)實(shí)時(shí)一致性讀能力,因此要求文件元數(shù)據(jù)變更越少越好?;谛阅芸紤],只支持段頁(yè)式表。
只支持主備部署在同一磁陣設(shè)備上,不支持容災(zāi)部署,也不支持主備混合部署(如主和備部署在不同的磁陣設(shè)備上)。
主備頁(yè)面交換通過(guò)RDMA加速,依賴CX5網(wǎng)卡,并且依賴OCK RDMA動(dòng)態(tài)庫(kù)。
暫不支持備機(jī)重建及節(jié)點(diǎn)替換、節(jié)點(diǎn)修復(fù)等能力。
不支持從傳統(tǒng)HA部署升級(jí)到基于主備共享存儲(chǔ)部署。
共享存儲(chǔ)模式下gs_xlogdump_xid,gs_xlogdump_lsn,gs_xlogdump_tablepath,gs_xlogdump_parsepage_tablepath、pg_create_logical_replication_slot、gs_verify_and_tryrepair_page、gs_repair_page、gs_repair_file函數(shù)功能不支持使用。
共享存儲(chǔ)模式下T_CreatePublicationStmt、T_AlterPublicationStmt、T_CreateSubscriptionStmt、T_AlterSubscriptionStmt、T_DropSubscriptionStmt訂閱功能不支持使用。
共享存儲(chǔ)模式下不支持全局臨時(shí)表。
安裝部分對(duì)應(yīng)的也新增了共享存儲(chǔ)場(chǎng)景的支持。cluster_config_template.xml配置文件模板示例:
... <!-- 共享存儲(chǔ)模式開關(guān) --> <PARAM name="enable_dss" value="on"/> <!-- dss實(shí)例目錄 --> <PARAM name="dss_home" value="/opt/huawei/install/data/dss"/> <!-- dss共享卷名 --> <PARAM name="ss_dss_vg_name" value="data"/> <!-- dss掛載卷組名和卷組信息,包含共享卷 --> <PARAM name="dss_vg_info" value="data:/dev/sdb,p0:/dev/sdc,p1:/dev/sdd"/> <!-- cm投票卷 --> <PARAM name="votingDiskPath" value="/dev/sde"/> <!-- cm共享卷 --> <PARAM name="shareDiskDir" value="/dev/sdf"/> <!-- dss開啟ssl認(rèn)證開關(guān) --> <PARAM name="dss_ssl_enable" value="on"/> <!-- mes通信協(xié)議類型 --> <PARAM name="ss_interconnect_type" value="TCP"/> <!-- rdma綁定cpu序列 --> <PARAM name="ss_rdma_work_config" value="1 7"/>
歡迎有興趣和條件的同學(xué)可以對(duì)主備共享存儲(chǔ)特性進(jìn)行場(chǎng)景化驗(yàn)證。
到此這篇關(guān)于openGauss數(shù)據(jù)庫(kù)共享存儲(chǔ)特性簡(jiǎn)介的文章就介紹到這了,更多相關(guān)openGauss數(shù)據(jù)庫(kù)共享存儲(chǔ)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- openGauss的SCHEMA的原理及管理介紹
- Navicat Premium遠(yuǎn)程連接MySQL數(shù)據(jù)庫(kù)的方法
- 解決navicat遠(yuǎn)程連接mysql報(bào)錯(cuò)10038的問(wèn)題
- 詳解Navicat遠(yuǎn)程連接mysql很慢
- 解決Navicat遠(yuǎn)程連接MySQL出現(xiàn) 10060 unknow error的方法
- Navicat 遠(yuǎn)程連接 MySQL實(shí)現(xiàn)步驟解析
- 詳解使用navicat連接遠(yuǎn)程linux mysql數(shù)據(jù)庫(kù)出現(xiàn)10061未知故障
- 如何使用navicat遠(yuǎn)程連接openGauss
相關(guān)文章
使用DataGrip創(chuàng)建數(shù)據(jù)庫(kù)并讀取sql文件圖文教程
這篇文章主要給大家介紹了關(guān)于使用DataGrip創(chuàng)建數(shù)據(jù)庫(kù)并讀取sql文件的相關(guān)資料,DataGrip是一款數(shù)據(jù)庫(kù)管理客戶端工具,方便連接到數(shù)據(jù)庫(kù)服務(wù)器,執(zhí)行sql、創(chuàng)建表、創(chuàng)建索引以及導(dǎo)出數(shù)據(jù)等,需要的朋友可以參考下2023-11-11建立在Tablestore的Wifi設(shè)備監(jiān)管系統(tǒng)架構(gòu)實(shí)現(xiàn)
一般大公司會(huì)有許多園區(qū),園區(qū)內(nèi)會(huì)有不同部門的同事在一起辦公。每個(gè)園區(qū)內(nèi)都要配備大量的Wifi設(shè)備從而為園區(qū)同事提供方便的上網(wǎng)服務(wù)。因此,集團(tuán)需要一套完善的監(jiān)管系統(tǒng)維護(hù)所有的Wifi設(shè)備。需要的朋友來(lái)一起學(xué)習(xí)下吧2019-05-05clickhouse數(shù)據(jù)庫(kù)刪除數(shù)據(jù)的五種方式
clickhouse數(shù)據(jù)庫(kù)清理數(shù)據(jù)的方式很多,每種方式都各有自己的優(yōu)缺點(diǎn),請(qǐng)根據(jù)實(shí)際需要采用適合自己的方式,本文將逐一給大家介紹,并通過(guò)代碼示例講解的非常詳細(xì),需要的朋友可以參考下2024-03-03數(shù)據(jù)庫(kù)測(cè)試 實(shí)用技巧及測(cè)試方法
軟件應(yīng)用程序已經(jīng)離不開數(shù)據(jù)庫(kù)。無(wú)論是在Web、桌面應(yīng)用、客戶端服務(wù)器、企業(yè)和個(gè)人業(yè)務(wù),都需要數(shù)據(jù)庫(kù)在后端操作。2011-07-07一文弄懂?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)的三范式
面試中經(jīng)常會(huì)問(wèn)到的數(shù)據(jù)庫(kù)三范式指的是什么,本文主要介紹了數(shù)據(jù)庫(kù)設(shè)計(jì)的三范式,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07如何使用navicat遠(yuǎn)程連接openGauss
公司要在openEuler系統(tǒng)中安裝openGauss數(shù)據(jù)庫(kù),經(jīng)過(guò)幾天的查資料,終于是安裝成功了,并且能在navicat中遠(yuǎn)程連接使用,本文給大家介紹如何使用navicat遠(yuǎn)程連接openGauss,感興趣的朋友跟隨小編一起看看吧2023-10-10