我们提供安全,免费的手游软件下载!
数据库在企业应用系统中扮演着核心角色,而SQL作为数据库查询、更新等操作的标准语言,其重要性不言而喻。然而,实际SQL开发过程中却面临着许多挑战:
数据库应用开发人员的SQL能力不一,经常会写出不符合标准、执行性能差的SQL。如果这些风险SQL流入生产环境,必然会对应用系统造成极大影响。
随着应用越来越复杂,对应SQL的规模也越来越大。一个SQL语句动辄数百甚至上千行,这对专家来说也是一个挑战,很难发现潜在的问题。
在数据库异构替换场景中,应用开发人员对目标数据库了解不够深入,烂SQL或慢SQL会越来越多,也缺少相关专家对SQL的质量进行审核。
基于这些挑战,华为云数据库和应用迁移UGO提供了SQL审核功能。
SQL审核功能基于审核规则管理、性能评估和索引推荐、全面的审核路径、API集成和对接四大特性,帮助应用开发人员深度看护业务代码、提升开发效率、减轻专家手工审核负担,并提前预防由于风险SQL引起的稳定性和性能问题,有效避免风险SQL流入生产环境。
审核规则管理:支持规范类、设计类、性能类等数百条SQL审核规则,并支持自定义规则模版、风险等级、阈值和优化建议。
性能评估和索引推荐:可评估PL/SQL中SQL语句的性能问题并输出分析报告,也可以为用户推荐最优索引。
全面的审核路径:支持对象审核、代码审核、动态SQL审核等多种审核路径,并支持对SQL语句进行智能诊断分析。
API集成和对接:提供审核相关的OpenAPI,帮助开发者完成应用和SQL审核的集成,提升业务开发效率。
该功能目前支持GaussDB、MySQL、PostgreSQL多种引擎,并对GaussDB做了深度适配,在GaussDB数据库领域具有很高的专业度和规则覆盖度,帮助客户解决GaussDB数据库替换场景的SQL审核问题。下文将围绕以上特性详细展开。
审核规则
根据内部SQL编程规范和外部客户的实际使用场景,整理出开发规范类、对象设计类、性能类等数百条SQL审核规则,对常见SQL质量问题进行了深入分析和审核。
自定义审核模版
用户需要根据自己的业务场景制定不同要求和规范时,SQL审核允许用户自定义SQL审核规则模版,选择和修改适合自身业务场景的审核规则,生成不同的规则模板,并自定义风险级别、阈值及优化建议。
PL/SQL性能评估
在GaussDB数据库替换过程中,用户难以对PL/SQL内的SQL进行准确的性能分析。SQL审核提供了PL/SQL性能评估功能,通过对PL/SQL内的逻辑分支进行剪枝和重构,从而保证内部所有的SQL语句被全部执行和分析。
前置索引推荐
索引是数据库优化的重要手段,通过合理的设计可以显著提升数据库性能。SQL审核支持对SQL语句进行智能诊断分析,生成冗余索引、不合理索引、推荐索引、风险SQL等分析报告。
对象审核
数据库对象是数据库架构的基础,良好的数据库对象设计可以对数据库业务的稳定运行提供坚实的保障。对于数据库对象审核场景,SQL审核会对数据库对象进行审核,从对象设计规范、合理性和性能等角度进行审核,提高系统的可维护性、安全性和规范性。
代码审核
在应用开发阶段,代码审核是确保软件质量和稳定性的重要步骤。SQL审核会采集代码中的SQL语句并进行全面审核,有助于提升代码质量,减少技术债务,促进团队间的技术共享和协作。
动态SQL审核
动态SQL是一种在运行时实时生成的SQL语句,无法从代码或数据库中直接获取。对于动态SQL审核场景,SQL审核可以通过JVM探针或流量录制等方式,采集业务运行过程中产生的SQL语句,有效降低潜在风险。
API集成和对接
SQL审核提供了OpenAPI,用于将SQL审核集成到持续集成/持续交付流水线中,帮助开发团队自动完成审核,并返回审核结果,有效提高审核效率和SQL代码质量。
API安全认证
用户可以通过登录控制台创建访问密钥,获取AK和SK进行安全认证,确保请求的机密性、完整性和请求者身份的正确性。
SQL审核成功帮助某金融大行完成数据库替代,将业务平滑迁移至GaussDB,通过流水线、上传业务代码、扫描业务数据库等方式,自定义特性化审核规则,审核了70多个应用系统,扫描的SQL总数超过60万条,发现的问题SQL数超过31万条,其中严重问题超过8万条,一般问题超过11万条,提示问题超过11万条。应用开发人员根据审核报告提前发现大量不规范SQL,并对代码进行优化,有效避免了风险SQL流入生产环境。
华为云数据库和应用迁移UGO服务的SQL审核功能在数据库管理和开发过程中具有重要的价值,是任何数据库管理和开发过程中都不可或缺的一部分。它不仅可以优化数据库和业务系统的性能和可靠性,还能提升代码的可读性和可维护性。在未来,UGO将借助AI技术持续增强SQL审核和优化改写能力,帮助用户更好地管理数据库和开发数据库相关业务。
华为开发者空间,汇聚鸿蒙、昇腾、鲲鹏、GaussDB、欧拉等各项根技术的开发资源及工具,致力于为每位开发者提供一台云主机、一套开发工具及云上存储空间,让开发者基于华为根生态创新。点击链接,免费领取您的专属云主机
相关资讯
热门资讯