国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

字節客增慢 SQL 治理體系

原創 精選
數據庫 SQL Server
慢 SQL 即執行時間超過 long_query_time 設定閾值的 SQL 語句,可通過 select @@long_query_time 查看數據庫具體的慢查詢閾值。另外慢 SQL 不僅僅包括 select 語句,也包括 delete,insert 等 DML 語句。

作者 | 房廠

項目概覽

背景

慢 SQL 即執行時間超過 long_query_time 設定閾值的 SQL 語句,可通過 select @@long_query_time 查看數據庫具體的慢查詢閾值。另外慢 SQL 不僅僅包括 select 語句,也包括 delete,insert 等 DML 語句。

慢查詢 SQL 的危害包括:

  • 性能: 慢 SQL 的執行時間過長,則會導致用戶的等待時間過長,直接影響用戶體驗;
  • 穩定性: 當 db 出現慢查詢,一旦有其他的 DDL 操作,可能會造成整個數據庫的等待;另一方面,慢 SQL 會拖垮數據庫,導致正常執行的 SQL 也會變成慢 SQL。在字節的線上事故管理平臺搜索慢 SQL 關鍵字可以看到很多由于慢 SQL 導致的事故,危害性較大。

成果

發布慢 SQL 月報,整理最佳實踐,頭部泳道推動改進等取得了慢 SQL 數下降了近 50%,慢 SQL 周運行次數下降了一個數量級的成效;

慢 SQL 配置&告警訂閱持續配置率從 18% 提升到 70% 左右,持續優化中。

名詞解釋

  • RDS:Relational Database Service,即字節關系型數據庫服務。提供的關系數據庫服務,使用的數據庫產品主要以開源 MySQL 數據庫為主。字節云關系型數據庫服務(RDS)專注于為業務提供穩定可靠,彈性伸縮的在線數據庫服務。
  • Mars:客增性能平臺名稱。
  • 風神 Aeolus:字節自研敏捷 BI 平臺,提供靈活易用的數據查詢,高效美觀的報表制作,與豐富多元的數據內容。

設計方案

1. 架構圖

2. 核心功能

2.1 全面的慢 SQL 度量看板

以字節 RDS 平臺數據庫的慢 SQL 數據為依據,量化管理客增每日/每周/每月的慢 SQL 數量&運行次數。按照度量看板數據推動大家及時改進存量的慢 SQL,降低數據庫質量風險。例如周維度的運行次數 & 慢 SQL 條數趨勢圖如下所示:

2.2 慢 SQL 治理體系

2.2.1 rds 慢 SQL 閾值配置自動化管理

字節關系型數據庫平臺-RDS 提供慢 SQL 閾值配置的功能:

  • 當 SQL 執行時間超過該閾值后,會被自動 kill 終止運行,相當于慢 SQL 的容災配置(如果一條 SQL 執行了 3 個月還在運行,結果不敢想象)

慢 SQL 閾值配置自動化管理是解決業務關聯的數據庫全部配置了慢 SQL 閾值信息。該部分通過線上定時巡檢來實現,流程如下:

2.2.2 Mars-慢 SQL 治理平臺

在客增質量工作臺搭建 Mars-客增慢 SQL 治理 Web 頁面,展示相關業務的慢 SQL 現狀以及排期跟進修復情況,目的是讓業務同學更清晰快速了解當前業務相關,提供問題修復效率,方案如下:

慢 SQL 跟進頁面:

2.2.3 慢 SQL 風險評估模型-慢 SQL 分

當業務線存在較多慢 SQL 時,如何精準且合理的分析出哪些慢 SQL 風險最高?

我們基于關系型數據庫的 Quert_time,Lock_time,Rows_sent,Rows_affected,Bytes_sent 等維度建立客增的慢 SQL 風險評估模型,給每條慢 SQL & 每個數據庫打分,按照慢 SQL 分來排序,分數最高的慢 SQL 風險最高。

慢 SQL 模型如下:

2.3 慢 SQL-CI 流水線準入/準出卡口建設

