查看原文
其他

这可能是全球最好的Oracle数据库健康检查平台

郑隐 数据和云 2019-12-14


编辑手记:每一个优秀的DBA都值得拥有Bethune,一款最佳的数据库运维助手。


如果把运维工作从紧急,重要两个象限去进行划分,运维工程师通常关注,或者说价值体现在紧急而重要的事情上。


通常出现这些故障,数据库都无法为业务提供正常的数据存取服务。而企业的一切生产活动都是围绕数据展开。因此核心数据库出现这些问题,对于企业来说损失都是巨大的。


5年来,云和恩墨为客户恢复了无数套正常情况下已经宣布死亡的数据库。因此,在行业或者客户的眼里,我们的形象可能是这样的:


一个面对灾难无所畏惧的消防人员,通过我们专业的技能持续奋战,挽救客户的数据于水火。为此我们感到骄傲,是的,我们是。但今天我想告诉大家:我们不只是这样。


熟悉云和恩墨的朋友都知道我们公司聚集了一批行业内的专家,特别是Oracle领域。在我们对客户的服务过程中又积累了大量的案例和经验。 因此,我们希望通过一个平台来汇集专家们的经验,结合数据分析和挖掘为IT系统提供智能化的分析服务。这就是我们推出的bethune,一个强大的数据库健康分析平台。



1

白求恩的使用流程

  • 在我们的产品网站上下载一个抓取这个抓取脚本采集数据库的配置数据和运行状态数据,以及历史数据,并自动打成一个压缩包。这个数据包通常在几兆到十几兆左右。

  • 在下载页面看到我们采集脚本的具体用法,我们的采集采集程序用perl 语言进行编写。由于perl 是oracle 软件自带的语言,并且文本处理能力强大。所以我们选择了perl,并且将我们的采集脚本开源。用户下载了采集脚本后可以直接在编辑器里面浏览我们的源代码。

  • 由于采集环境的不同,你可能在采集的时候需要按照我们的帮助文档去做一些设置调整。采集完成后的数据会自动达成一个zip包。你仍然可以解压之后查看bethune采集的原始数据。以便对于数据安全非常谨慎的dba确认bethune没有抓取系统里面的业务数据。

  • 数据包成功上传后,新系统需要填写一些简单的描述信息。老系统会自动关联数包系统。

  • 然后根据你的体检目的和关注项选择分析模板,生成一份系统诊断报告,或者根据历史数据,生成一份对比报告。


这是bethune的控制台页面,你使用该平台的状况在上面直观的可以看到。


2

你最佳的运维助手

对没有使用过该平台的用户,我们做了友好的tour一步步的引导你使用,当然你也可以通过帮助页面查看使用方式



有经验的dba都知道,一个全面的数据库巡检需要检查大量的数据。我们需要将大量的,多维度的数据进入到bethune分析平台后,做了数据清洗,结构化和聚合分析。 最终呈现出来的不仅仅是数据,而是符合工程师逻辑的,可视化的信息。


我们对信息进行了分类,你可以通过报告顶部的两层导航进行查看。数字提示你我们检查到的风险数


这是我们的建议。我们对建议进行了分类和分级




3

白求恩的创新视图

比如在topsql 选择上。在一个awr里面我们可以快速的识别按照执行时间或者资源消耗排序的 topsql,但Oracle数据库默认每一个小时就会产生一个awr snapshot,一个snapshot 里面至少包含几十条topsql。在一周甚至一个月的awr snapshot 里面。到底哪些sql值得你真正关注?这个不仅仅需要数据库的专业知识,还需要做一定的统计分析。

Bethune topsql 智能推荐引擎,基于采集到的数据样本,从dbtime整体相关性和峰值影响两个维度去给你推荐了值得你关注的10条topsql。我们在sql summary 表格里面展示了该top sql 在采集周期里面的性能汇总数据。点击sql_id,还能看到该sql 的详细资源消耗,获取行数的趋势。执行计划的细节。执行计划里面涉及到对象的统计信息。一应俱全。丰富而关键的信息,节省了运维工程师大量的发现问题和诊断问题的时间。



这是topsql的总览,我们通过算法算出值得你关注的10条topsql之后,在awr的性能数据里面去做了历史趋势绘图。注意这个地方(n条汇总),这个意味着我们不光按照sql_id,对于没用绑定变量的sql的资源消耗,我们也是做了汇总的。


被我们双算法标注的sql,非常值得你关注。如果你不知道这些维度是什么意思。鼠标放在标题旁边小图标i上就有说明


这些都是我们统计分析的维度,在awr指标的基础上,做了延展。也许只告诉你sql,对于想探究sql的dba来说是不够的。


4

白求恩实现SQL优化



点击sql_id,还能看到该sql 的详细资源消耗,获取行数的趋势。执行计划的细节。



点击对象,对象涉及的表信息,列信息,索引信息,分区信息,一应俱全


有这样完整的信息,节省了运维工程师大量的发现问题和诊断问题的时间。


光有这些信息,我觉得还不够。如果你不会优化sql,我尝试告诉这条sql到底哪儿有问题


看看我们给出的建议,即便你不点开看sql的细节,我们的建议会告诉你sql到底哪儿出了问题。

