首页 > 其他分享 >GaussDB技术解读——GaussDB架构介绍之全局事务管理层(GTM)关键技术方案

GaussDB技术解读——GaussDB架构介绍之全局事务管理层(GTM)关键技术方案

时间:2025-01-16 14:26:07浏览次数:1  
标签:DN 事务 CSN 关键技术 GaussDB GTM csn

GTM 仅处理全局时间戳请求, 64位CSN递增,几乎都是CPU ++和消息收发操作。不是每次都写ETCD, 而是采用定期持久化到ETCD 里, 每次写ETCD的CSN要加上一个backup_step (100w), 一旦GTM故障,CSN从ETCD读取出来的值保证单调递增。当前GTM 只完成CSN++, 预估可以支持200M/s 请求。GTM处理获取csn消息和csn++的消息, TCP 协议栈消耗CPU会非常严重,采用用户态协议栈提高GTM单节点的处理能力。未来架构演进完全去中心化,采用高精度时钟解决扩展性问题。

5.1 单节点的事务

在这里插入图片描述

图2 单节点事务处理流程

关键设计:

GTM 只维护一个CSN++, snapshot 只包含CSN

DN 本地维护事务id, 维护id到CSN的映射(CSN_LOG)

DN 本地GC的过程中回填CSN

单shared读事务使用local snapshot:

get local latest CSN + get prepared_xid

wait csn commit in process(same as before)

如果row.csn < localsnapshot.csn || xid in prepared_xid list 可见, 否则不可见

5.2 跨节点事务

在这里插入图片描述

图3 跨节点事务处理流程

关键设计:

第二阶段Commit 改为异步方式,只同步做prepare xact。(1.5 PC)

DN 上行级别可见性判断:

DN处于prepared状态的事务依赖对应CN上的事务是否提交,如果已经提交,且CSN比snapshot.CSN小,就可见

对DN上处于prepared的事务,CN上的事务不处于提交状态,则必须判断是否残留状态,回滚。

标签:DN,事务,CSN,关键技术,GaussDB,GTM,csn
From: https://www.cnblogs.com/xiaoxu0211/p/18674905

相关文章

  • GaussDB技术解读——GaussDB架构介绍之集群管理层(CM)关键技术方案
    GaussDBKernelV5集群管理层关键模块如下。图4集群管理层组件设计图CM组件提供了四种服务CMAgent,CMServer,OMMonitor,cm_ctl,与各类实例服务组件(CN,DN,GTM等)一起构成了整个数据库集群系统。cm_ctl通过命令行执行集群的启动、停止、状态查询、主备倒换、备机重......
  • GaussDB技术解读——GaussDB架构介绍之OM运维管理关键技术方案
    ​GaussDBKernelV5OM运维管理关键模块如下。OM运维主要功能有:安装升级节点替换扩容、缩容自动告警巡检备份恢复、容灾日志分析系统在华为云的部署模式下,OM相关组件部署示意图如下:图7华为云OM运维管理用户登录华为云Console,访问GaussDBKernelV5的管控页面,输入......
  • GaussDB 24
    GaussDB介绍华为自主创新研发的分布式关系型数据库。该产品具备企业级复杂事务混合负载能力,同时支持分布式事务,同城跨AZ部署,数据0丢失,支持1000+的扩展能力,PB级海量存储。同时拥有云上高可用,高可靠,高安全,弹性伸缩,一键部署,快速备份恢复,监控告警等关键能力,能为企业提供功能全面,稳定......
  • 智能关键技术一:自治运维系统
    智能关键技术一:自治运维系统GaussDB自治运维系统“DBMind”的整体系统框图如下图所示,包含四个维度:数据采集层数据采集层主要功能实现指标数据采集,采集频率分为秒级采集和分钟级采集。其中秒级采集包括操作系统资源信息采集和数据库实例信息采集,例如操作系统层面CPU、内存、IO读......
  • 智能关键技术三:智能优化器
    贝叶斯网络模型原理贝叶斯网络是一种概率图模型,拓扑结构通常为一个有向无环图。贝叶斯网络的优势在于能够利用条件独立假设对多变量数据进行建模,并且自适应变量之间的相关性,具体是指每个变量的概率分布只和与它直接连接的父亲节点有关。使用这种方法能够比基于简单的独立性假设的......
  • 智能关键技术二:库内AI引擎
    GaussDB库内AI引擎架构如下图:图4DB4AI架构图用户接口层在用户接口层,实现SQL-like语法,提供CreateModel、Predict等关键字,支持AI算法训练和预测。当前支持的AI算法包括:GD(梯度下降法)、KMeans(聚类)、XGBoost、决策树等。查询优化层查询优化层提供AI训练执行计划和AI预测执行计划......
  • GaussDB云原生数据库SQL引擎继承原来openGauss的词法解析,语法解析,查询重写,查询优化和
    云原生数据库SQL引擎继承原来openGauss的词法解析,语法解析,查询重写,查询优化和执行引擎的能力。由于云原生数据库是shareddisk架构,一个事务在一个节点上执行,所以不需要原来分布式根据分布式key进行数据分布,分布式执行和分布式2PC提交的能力。为了支持数据库粒度的异地多活,云原生......
  • GaussDB云原生架构
    分层原则。整体层次分为三层,分别为ApplicationLayer,ComputerLayer和StorageLayer。ApplicationLayer应用层主要是客户端各种语言的驱动,这些驱动通过通信与计算层ComputerLayer进行交互,对数据库进行操作。下面是ComputerLayer计算层,计算层负责SQL处理和事务处理,数据库的......
  • GaussDB事务存储组件
    事务存储组件云原生数据库支持透明多写,所有节点对等,每个计算节点都可以读写全部的数据页面,事务在本节点执行,没有分布式事务。每个计算节点都有Localbufferpool,采用Remotememorypool扩展计算节点的内存,在多个计算节点之间共享buffer地址,避免页面在多个计算节点之间传来传去。......
  • GaussDB实时分析组件
    云原生数据库以OLTP为主,同时也支持基于OLTP数据的OLAP需求,如每日报表。在云原生数据库中,DBA可以选择为这部分表创建列存索引。创建完列存索引之后,执行器在做顺序扫描的时候,会自动选择列存索引进行数据的读取,实现快速扫描计算的能力。云原生数据库以行存为基础,数据的增删改都先以......