语言
<< 返回案例列表

从Oracle到TeleDB,SQM助力河北电信数据库转型升级

2021年8月26日
,
t
e
l
e
d
b
,
S
Q
L
,
,
854

前言

5G时代是云和网融合的时代,上云成为众多企业数字化转型的必由之路。拥有网络、大数据等技术优势的运营商加快了云生态布局。为达成业务全面上云的目标,中国电信集团要求内部应用系统要有一定比例迁移到自研的TeleDB和TelePG数据库上。相较于其他友商产品,云和恩墨的SQM率先支持TeleDB和TelePG数据库,帮助河北电信实现了TeleDB数据库深度SQL审核、快速定位SQL性能问题、给出精准优化建议等功能,满足了客户数据库转型过程中SQL审核、改造及优化需求,获得客户的高度认可。

 

01
数据库迁移过程中SQL难题待破解

2020年7月,中国电信召开视频会议,对系统上云工作进行部署,明确提出实现“业务上云、生产上云、管理上云、数据融通、能力开放”的目标,力争在2022年前实现系统全面上云,为“用数”和“赋智”夯实基础。因此,Oracle数据库迁移到TeleDB和TelePG数据库成为实现该目标的必经之路。

应用数据库迁移通常采用两种方式。一种是将原SQL语句改成TeleDB和TelePG可以直接执行的语句。虽然相同的SQL语句在原数据库上可以顺利运行,但是在TeleDB上就会存在性能问题,导致数据库负载、资源消耗过高,影响线上业务流程。另一种方法是改写之前的业务逻辑,使其最终呈现效果和改写之前的业务结果一致。但是这种方法存在代码改造遗漏和测试未覆盖的情况,如果这部分的业务功能在线上运行,故障就会发生。

 

02
全场景SQL质量管控确保应用高效运行

云和恩墨SQM提供全场景SQL质量管控解决方案,在应用开发、测试、上线、生产等不同阶段对SQL进行质量管控,前置性地保障应用稳定、高效运行。

针对上述电信集团数据库迁移过程中的SQL问题,SQM最新版本新增支持了TeleDB和TelePG两大数据库。新版本能够检测原Oracle数据库迁移到TeleDB和TelePG数据库上的语法兼容性;同时,可以在应用改造的测试阶段发现SQL的规范和性能问题,避免线上故障。此外,通过连库审核、Jenkins、openAPI等功能,SQM可以监控生产数据库上SQL的运行,对性能较差的SQL进行优化,提升生产环境的稳定性。

 

03
TeleDB数据库SQL审核优化效果显著

目前,SQM帮助河北电信进行了TeleDB数据库的SQL审核优化,显著提高了SQL审核的效率和准确度,数据库性能得到大幅提升。从SQM部署上线到最终审核结果展示,平台的整体设计及应用成效得到了客户的高度认可。SQL审核优化效果表现在以下几个方面:

1、部署上线运行,极速审核

云单机部署SQM平台,场景为生产运行阶段的连库SQL审核,从物理环境部署到连库,端到端流程半天完成,即刻上线。SQM针对客户的Oracle、TeleDB进行审核,共计审核SQL数量6万多条,发现问题数7万多个。相比人工审核,审核时间从“天”缩短至“小时”级别,效率大幅提升。

SQM 针对Oracle、TeleDB进行的SQL审核结果

 

2、内置专家引擎,精准审核

SQM平台内置的专家引擎,支持74条TeleDB专家审核规则和自定义审核规则,可满足个性化审核需求。SQM针对河北电信2021年X月X日生成的TeleDB日志进行审核,审核40条SQL语句,风险问题187个,如下图:

 

3、风险分类,精细化管理

针对上述187个问题,SQM平台对风险SQL进行分类,实现精细化管理。

 

4、精准定位问题SQL位置,给出优化建议

SQM平台支持问题SQL关联数据库结构,精准定位问题SQL所在租户、实例、set、schema,便捷查找和管理。同时,平台根据风险情况,给出对应的处理优化建议。

SQM精确定位问题SQL位置

 

SQM给出优化建议

 

5、多种审核结果展示方式

针对审核出的问题,SQM平台可通过列表、报表、报告、第三方(API)四种形式展示,帮助客户清晰地了解问题SQL和系统风险。

SQM平台的列表、报表、报告、第三方(API)审核结果展示

 

在未来的工作中,河北电信将围绕云网融合的优势开展研发布局,打造科技创新的硬核实力。同时,公司将持续推进内部应用系统迁移到自研数据库的工作,推动企业数据库转型升级。云和恩墨不断完善SQM功能,满足客户转型过程中对SQL审核、改造及优化的新需求,为河北电信数据库国产替代助力。

 

关于SQM

SQM-SQL质量管控平台,能够自动抓取数据库开发与运行环境中的对象设计与SQL信息,并依据既定的审核规则分析,找出对象设计与SQL中的潜在问题,给出专业改进建议,规避应用性能和稳定性风险。SQM可在应用开发、测试、上线、生产不同阶段对SQL进行质量管控,前置性地保障应用稳定、高效运行。