[发明专利]DDL语句的处理方法、装置、电子设备及存储介质在审
申请号: | 202211400763.6 | 申请日: | 2022-11-09 |
公开(公告)号: | CN115658696A | 公开(公告)日: | 2023-01-31 |
发明(设计)人: | 苏腾辉;霍国铖;王旭;付大超 | 申请(专利权)人: | 阿里云计算有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/242;G06F16/2455;G06F40/205;G06F40/253 |
代理公司: | 北京太合九思知识产权代理有限公司 11610 | 代理人: | 蔡丽 |
地址: | 310024 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | ddl 语句 处理 方法 装置 电子设备 存储 介质 | ||
本申请实施例提供一种DDL语句的处理方法、装置、电子设备及存储介质。在本申请实施例中,优化DDL语句相对优化前的待处理DDL语句更为简短,针对优化DDL语句的语法解析,仅仅对描述库表名信息相关的语句片段进行语法解析,并复用已有表结构信息,极大地降低了DDL语句的语法解析难度,提高了DDL语句的解析性能。特别在SaaS服务场景或分库分表场景,能够有效应对短时间内触发的大量的DDL语句,极大地提高DDL语句的语法解析性能,为DTS更好地并发处理DDL语句提供基础。
技术领域
本申请涉及计算机技术领域,尤其涉及一种DDL语句的处理方法、装置、电子设备及存储介质。
背景技术
DDL(Data Definition Language,数据定义语言)语句用来对诸如数据库、数据库表、列等数据库对象进行创建、修改或删除等操作。常用的DDL语句主要有用于创建数据库对象的CREATE语句、用于修改数据库对象的ALTER语句和用于删除数据库对象的DROP语句。在诸如SaaS(Software-as-a-Service,软件即服务)服务场景或分库分表场景等各种应用场景中,用户在短时间内可能会触发大量CREATE语句或ALTER语句,例如,用户每小时触发数万个CREATE语句或ALTER语句,这样,DTS需要在短时间内对大量CREATE语句或ALTER语句进行语法解析,并基于CREATE语句或ALTER语句的语法解析结果创建或修改数据库表。显然,DDL语句的语法解析性能直接影响DTS并发处理DDL语句的能力。
实际应用中,有些CREATE语句或ALTER语句较为复杂,语法解析难度也随之增加。于是,很有必要优化CREATE语句或ALTER语句,降低这些CREATE语句或ALTER语句的语法解析难度,为DTS更好地并发处理DDL语句提供基础。
发明内容
本申请的多个方面提供一种DDL语句的处理方法、装置、电子设备及存储介质,用以极大地降低DDL语句的语法解析难度,提高DDL语句的解析性能。
本申请实施例提供一种DDL语句的处理方法,包括:若待处理DDL语句的语句类型为创建表类型或修改表类型,则从待处理DDL语句中提取描述表结构信息的第一语句片段;查询预先缓存的至少一个已解析语句片段中是否包括第一语句片段,已解析语句片段是从已经完成语法解析的已有DDL语句中提取的描述表结构信息的语句片段;若预先缓存的至少一个已解析语句片段中包括第一语句片段,则获取预先缓存的与第一语句片段关联的第一优化语句片段,第一优化语句片段用于指示在语法解析阶段复用对第一语句片段进行语法解析得到的已有表结构信息;将待处理DDL语句中的第一语句片段替换为第一优化语句片段,得到第一优化DDL语句。
本申请实施例还提供一种DDL语句的处理装置,包括:提取模块,用于若待处理DDL语句的语句类型为创建表类型或修改表类型,则从待处理DDL语句中提取描述表结构信息的第一语句片段;查询模块,用于查询预先缓存的至少一个已解析语句片段中是否包括第一语句片段,已解析语句片段是从已经完成语法解析的已有DDL语句中提取的描述表结构信息的语句片段;获取模块,用于若预先缓存的至少一个已解析语句片段中包括第一语句片段,则获取预先缓存的与第一语句片段关联的第一优化语句片段,第一优化语句片段用于指示在语法解析阶段复用对第一语句片段进行语法解析得到的已有表结构信息;优化模块,用于将待处理DDL语句中的第一语句片段替换为第一优化语句片段,得到第一优化DDL语句。
本申请实施例还提供一种电子设备,包括:存储器和处理器;存储器,用于存储计算机程序;处理器耦合至存储器,用于执行计算机程序以用于执行DDL语句的处理方法中的步骤。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器能够实现DDL语句的处理方法中的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里云计算有限公司,未经阿里云计算有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211400763.6/2.html,转载请声明来源钻瓜专利网。