一种在openGauss数据库上不阻塞查询的快速增加列的方法及装置
申请号:CN202510843914
申请日期:2025-06-23
公开号:CN120670428A
公开日期:2025-09-19
类型:发明专利
摘要
本申请涉及一种在openGauss数据库上不阻塞查询的快速增加列的方法及装置。本方法包括:对新增列的选项进行检测,满足条件时触发快速增加列流程;在增加列操作期间,对目标表及其关联的toast表、分区表对象施加7级锁,而对并发查询操作保持1级锁,实现锁级别的兼容性以避免相互阻塞;通过open_tables对象冻结查询时的列元数据快照,在查询的语义处理、规划及执行阶段均基于该快照版本处理列投影与条件计算,确保数据一致性;规划器与执行器基于快照版本分配内存、解析元组,避免因并发列变更导致的内存越界或数据错位。本申请技术方案可实现增加列操作与查询操作并发执行,提高数据库维护效率,降低阻塞风险,保障查询一致性。
技术关键词
快照
对象
数据
语义
规划
扩展模块
表达式
阶段
存储计算机程序
执行器
内存
错位
处理器
物理
可读存储介质
存储器
键值
电子设备
语句