平台人生
作者平台人生2017-05-02 14:43
软件开发工程师, 平台人生

工欲善其事,必先利其器——ORACLE数据库的可视化运行分析平台

字数 1947阅读 7743评论 2赞 6

作者:吴多刚


一、问君能有几多愁

脑补一下这些似曾相识的场景,你是不是也曾经历过。
场景一:
——系统响应时间长了,数据库有啥问题吗?
——好多库呢,究竟是哪个库出现问题?
——还不确定,逐个都看看吧
DBA们登录主机、执行脚本、检查结果、分析原因…….
场景二:
——做一下例行检查,看看哪些库性能数据正常,哪些不正常?
跑脚本、导出结果,excel分析……
场景三:
——应用新版本上线,看看数据库性能指标有哪些变化?
找历史数据,线下比对……
场景四:
——数据库性能数据有变化,对业务有影响了,没有告警啊,哪里出问题了?……
增加一个表情或者图片,(心痛)
如果你也曾被这些问题困扰,深感处理此类问题的效率低下,那么赶快行动起来吧,让我们一起来挖挖运维大数据的价值,数据产生于运行,也要服务于运行。

二、他山之石,可以攻玉

我们中心的运维大数据平台基于开源产品,完全自主研发,提供标准、统一的数据分析、展示、交互等功能。本文从这个平台入手,重点介绍Oracle数据库的日常运行数据可视化分析。
借助该平台,结合数据库端全量动态性能采样,实现了数据库运行态视图总览、性能基线标识、基于动态性能基线告警、历史信息比对、异常态数据深入挖掘和在线分析等功能;将数据采集、清洗、入库,检索、分析模型、动态基线等操作标准化、工具化,以免登录、免维护的方式进行ORACLE运行数据分析,最终大幅提升问题分析处置的敏捷性和准确性。

三、 东临碣石,以观沧海

微信图片_20170502143346.png

微信图片_20170502143346.png

  1. 数据采集

    我们DBA研发的Oracle数据库性能采集脚本,涵盖了Oracle数据库的运行态数据、等待事件数据、SQL运行数据等200多项指标,同时基于Flume框架自主开发采集代理,将数据输出的格式化文本文件以全量采集的方式发送到服务端的日志接收器。

  2. 采集数据集中入库
    日志接收器对采集代理产生的日志进行收集,并进行文本解析及字段提取,结合被管设备的配置,自动在采集的数据中添加子系统、部署单元、资源池、集群等配置信息,将数据按照一定的规则进行行转列处理,最后,将数据持久化保存到ElasticSearch(以下简称ES)集群中。由于ES支持动态模板,可以灵活扩展存储的指标列,提供类似列存储的能力,在对所有字段建立索引后,可实现亚秒级的实时检索。

  3. 前端定制展现
    Elastic Stack自带KIBANA数据可视化分析工具,可以灵活定制仪表盘,在实际运行过程中,我们发现KIBANA存在展示方式不够丰富、无权限管理、图表较多时首屏时间长等问题,故我们后期引入了Grafana进行可视化展示。Grafana在展示数字类型的时间序列数据方面比KIBANA更胜一筹,我们按照数据库实例、专项指标等维度制作了各类分析仪表盘。

四、精诚所至,金石为开

1.全面快捷的掌握数据库全局信息
对诸如数据库数量、数据量、SQL执行数量、事务量等动态及历史信息可快捷方便的随时获取,节省了数据获取和汇总的大量工作时间。
微信图片_20170502143848.jpg

微信图片_20170502143848.jpg

2.灵活高效的多维度展现和分析
从池化角度,根据应用系统、部署单元、操作系统类型、数据库版本等多个维度进行数据库运行监控和运行分析,大幅提升运行监控和问题分析的灵活性和效率
微信图片_20170502143919.jpg

微信图片_20170502143919.jpg

3.重要指标阈值化,直观体现数据库运行情况
提炼出重要运行指标,设定阈值,通过可视化指标的颜色变化能直观体现数据库运行情况,实现在众多数据库指标中一目了然的定位问题。
微信图片_20170502143955.jpg

微信图片_20170502143955.jpg

4.指标历史基线对比,直观体现指标变化趋势
对每各指标都可以进行历史基线数据的对比,直观体现指标变化趋势,提前发现性能隐患,真正做到防范于未然。
微信图片_20170502144020.jpg

微信图片_20170502144020.jpg

5.全量系统指标、等待事件分析
全量系统指标、等待事件分析可对问题分析提供快捷、长周期的数据库支持。应急人员可以站在历史和全局的高度定位和分析问题。
微信图片_20170502144048.png

微信图片_20170502144048.png

6.全量SQL运行情况分析
全量SQL运行数据的可视化分析,高效提供SQL运行的各项数据,不必登陆数据库即可为细粒度定位和精准分析问题提供支持。
微信图片_20170502144113.jpg

微信图片_20170502144113.jpg

五、 小结

基于ELK的企业级ORACLE可视化运行分析平台,探索无所不能的可视化运行分析,只需点击几下即可发现问题,进行即兴分析,从而将零散繁杂的ORACLE性能数据转换为可以付诸行动的应急解决方案。
基于360度全视角的配置数据和海量动态运行数据,充分挖掘数据的价值,实现运维大数据的精细化和智能化管理,建设企业级的IT智能运营中心,我们已经出发在路上。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

6

添加新评论2 条评论

#RichardYang软件开发工程师, 金融公司
2018-11-28 18:45
看起来还是不错的,感谢
#wuwenpin软件开发工程师, 南京
2017-11-10 18:56
不错
Ctrl+Enter 发表

本文隶属于专栏

分布式数据库选型优先顺序调查

向社区表达您的观点,参与即得50金币。