基于 ByteCycle(ByteCycle 字節統一能效中臺)開發慢 SQL 原子節點,提供慢 SQL 相關的卡點能力。bytecycle 基于 psm 維度來構建持續集成流水線,通過提供慢 SQL 原子節點,可以方便用戶插拔式使用。CI 卡點能夠提供大家對慢 SQL 的重視程度以及提高慢 SQL 的改進效率。

2.4 慢 SQL 監控&告警訂閱

目前提供慢 SQL 月報,每日慢 SQL 相關問題修復提醒,sqll kill lark 告警卡片等維度的信息展示和觸發。相關樣式如下:

慢 SQL 月報

每日慢 SQL 問題修復提醒

配置 db 慢查詢閾值后,如果超過該閾值則該語句會被 db 自動 kill,訂閱后會自動將獲取到的 kill 信息發送到對應群中

3. Code 方案

RDS 元信息獲取實現方案

數據表設計

create table cg_rds_external
(
id int unsigned auto_increment primary key comment 'id',
db_name varchar(100) default '' null comment 'db名字',
owners varchar(100) default '' not null comment 'db owners',
region varchar(100) default '' not null comment 'db部署的region',
proxy_port_master varchar(100) default '' not null comment 'master節點的port',
proxy_port_slave varchar(100) default '' not null comment 'slave節點的port',
sync_time datetime default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '數據同步時間'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 comment 'rds db額外信息';


create table cg_rds_slow_query_config
(
id int unsigned auto_increment primary key comment 'id',
config_id int null comment '慢查詢配置id',
db_name varchar(255) default '' null comment 'db名字',
region varchar(100) default '' not null comment 'db部署的region',
port varchar(100) default '' not null comment '規則中的端口',
db_role varchar(100) default '' not null comment 'master or slave',
max_query_time int null comment '超時閾值,單位是秒',
creator varchar(100) default '' null comment '規則創建人',
create_time varchar(100) default '' null comment '規則創建時間',
sync_time datetime default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '數據同步時間'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 comment 'rds慢查詢規則配置信息';

create table cg_rds_db_alarm_config
(
id int unsigned auto_increment primary key comment 'id',
region varchar(100) default '' not null comment 'db部署的region',
alarm_id int null comment 'alarm 規則id',
db_name varchar(255) default '' null comment 'db名字',
type varchar(100) default '' not null comment 'alarm type,例如lark',
group_id varchar(100) default '' not null comment 'lark id',
create_time varchar(100) default '' not null comment '規則創建/更新時間',
owner varchar(100) default '' not null comment 'alarm創建人',
sync_time datetime default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '數據同步時間'
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 comment 'rds alarm配置表';

慢 SQL 查詢詳情落庫

數據表

create table cg_slow_query_detail_info
(
id int unsigned auto_increment primary key comment 'id',
db_name varchar(255) default '' null comment 'db 名',
db_region varchar(255) default '' null comment 'db的region',
fingerprint_md5 varchar(255) default '' null comment '慢sql標識',
begin_time datetime DEFAULT CURRENT_TIMESTAMP null comment '慢sql的開始執行時間',
max_run_time varchar(255) default '' null comment 'sql執行的最大耗時',
run_count int default 0 null comment 'sql執行次數',
psm_name varchar(255) default '' null comment '發起sql的psm',
avg_query_time varchar(255) default '' null comment '平均耗時',
rds_address varchar(255) default '' null comment '執行sql的rds主機ip:port',
psm_host varchar(255) default '' null comment '發起查詢請求的主機ip',
sync_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '數據同步時間'
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4 comment '客增慢sql記錄';

慢 SQL 被 kill 的詳情信息獲取方案

數據表

create table cg_kill_sql_detail_info
(
id int unsigned auto_increment primary key comment 'id',
db_name varchar(255) default '' null comment 'db 名',
db_region varchar(255) default '' null comment 'db的region',
db_role varchar(255) default '' null comment 'db節點: master slave',
begin_time datetime DEFAULT CURRENT_TIMESTAMP null comment '被kill的sql 執行開始時間',
psm_name varchar(255) default '' null comment '發起sql的psm',
sql_detail varchar(2000) default '' null comment 'sql詳情',
db_table_name varchar(255) default '' null comment '該sql的表名,如果多個表,只取第一個',
sync_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '數據同步時間'
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4 comment 'rds被kill的慢sql數據統計';

Metrics 監控規則

rds 報警訂閱的監控只能發現 rds 上執行的 SQL 數據,不能實時發現慢接口。故推薦使用 dbatman 的 metrics 打點來完成慢 SQL 的監控告警工作。

$key = "max:toutiao.ttds.dbatman.latency.max{db=sales_manage,port=*,host=*,dc=*}"
$value = max(q($key, "3m", "1m"))/1000
warn = $value>50
runEvery=1

4. 慢 SQL 治理最佳實踐與標準制定

慢 SQL 治理優化基本可分為如下 3 類:

  • 優化 shcema
  • 優化索引,盡可能構建三星索引
  • 優化查詢,合理的設計查詢

相關細則如下所示:

責任編輯:未麗燕 來源: 字節跳動技術團隊
相關推薦

2021-08-03 17:15:19

SQL 慢 SQL

2025-03-27 03:22:00

2022-02-28 08:09:14

sql分頁查詢

2025-04-03 09:00:00

2022-11-10 20:43:57

數據治理數據湖

2020-08-31 16:19:26

IT治理建立績效體系

2023-11-24 07:10:44

數據治理PCG

2022-01-10 09:44:41

MySQL數據庫開發

2023-06-05 07:24:46

SQL治理防御體系

2023-04-10 07:34:30

2022-10-21 10:40:08

攜程酒店MySQL慢查詢

2023-01-10 09:08:53

埋點數據數據處理

2024-04-12 12:01:51

人工智能AI大模型

2022-10-27 09:42:22

數據庫SQL

2024-04-23 10:16:29

云原生

2022-05-13 11:24:09

數據美團

2022-10-13 09:38:01

數據建設

2024-06-14 08:34:36

2021-07-30 07:28:16

SQL優化日志
點贊
收藏

51CTO技術棧公眾號

日韩欧美一二三| 一区二区三区我不卡| h片在线观看视频免费免费| 亚洲国产欧美日韩另类综合| 夫妻免费无码v看片| 韩国欧美国产1区| 欧美午夜欧美| 日韩视频在线一区二区三区| 99re国产视频| 亚洲国产不卡| 91在线视频免费| 欧美精品一区二区久久| 国模私拍视频一区| 婷婷丁香久久| 亚洲视屏在线播放| 桃色一区二区| 一区二区三区美女xx视频| 久久影院午夜精品| 亚洲片在线资源| 亚洲mmav| 久久伊人免费视频| 中文字幕一区二区三区中文字幕| 日韩亚洲精品电影| 精品国产三级| 97视频com| 在线亚洲a色| 国产精品美女无圣光视频| 国产最新精品| 国产有码一区二区| 欧美日本亚洲韩国国产| 国产精品免费一区二区三区在线观看| 一区视频在线| 手机成人在线| 不卡视频在线看| 色片在线免费观看| 亚洲一区二区三区在线看| 亚洲人成网址| 欧美一区二区在线免费播放| 中文字幕亚洲精品视频| 日韩精品亚洲一区| 欧美成熟毛茸茸复古| 免费不卡在线视频| 欧美性受xxxx黑人猛交88| 国产成人综合在线播放| 婷婷五月综合缴情在线视频| 久久―日本道色综合久久| 成人免费网址在线| 天天操天天干天天综合网| 秋霞午夜在线观看| 亚洲日韩第一页| 婷婷精品在线观看| 国产精品视频在线免费观看 | 亚洲区综合中文字幕日日| 含羞草久久爱69一区| 国产成人免费网站| www 四虎| 日韩亚洲欧美中文三级| 99精品美女视频在线观看热舞| 国产精品久久久久国产a级| 久久精品主播| 国产一伦一伦一伦| 在线播放91灌醉迷j高跟美女| 国产成人免费精品| 国产精品电影一区| 蜜桃av一区二区三区电影| 日韩肉感妇bbwbbwbbw| 欧美日韩另类国产亚洲欧美一级| 成人在线视频观看| 91亚洲精华国产精华| 国产精品18久久久| 中文字幕视频免费在线观看| 国产午夜精品久久久| 啄木系列成人av电影| 日韩欧美在线一区二区| 国产精品久久一级| 超碰成人av| 91免费精品视频| 91网站黄www| 直接在线观看的三级网址| 欧美在线日韩在线| 国产91精品在线观看| 韩国中文字幕2020精品| 欧美成人精品在线观看| 久久久久久久高潮| 在线播放evaelfie极品| 伊人久久综合97精品| 欧美日本国产| 午夜大尺度福利视频| 亚洲色图综合网| 亚洲综合小说| 免费在线观看毛片网站| 亚洲成av人片在线观看香蕉| 91一区二区三区四区| 国产日韩成人内射视频| 日韩精品在线免费| 国产一区二区三区久久| 伊人资源视频在线| 超碰精品一区二区三区乱码| 麻豆精品视频在线观看免费| 国产综合在线观看| 国产精品男人爽免费视频1| 久久免费午夜影院| 国产精品亚洲d| 亚洲看片网站| 欧美一区二区在线观看| 91精品啪在线观看国产18 | 久久99精品久久久久久| 你懂的在线免费观看| 国内免费精品永久在线视频| 国产高清不卡一区| 华人av在线| 亚洲一区三区视频在线观看| 日本道色综合久久| 91精品亚洲| 极品粉嫩饱满一线天在线| 欧美在线视频免费播放| 日本一区二区三级电影在线观看| 国产原创一区| 日韩av中文字幕第一页| 国产亚洲视频在线| 国产v综合v亚洲欧| 天天综合网站| 成人免费性视频| 在线视频欧美性高潮| 顶级嫩模精品视频在线看| 日韩成人高清| 欧美日韩福利在线| 久久精品夜夜夜夜夜久久| 91日韩一区二区三区| 日韩在线成人| 日本中文字幕高清| 欧美亚洲成人免费| 亚洲国产日产av| 欧美不卡视频| 草莓福利社区在线| 一区二区视频在线观看| 亚洲欧美一区二区激情| 成人免费视频一区| 一区三区自拍| 日本五十路在线| 999精品在线观看| 欧美一三区三区四区免费在线看| 亚洲免费一区二区| 欧美aa在线| 精品一卡二卡三卡| 日本精品视频在线观看| 一本到不卡免费一区二区| 久久国产免费| 欧美xxxx网站| 黄色免费看片| 激情五月综合色婷婷一区二区 | 原千岁中文字幕| 亚洲伊人第一页| 日韩亚洲欧美高清| 国产黑丝在线一区二区三区| 福利一区三区| a视频在线看| 久久综合中文色婷婷| 亚洲欧美制服中文字幕| 欧美高清在线一区二区| 久久精品国内一区二区三区水蜜桃| 亚洲搞黄视频| 男人天堂a在线| 日韩av免费一区| 欧美三级乱人伦电影| 国产在线视频一区二区| 91精品入口| 免费黄网站在线观看| 中文字幕一区二区三区精彩视频| 日韩综合中文字幕| 一区二区高清在线| 日本视频免费一区| 在线日韩成人| 四虎久久免费| 日本在线观看a| 成人在线视频电影| 色天天综合狠狠色| 色婷婷久久综合| 成人免费看黄yyy456| 欧美色图国产精品| 亚洲精品mv| 性色视频在线| 五十路熟女丰满大屁股| 亚洲精品女av网站| 色琪琪综合男人的天堂aⅴ视频| 精品magnet| 国产精品1区二区.| 亚洲女同一区| 成人噜噜噜噜| fc2ppv国产精品久久| 97在线观视频免费观看| 亚洲免费不卡| 成人高h视频在线| 日韩有码片在线观看| 欧美另类变人与禽xxxxx| 国产精品国产三级国产aⅴ原创 | 精品视频在线一区二区在线| 国产香蕉视频在线观看| 黄色三级中文字幕| 国产91视觉|