zoukankan      html  css  js  c++  java
  • 解决数据库卡、慢,问题多,难管理——老技术的执著

    写在前面

      本篇是赤果果的产品介绍文章,同时也是向使用数据库的战友们表达一下我们是怎样一步一步打磨产品,又有什么样的远景、动力让我们一直走下去....

      八年数据库之路的感悟 这篇文章最后所提到的数据库管理产品,又经过两年的不懈努力,一群带有热情的老技术打磨,现在3.0版本已经成功上线,并有将近500家线下企业客户使用,2500家线上用户,同时也承载着上千技术爱好者的大力支持。

      在这里也向一直支持我们的技术大牛们表达感谢!!

    要做到什么?

      复杂的技术简单化、可视化、自动化、智能化 (都是被无数产品说烂掉的词),解放DBA、解放IT管理人...

    1.0的时代

      我们怎么样全面了解客户的数据库运行情况? 脚本? 命令? 又不全又累人,还不及时....我们做了最初的原形Expert for SQL Server ,他能帮助DBA 快速了解分析系统的运行情况,什么时间点出现过什么问题

      这样我们可以对众多服务器、众多客户的系统进行全面分析。而告别个人经验主义、效果看水平,这样的时代我们认准的事——分析全面

      告别:硬件说软件问题,软件说硬件不行,解决数据库问题就是换高速存储换完还不行再换服务器?

      

      同时我也通过1.0的产品写了一整套数据库优化的文章和案例 SQL SERVER全面优化-------Expert for SQL Server 诊断系列

      帮助技术同行解决各种数据库问题,当然最重要的还是告诉大家如何不轻易下结论,一切问题要——全面分析,找到根源

    2.0时代

      SaaS、云已经成为大火和无法阻挡的趋势,我们也同样开放了线上的诊断平台SQL专家云SaaS平台,免费帮助技术同行处理数据库问题,同时我们在1.0的基础上汲取各种场景、解决问题的思路,以1.0时代积累下的3000家客户运行情况提炼分析,把更多的指标,更多的问题场景融入到产品中,也得到广泛的认可。

      同时在2.0的版本中,我们也在智能化的路上前进了一大步,超过3000家的数据库运行情况,上万个问题场景,也酝酿出了 我们自动化解决问题的功能——智能加速与智能运维!

      

      SaaS平台的推出,让我们接触到了更多的数据库使用者,也接触到各种不同的系统运行情况,也有很多人在SaaS平台上寻求帮助,自己的系统有问题,又对数据库不懂,无法分析。

      在SaaS平台运行的一年半里,我们大约接到几百位求助者分享给我们的运行情况,我们也为他们全面分析并解决了数据库上的棘手问题,当然更多的是小白问题....哈哈哈哈

      小到解决问题,大到针对系统现状如何规划数据层应用,这样的过程是快乐了,技术是纯粹的,没有谈钱只有技术交流...偶尔大侠赏个红包,技术团队的兄弟也出门吃顿好的...哈哈哈

     

    3.0的时代来了

      在1.0和2.0累积下来的经验看,我们依然有很多不足:包括很多生僻的指标让初级使用者依然很难简单诊断,实时性诊断分析滞后,问题预警缺失,智能解决方案较为单一等等....

      对于使用者的需求我们一一整理足一强化、改善、研发....

      大家都喜欢用老外的产品,外来的就是最好的?我们国内产品差什么? 我们就是要打造No.1

      从功能到使用习惯再到智能化...我们一步一步前行,所有的客户建议都是我们最宝贵的财富...

      现在我们的3.0界面是这样的....

      

      首先我们美化了界面,IT的深蓝色调...常规关注指标的布局,使用习惯上页面的调转,目标源头的呈现等等

      并一改2.0重诊断分析问题,而变成简单呈现,简单发现,简单处理为原则。

      页面可能都是花架子,我们来说功能提升!

      

      这样的工具也许就是知道数据库的“昨天、今天、明天”,也就是“过去、现在和将来”

      

      

      下面列举一些简单又使用的功能

      实时知道运行了那、哪些语句、运行的好不好

      在运行状态的记录和分析基础上,我们最强化了就是方便...易用,如下面:

      任何时间点的运行语句很轻易的就可以呈现出来,点击即可了然于心

      图示是语句

      知道任何时间点执行的语句这可能只是最基础的功能,就算我知道了15点31分23秒,运行了个语句非常慢,可这个语句平时也不慢,拿下来一执行几毫秒就完成了。我怎么知道是什么原因造成的?当时怎么就执行那么长时间?

      语句实时查看

      

      分析语句行为,上面的例子有些经验的人都知道是语句执行的时候被阻塞了,而阻塞有两种:硬件的资源等待,或语句资源争用的锁(也是我们常说的锁表/死锁/阻塞)

      那我们就会清楚地知道当时是为什么慢? 卡在硬件还是软件的语句上? 

      语句阻塞等待 实时分析

      

      

      是被哪个语句卡住?为什么卡住?源头是谁?谁执行的从哪来的?什么程序过来的? 接口还是报表?

      语句源头分析 

       

      如果是被硬件资源卡住,是CPU、内存、还是IO? 

      为什么不够用? 当时硬件资源利用率怎么样? 

      硬件与语句关联分析

      

      我们经常被问题到底是硬件不够造成的还是软件的问题所困扰,在这样的情况下我们是否可以同时看到语句运行的好不好已经当时的硬件什么压力?这样是不是一下就解决了呢?

      硬件压力来源分析

      CPU已经使用到 90% 了? 哪些操作导致CPU高的?

      

      

      这些语句是否可以优化?

      

      

      数据指标全面,而且对分析问题的流程和逻辑做到只需 “按步骤点击” ,比如突然一个时间点系统慢了,要帮助管理人员清晰的展示出分析问题的逻辑!

      把DBA解决问题的思路融入产品,让非DBA也可以解决DBA问题,您说这样可以吗?

      

      也许这就是所谓的 “工欲善其事,必先利其器”

      其他的实时告警、趋势分析、深入体检等等功能,由于篇幅原因,简单贴以下图吧。

       趋势分析

      趋势分析可以拉长时间观察发生问题的规律

      趋势分析也可对系统进行预测分析,比如什么时间点该提升内存?

      

      自动化巡检

      

      其他功能

      

    --------------博客地址---------------------------------------------------------------------------------------

    博客地址 http://www.cnblogs.com/double-K/

     

     欢迎转载,请注明出处,谢谢!

    -----------------------------------------------------------------------------------------------------

    再说点什么

      生活中的便利大家也都感觉到了,随便一个不方便,可能就有人做了对应的贡献,我们也一样,我们是一群老DBA跟年轻的从业者无法拼创意、无法比精力、体力。但我们也会用我们优势的经验来贡献我们自己的一份力量。

      新入行的DBA越来越少,能踏实肯学的就少之又少,数据作为企业命脉,各个企业都面临着数据库的问题,也许还有一些时间让我们这帮老鸟发挥一些余热。

      希望大家在看完本篇以后,有兴趣的技术咖可以花些时间多尝试一下,多给我们一些宝贵的建议。

      我们会在这样的技术贡献上越走越远,越来越深入,因为我们要打造的是 No.1

     ----------------------------------------------------------------------------------------------------

    如果您也遇到类似问题或者想加入我们欢迎微信交流

     

    注:此文章为原创,欢迎转载,请在文章页面明显位置给出此文链接!
    若您觉得这篇文章还不错请点击下右下角的推荐,非常感谢!

  • 相关阅读:
    springboot Quartz 定时任务工具类
    java 发邮件 代码
    spring boot 整合 shiro 权限框架
    java 读取xml
    flowable 报错 Waiting for changelog lock....
    微服务 springcloud Alibaba 阿里组件 项目源码
    Java 读取汉字拼音
    syslog how to
    c++ 字符串总结
    aptget 总结
  • 原文地址:https://www.cnblogs.com/double-K/p/9315985.html
Copyright © 2011-2022 走看看