CN112084211A - 一种慢sql语句处理*** - Google Patents
一种慢sql语句处理*** Download PDFInfo
- Publication number
- CN112084211A CN112084211A CN202011081995.0A CN202011081995A CN112084211A CN 112084211 A CN112084211 A CN 112084211A CN 202011081995 A CN202011081995 A CN 202011081995A CN 112084211 A CN112084211 A CN 112084211A
- Authority
- CN
- China
- Prior art keywords
- slow
- module
- sql statement
- slow sql
- sentences
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 36
- 238000005457 optimization Methods 0.000 claims abstract description 21
- 238000011161 development Methods 0.000 claims abstract description 5
- 238000012544 monitoring process Methods 0.000 claims abstract description 5
- 238000012360 testing method Methods 0.000 claims description 3
- 238000000034 method Methods 0.000 abstract description 11
- 238000004590 computer program Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开的慢SQL语句处理***,涉及数据库领域,包括分析模块、分配模块、优化模块、查询模块及处理模块,其中,分析模块用于根据数据库的二进制日志数据监控处于开发阶段的SQL语句,对SQL语句进行分析,得到SQL语句的评分,根据评分结果,判断SQL语句是否为慢SQL语句,分配模块用于将慢SQL语句写入BUG处理***并通知对应的处理人,优化模块用于针对慢SQL语句,生成预警信息并给出优化建议,查询模块用于获取慢SQL语句对应的代码,处理模块用于获取执行时间大于设定阀值的慢SQL语句并删除慢SQL语句,提高了分析结果的精确性及处理结果的有效性,保证了***的稳定性。
Description
技术领域
本发明涉及数据库领域,具体涉及一种慢SQL语句处理***。
背景技术
针对数据库的慢SQL语句一直是影响互联网企业***稳定的重要因素。频繁的数据库慢查询会导致前台引用响应缓慢,极大的影响用户的体验。并且会拖慢程序的处理,造成***高负载情况出现。***处理响应数也会变少,对***稳定性有极大影响。更严重的会导致数据库卡死以及***崩溃,带来极大的经济损失。
当前的慢SQL语句处理过程基本都是依靠人工发现、人工优化及人工处理。处理过程非常被动,通常是已经极大地影响***的稳定性后才去处理,此时是已经造成了不小的经济损失且处理质量依赖于处理人的经验,导致分析结果不精确且处理结果的有效性也不能够保证,不能从根源上解决问题。
发明内容
为解决现有技术的不足,本发明实施例提供了一种慢SQL语句处理***,该***包括:
分析模块,用于根据数据库的二进制日志数据监控处于开发阶段的SQL语句,对所述SQL语句进行分析,得到SQL语句的评分,根据评分结果,判断所述SQL语句是否为慢SQL语句;
分配模块,用于将所述慢SQL语句写入BUG处理***并通知对应的处理人;
优化模块,用于针对所述慢SQL语句,生成预警信息并给出优化建议;
查询模块,用于获取慢SQL语句对应的代码;
处理模块,用于获取执行时间大于设定阀值的慢SQL语句并删除所述慢SQL语句。
优选地,所述分析模块还用于利用SOAR工具对SQL语句进行语法分析并利用SQL语句last query cost对SQL语句进行性能分析,根据语法分析结果及性能分析结果,计算所述SQL语句的评分并判断所述评分是否小于设定的阈值,若是,则确定所述SQL语句为慢SQL语句。
优选地,所述分配模块还用于将所述慢SQL语句写入禅道项目管理***。
优选地,所述优化模块还用于利用SOAR工具,生成针对所述慢SQL语句的预警信息及优化建议。
优选地,所述查询模块还用于在elasticsearch存储测试环境下,使用kibana组件获取慢SQL语句对应的代码。
优选地,所述***还包括上线模块,用于上线非慢SQL语句。
本发明实施例提供的慢SQL语句处理***,具有以下有益效果:
在SQL语句上线前,能够自动分析SQL语句并提前发现慢SQL 语句,对慢SQL语句提出优化建议,提高了分析结果的精确性及处理结果的有效性,保证了***的稳定性。
附图说明
图1为本发明实施例提供的慢SQL语句处理***结构示意图;
图2-图5分别为采用本发明实施例提供的慢SQL语句处理***得到的预警信息及优化建议示意图。
具体实施方式
以下结合附图和具体实施例对本发明作具体的介绍。
如图1所示,本发明实施例提供了一种慢SQL语句处理***,该***包括:分析模块、分配模块、优化模块、查询模块及处理模块,其中:
分析模块,用于根据数据库的二进制日志数据监控处于开发阶段的SQL语句,对所述SQL语句进行分析,得到SQL语句的评分,根据评分结果,判断所述SQL语句是否为慢SQL语句。
作为本发明一个具体的实施例,针对SQL语句“select ‘see_employee_id’,count(*)as num from‘yw_see_project’where (‘city_id’=?)and(‘plan_real_begin_datetime’>=?)group by ‘see_employee_id’”,利用Mysql提供的explain命令得到的语法分析结果为结果为:"id":1、"select_type":"SIMPLE"、"table": "yw_see_project"、"partitions":""、"type":"ref"、"possible_keys": "see_employee_id,plan_real_begin_datetime,idx_city_id"、"key": "idx_city_id"、"key_len":"4"、"ref":"const"、"rows":108178"filtered": 0、"extra":"Using where;Using temporary;Usingfilesort";利用Mysql 提供的last_query_cost命令得到的性能分析结果为46672.699,则对该SQL语句的扣分分析为:
yw_see_project使用type为ref,扣分为-5;
未使用index索引,扣分为-5;
返回rows行数为108178,扣分为-15;
查询Last_query_cost为46672.699,扣分为-15。
根据上述扣分分析,得到该SQL语句的最终得分为60分(满分 100分,扣40分)。
分配模块,用于将所述慢SQL语句写入BUG处理***并通知对应的处理人。
优化模块,用于针对所述慢SQL语句,生成预警信息并给出优化建议。
查询模块,用于获取慢SQL语句对应的代码。
处理模块,用于获取执行时间大于设定阀值的慢SQL语句并删除所述慢SQL语句。
可选地,所述分析模块还用于利用SOAR工具对SQL语句进行语法分析并利用SQL语句last query cost对SQL语句进行性能分析,根据语法分析结果及性能分析结果,计算所述SQL语句的评分并判断所述评分是否小于设定的阈值,若是,则确定所述SQL语句为慢SQL语句。
可选地,分配模块还用于将所述慢SQL语句写入禅道项目管理***。
可选地,优化模块还用于利用SOAR工具,生成针对所述慢SQL 语句的预警信息及优化建议。
可选地,查询模块还用于在elasticsearch存储测试环境下,使用 kibana组件获取慢SQL语句对应的代码。
可选地,***还包括上线模块,用于上线非慢SQL语句。
本发明实施例提供的慢SQL语句处理***包括分析模块、分配模块、优化模块、查询模块及处理模块,其中,分析模块用于根据数据库的二进制日志数据监控处于开发阶段的SQL语句,对SQL语句进行分析,得到SQL语句的评分,根据评分结果,判断SQL语句是否为慢SQL语句,分配模块用于将慢SQL语句写入BUG处理***并通知对应的处理人,优化模块用于针对慢SQL语句,生成预警信息并给出优化建议,查询模块用于获取慢SQL语句对应的代码,处理模块用于获取执行时间大于设定阀值的慢SQL语句并删除慢SQL 语句,提高了分析结果的精确性及处理结果的有效性,保证了***的稳定性。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质 (包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (6)
1.一种慢SQL语句处理***,其特征在于,包括:
分析模块,用于根据数据库的二进制日志数据监控处于开发阶段的SQL语句,对所述SQL语句进行分析,得到SQL语句的评分,根据评分结果,判断所述SQL语句是否为慢SQL语句;
分配模块,用于将所述慢SQL语句写入BUG处理***并通知对应的处理人;
优化模块,用于针对所述慢SQL语句,生成预警信息并给出优化建议;
查询模块,用于获取慢SQL语句对应的代码;
处理模块,用于获取执行时间大于设定阀值的慢SQL语句并删除所述慢SQL语句。
2.根据权利要求1所述的慢SQL语句处理***,其特征在于,所述分析模块还用于,利用SOAR工具对SQL语句进行语法分析并利用SQL语句last query cost对SQL语句进行性能分析,根据语法分析结果及性能分析结果,计算所述SQL语句的评分并判断所述评分是否小于设定的阈值,若是,则确定所述SQL语句为慢SQL语句。
3.根据权利要求1所述的慢SQL语句处理***,其特征在于,所述分配模块还用于,将所述慢SQL语句写入禅道项目管理***。
4.根据权利要求1所述的慢SQL语句处理***,其特征在于,所述优化模块,还用于利用SOAR工具,生成针对所述慢SQL语句的预警信息及优化建议。
5.根据权利要求1所述的慢SQL语句处理***,其特征在于,所述查询模块,还用于在elasticsearch存储测试环境下,使用kibana组件获取慢SQL语句对应的代码。
6.根据权利要求1所述的慢SQL语句处理***,其特征在于,所述***还包括:
上线模块,用于上线非慢SQL语句。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011081995.0A CN112084211A (zh) | 2020-10-12 | 2020-10-12 | 一种慢sql语句处理*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011081995.0A CN112084211A (zh) | 2020-10-12 | 2020-10-12 | 一种慢sql语句处理*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112084211A true CN112084211A (zh) | 2020-12-15 |
Family
ID=73730547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011081995.0A Pending CN112084211A (zh) | 2020-10-12 | 2020-10-12 | 一种慢sql语句处理*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112084211A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112434059A (zh) * | 2021-01-26 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN112612810A (zh) * | 2020-12-23 | 2021-04-06 | 贝壳技术有限公司 | 慢sql语句识别方法及*** |
CN112613176A (zh) * | 2020-12-23 | 2021-04-06 | 贝壳技术有限公司 | 慢sql语句预测方法及*** |
CN113986707A (zh) * | 2021-11-03 | 2022-01-28 | 北京科杰科技有限公司 | 一种基于大数据kudu分区监控和监控慢SQL的方法 |
CN114185919A (zh) * | 2021-11-05 | 2022-03-15 | 深圳前海微众银行股份有限公司 | 慢查询告警方法、电子设备及存储介质 |
CN114911817A (zh) * | 2022-04-19 | 2022-08-16 | 北京百度网讯科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107748782A (zh) * | 2017-10-20 | 2018-03-02 | 北京小度信息科技有限公司 | 查询语句处理方法及装置 |
CN108509530A (zh) * | 2018-03-14 | 2018-09-07 | 武汉斗鱼网络科技有限公司 | 一种MySQL慢查询语句自动优化方法、计算机设备和存储介质 |
CN109241096A (zh) * | 2018-08-01 | 2019-01-18 | 北京京东金融科技控股有限公司 | 数据处理方法、装置和*** |
CN111352921A (zh) * | 2020-02-19 | 2020-06-30 | 中国平安人寿保险股份有限公司 | 基于elk的慢查询监控方法、装置、计算机设备及存储介质 |
-
2020
- 2020-10-12 CN CN202011081995.0A patent/CN112084211A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107748782A (zh) * | 2017-10-20 | 2018-03-02 | 北京小度信息科技有限公司 | 查询语句处理方法及装置 |
CN108509530A (zh) * | 2018-03-14 | 2018-09-07 | 武汉斗鱼网络科技有限公司 | 一种MySQL慢查询语句自动优化方法、计算机设备和存储介质 |
CN109241096A (zh) * | 2018-08-01 | 2019-01-18 | 北京京东金融科技控股有限公司 | 数据处理方法、装置和*** |
CN111352921A (zh) * | 2020-02-19 | 2020-06-30 | 中国平安人寿保险股份有限公司 | 基于elk的慢查询监控方法、装置、计算机设备及存储介质 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112612810A (zh) * | 2020-12-23 | 2021-04-06 | 贝壳技术有限公司 | 慢sql语句识别方法及*** |
CN112613176A (zh) * | 2020-12-23 | 2021-04-06 | 贝壳技术有限公司 | 慢sql语句预测方法及*** |
CN112434059A (zh) * | 2021-01-26 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN113986707A (zh) * | 2021-11-03 | 2022-01-28 | 北京科杰科技有限公司 | 一种基于大数据kudu分区监控和监控慢SQL的方法 |
CN113986707B (zh) * | 2021-11-03 | 2022-06-14 | 北京科杰科技有限公司 | 一种基于大数据kudu分区监控和监控慢SQL的方法 |
CN114185919A (zh) * | 2021-11-05 | 2022-03-15 | 深圳前海微众银行股份有限公司 | 慢查询告警方法、电子设备及存储介质 |
CN114185919B (zh) * | 2021-11-05 | 2024-05-28 | 深圳前海微众银行股份有限公司 | 慢查询告警方法、电子设备及存储介质 |
CN114911817A (zh) * | 2022-04-19 | 2022-08-16 | 北京百度网讯科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112084211A (zh) | 一种慢sql语句处理*** | |
CN110232056B (zh) | 一种结构化查询语言的血缘解析方法及其工具 | |
US10216773B2 (en) | Apparatus and method for tuning relational database | |
US8572560B2 (en) | Collaborative software development systems and methods providing automated programming assistance | |
US6546394B1 (en) | Database system having logical row identifiers | |
AU2018201268A1 (en) | Automatic analysis of a technical capability | |
WO2021061519A1 (en) | A method of performing transactional and analytical data processing using a data structure | |
GB2517787A (en) | Method and system for accessing a set of data tables in a source database | |
CN107402957B (zh) | 用户行为模式库的构建及用户行为异常检测方法、*** | |
CN112162983A (zh) | 数据库索引建议处理方法、装置、介质和电子设备 | |
US10339035B2 (en) | Test DB data generation apparatus | |
CN111241111A (zh) | 数据查询方法及装置、数据对比方法及装置、介质及设备 | |
US20080005077A1 (en) | Encoded version columns optimized for current version access | |
CN113190422B (zh) | Sql语句的质量分析方法、装置、终端及介质 | |
CN111984625B (zh) | 数据库负载特征处理方法、装置、介质和电子设备 | |
CN110019659B (zh) | 裁判文书的检索方法及装置 | |
US11657047B1 (en) | Automated query tuning method, computer program product, and system for MPP database platform | |
CN111078728B (zh) | 一种数据库归档模式下跨库查询方法和装置 | |
CN116610567A (zh) | 应用程序异常的预警方法、装置、处理器以及电子设备 | |
Ameri et al. | On a new approach to the index selection problem using mining algorithms | |
CN113051262B (zh) | 一种数据质检方法、装置、设备及存储介质 | |
Taipalus | Database management system performance comparisons: A systematic survey | |
US20070208696A1 (en) | Evaluating materialized views in a database system | |
US8359329B2 (en) | Method, computer apparatus and computer program for identifying unusual combinations of values in data | |
JP2013125429A (ja) | 分析対象決定装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210826 Address after: 100000 1025, floor 1, No. 1, Kaifa Road, Shangdi Information Industry base, Haidian District, Beijing Applicant after: Beijing tulayan Technology Co.,Ltd. Address before: 100089 08a01, block D, 8 / F, No. a 28, information road, Haidian District, Beijing Applicant before: Beijing Gaoyin Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right |