SQL(g6c1zr1u7ugav) 在采样期平均单次执行逻辑读为 34459.13, 其最新执行计划涉及 2 个对象,平均单个对象的逻辑读较大。采样期内,该 SQL 共有 2 个执行计划,其中逻辑读最小的执行计划即最新的执行计划 3148001572(Buffer Gets: 27.12)。--------这个是我们另外一条sql的建议

我们会去给你找这条sql的性能是否好过,如果好过,好的执行计划是什么,方便你去进行调优


bethune 智能性能分析,像专家一样去帮你分析topsql


这是我们监听日志的一个图,在IT系统巡检的时候,日志数据也是非常重要的。通常一个繁忙的业务系统日志数据量是庞大的。


5

数据安全分析

bethune 也没有忽略oracle系统运行过程中产生的重要日志:告警日志和监听日志。在监听日志的展示上,我们使用了矩形树图来展示应用连接IP分布的情况。并且直接输入一个IP段,就可以绘制出整个IP在采集周期里面每小时的链接趋势。帮助工程师发现链接异常的情况。


我们还做了孤立ip分析,对于企业网络环境,IP通常都在同一个子网里面,如果有不在同一个网段的ip,我们给出了你提示


并且我们还给你提示出你的数据库出现的链接风暴


6

日志分析与性能报告

在容灾与备份里面,我们会去给你检查备份的可恢复性。所有的文件,归档是否正常备份

在告警日志的巡检部分,除了展示数据库实例和asm实例和报错次数的趋势。我们还对告警日志里面的报错信息进行了分类展示,并且记录并展示了每一次报错的详细信息以及上下文环境,以及对应的trace文件提供下载。




ckpt not complete 虽然不是个报错,但我们知道他的危害比报错还严重,整个数据库的dml都会被hang住。当你发现这个问题的时候,你就要去查看是否日志产生量过大,还是日志组设置不合理。后续我们会计算你的ckpt not complete 在采集周期内,影响了多长时间。



我知道老dba都依赖awr,在采样周期里面每个节点的top3 awr我们都采集出来了


这是我们报告的总览图,注意右下角的健康风险雷达,这也是bethune经过几千套数据库的巡检逐渐完善的一个东西。这个雷达图还用两次巡检的比较。


同一个系统不同时期的数据可以用来生成对比报告,对比报告也是bethune突破单次巡检给dba带来的数据积累价值


这是我们对比报告,注意awr里面的时间序列在对比报告里面被我们重绘成一个周。

对于系统核心的等待事件响应时间的变化,如何比较并进行展示已经超越了数据库专业知识的范畴。在对比报告中,我们引入了统计学上专业的箱线图,对响应时间的数据分布进行描述。让你轻松对数据库核心等待事件响应时间有个整体的把握。




表空间和文件系统空间的总体和存量对比一应俱全


用户是否有变化,权限是否有变化,都能比较出来


连接ip的变化...这个功能作为甲方dba非常的实用



7

自主选择使用模块

每一个问题,你都可以“漫游”看看其他库是否存在同样的问题,你也可以进行备注,或者觉得bethune太傻,直接在这个系统里面屏蔽掉这个建议,还有更多的细节我不在这儿复述了。如果你是个老司机,你在用bethune的时候,就知道我们花了多少心思在信息的展示上。


比如你的一个schema,用profile来设置了密码过期策略。从你上传之后的那天开始,bethune就记得你每个用户密码过期的时间随着时间的推移可能你都忘记了。你也没有设置这个监控在还有5天就要过期的时候我们会给你推送用户密码过期提醒。


8

量身定做的技术推荐

我们还会根据你数据库遇到的问题,去给你推荐一些有价值的文章。比如你的报错,配置,某个隐含参数,异常的等待事件等。


在这个信息过剩的时代,能帮你把需要学习的知识和遇到的问题对应起来。真是太事半功倍。


最后,所有的问题都可以点击在线咨询按钮,或者提交反馈和我们取得联系


白求恩,做你最佳的运维助手!

扫描下方二维码或点击原文链接,立即体验!


在使用白求恩的过程中,如果您有任何疑问,都可以加入Bethune智能巡检平台交流群,详情请加微信白求恩小助手(sunx5126)

如何加入"云和恩墨大讲堂"微信群

搜索 盖国强(Eygle)微信号:eyygle,或者扫描下面二维码,备注:云和恩墨大讲堂,即可入群。每周与千人共享免费技术分享,与讲师在线讨论。


近期文章

MySQL Group Replication 学习笔记

利用硬链接和truncate降低drop table对线上环境的影响

以12c Identity类型示范自我探索式学习方法

从执行计划洞察ORACLE优化器的“小聪明”

Oracle安全比特币勒索问题揭秘和防范

针对Sharding DB的单点故障,合理构建HA架构

资源下载

关注本微信(OraNews)回复关键字获取

CodeSet,《Oracle性能优化与诊断案例精选》代码;

2016OTC,第六届Oracle技术嘉年华PPT;

2016DTCC, 2016数据库大会PPT;

DBALife,"DBA的一天"精品海报大图;

12cArch,“Oracle 12c体系结构”精品海报;

DBA01,《Oracle DBA手记》第一本下载;

YunHe,“云和恩墨大讲堂”案例文档下载;

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存