前言
DataWorks 近期上线了数据推送功能,能够将数据库查询的数据组织后推送到各渠道 (如钉钉、飞书、企业微信及 Teams),除了能将业务数据组织后推送,也能将数据库自身提供的监控数据组织后推送,这边我们就以 MySQL (也适用于StarRocks) 为例,定期推播 MySQL 的数据量变化等信息,帮助用户掌握 MySQL 状态。
效果图
以下为一段时间内指定表的存储使用情况,并推送到钉群、飞书、企业微信或 Teams。
实践:取得Schema下指定表的使用情况
以下为 SQL 内容
SELECT TABLE_SCHEMA, TABLE_NAME, round(((data_length + index_length) / 1024 / 1024), 2) as size FROM information_schema.TABLES WHERE table_name LIKE 'table_0%' ORDER BY (data_length + index_length) DESC;
以下为推送内容设定
调度及推送设置
推送结果
实践:取得Schema下表的数量
以下为 SQL 内容
SELECT count(*) as counts FROM information_schema.TABLES WHERE table_schema = 'test_db1';
以下为推送内容设定
推送结果
实践:取得指定表目前字段数量
以下为 SQL 内容
SELECT count(*) as counts FROM information_schema.columns WHERE table_schema = 'test_db1' AND table_name = 'table_001';
以下为推送内容设定
推送结果
实践:取得指定表的数据使用情况
以下为 SQL 内容
SELECT TABLE_ROWS, AVG_ROW_LENGTH, DATA_LENGTH FROM information_schema.tables WHERE table_schema = 'test_db1' AND table_name = 'table_001';
以下为推送内容设定
推送结果
实践:取得指定表目前外键使用情况
以下为 SQL 内容
SELECT CONSTRAINT_NAME, COLUMN_NAME, REFERENCED_TABLE_NAME, REFERENCED_COLUMN_NAME FROM information_schema.key_column_usage WHERE table_schema = 'test_db1' AND table_name = 'table_001';
以下为推送内容设定
推送结果
实践:取得指定表的索引使用情况
以下为 SQL 内容
SELECT INDEX_NAME, COLUMN_NAME FROM information_schema.statistics WHERE table_schema = 'test_db1' AND table_name = 'table_001';
以下为推送内容设定
推送结果
实践:取得 Schema 下 Procedure 的数量
以下为 SQL 内容
SELECT count(*) as counts FROM information_schema.routines WHERE routine_schema = 'test_db1' AND routine_type = 'PROCEDURE';
以下为推送内容设定
推送结果
实践:查看拥有删除权限的使用者列表
以下为 SQL 内容
SELECT User, Host FROM mysql.user WHERE delete_priv = true;
以下为推送内容设定
推送结果
小结
MySQL 提供许多系统配置表,能利用此数据加工后,透过 DataWorks 数据推送推至渠道方便监控,提升引擎管控程度。
相关文章
数据推送功能详细介绍 https://help.aliyun.com/zh/dataworks/user-guide/push-data
数据开发工作流 + 数据推送介绍 https://help.aliyun.com/zh/dataworks/user-guide/best-practice-combining-data-push-with-data-development-workflow
使用 DataWorks 建立每日天气预报推送 https://developer.aliyun.com/article/1566970
语雀+通义千问+DataWorks,让AI定期推送每周总结 https://developer.aliyun.com/article/1566971
利用 DataWorks 数据推送定期推播 Hologres Query 诊断信息 https://developer.aliyun.com/article/1564785
利用 DataWorks 数据推送定期推播 ClickHouse Query 诊断信息 https://developer.aliyun.com/article/1567458