续上节,前面介绍了Aquila的核心功能以及图示,本篇文章将从不同模块为您介绍DBA Service的核心功能以及基本原理。如果对您使用产品有帮助欢迎多多留言点赞(最佳动力)~
友情链接:
模块1: 监控分布式计算引擎等组件的服务状态和Query运行状态 可以被DBAService监控的组件包括:Inceptor(6.2及以上),Quark(任意版本),CompactService(任意版本),ArgoDBComputing(任意版本),ArgodbBAR,Slipstream(TDH 9.3.1/argo 5.2及以上)。
DBAService中的和Query相关,Server/Executor状态等监控数据都是来自Quark Server,Quark Server通过leviathan-message(封装了akka的消息框架)发送监控埋点数据给DBAService。 DBAService将这些数据聚合/可视化/保存(查询到详细数据会保存到csv,统计信息会保存到内置的h2数据库)。 DBAService将这些数据聚合/可视化/保存(查询到详细数据会保存到csv,统计信息会保存到内置的h2数据库)。
DBAService的Query-Statistics页面解读 DBAService的Query-Statistics页面希望可以对您业务的多个特征提供一个概览。
通过该页面可以实现以下场景:
- 查看不同业务的特征趋势
- 查看不同用户的业务趋势
- 查看某个小时每天的变化趋势
模块2: 对服务或Query的一些管理功能 DBAService上可以执行一些管理类操作,这些操作都是DBAService内部直接调用Quark Server的Restful API,可以通过DBAService的dbaservice-audit.log日志查看。
常用功能如下:
有些用户需要通过自己的运维管理平台管理提交到我们quark的Query。
如果您需要接口对接:查看任务进度和kill任务的功能,可以参考:如何通过接口管理计算引擎Quark的任务(查看进度和KILL)(后续提供)
- 收集Server/Executor的Jmap/Jstack/HeapDump
模块3: 部分存储引擎的库表监控 DBAService上可以查看ArgoDB/Timelyre 库表汇总与详细数据,这些数据基本上是DBAService通过Restful API的方式访问Quark或者Quark依赖的存储服务。
库表信息的汇总统计:
节点维度和磁盘维度的汇总统计:
也可以一键导出到excel,更多维度的离线统计分析,也可以根据改善建议/小文件数量等特征辅助Holodesk表的治理工作。下载后的内容示例:
这里的统计数据默认每天更新一次,同时也会把统计数据存储到argodb表中:
单表的监控页面:
库表汇总与存储引擎状态
数据库关键指标
单表关键指标信息监控
模块4: ArgoDB的事务锁依赖图 DBAService中Query的监控数据中包含了一个Query 产生的事物ID列表。
另外,DBAService每分钟定时会从TDDMS获取当前事务id依赖关系。
下图是两个Query执行过程中产生的事物依赖图。途中橘色的卡片表示持有锁的查询,卡片上有Query和库表的基本信息,点击卡片可以调转到Query的详情页面:
第一个query:
第二个query:
注:以上Query是指DDL/Compact类的Query除外的其他Query。
模块5: SQL告警 该模块需要结合Aquila一起使用,目前只有TDH上的Aquila 931+最新patch支持。
告警实现原理:DBAServcie的SQL告警功能是基于从Aquila的Insights Server中获取的告警规则,对内存中的SQL根据开始/结束消息/每分钟的定时检测任务进行检测,对于出发规则的SQL推动告警信息到Aquila。如果需要告警通知,则在Aquila到Insights Server中配置通知策略即可。
包含如SQL倾斜等告警规则。
告警示例
模块6: 安全(权限/认证) DBAService 9.4开始对接了Guardian Federation作为认证方式。
DBAService的用户与权限完全依赖Guardian,主要是为了和Quark保持一致。
默认情况下普通用户只能看到自己的Query,admin角色的用户有所有权限。
模块7: 全量Query关键指标保存到Quark ORC表 这个功能推出的背景是因为有些用户需要把所有的Query保存到Quark/Inceptor的表中,进行内部SQL质量治理。
特别说明 除了【模块1】的功能,在集群中安装了Guardian的情况下,只要Quark的beeline开了安全,其他功能都需要DBAService开安全才可以正常使用。
本篇文章就先介绍到这里,下一篇我们将从场景角度为大家介绍产品,如果对您的产品使用有帮助,欢迎您多多点赞留言~我们下期见
...未完待续