微信号:ApacheKylin

介绍:Apache Kylin 公众号,介绍Kylin的各种功能,特性以及相关的新闻,活动等.更多信息,请访问Kylin网站:http://kylin.io 相关技术问题,请订阅Apache Kylin邮件列表

使用Kyligence Robot诊断Apache Kylin系统故障

2017-09-13 18:00 李栋

大数据系统大都架构复杂、组件耦合度高、使用场景多样,如果遇到系统故障,可能需要分析很多节点和服务的日志才能找到问题根源,Apache Kylin也不例外。本文将讨论如何快速定位故障根源,并找到解决办法。


众所周知,Apache Kylin 提供对PB规模数据集进行高速OLAP分析的能力,查询性能可以达到秒级甚至亚秒级,是Hadoop大数据生态圈的重要一员。但是,大数据系统大都架构复杂、组件耦合度高、使用场景多样,如果遇到系统故障,可能需要分析很多节点和服务的日志才能找到问题根源,Apache Kylin 也不例外。如何快速定位故障根源,并找到解决办法,就是本文讨论的话题。



关于系统故障

Apache Kylin中常见的故障一般是查询失败、构建Cube失败、界面操作报错、服务启动失败等等,这些异常往往给业务人员和运维人员带来或多或少的影响。想要解决问题,可能需要查看Kylin日志、Map Reduce日志、HBase日志等等。以构建Cube为例,任务的调度以及字典生成发生在Kylin节点,需要查看Kylin日志,而预计算过程是一个Map Reduce任务,需要查看Map Reduce的运行日志。

 

运维人员需要掌握所有日志的存放位置(如Kylin、Map Reduce等),并了解日志记录和异常报错的表述涵义,才能高效地定位问题和解决问题,这并不是一个容易的事情——而Kyligence Robot (KyBot) 擅长解决这一问题。



使用KyBot定位异常

Kyligence Robot (KyBot, https://kybot.io) 是为Apache Kylin及其商业版KAP提供在线诊断、优化及服务的平台。通过分析Apache Kylin的日志等信息,为用户提供可视化仪表盘、系统优化、故障排查、知识库等自助式服务。关于KyBot的使用可以参考文章[1]。

 

登录进入KyBot后,通过左侧菜单进入“故障”-“异常”仪表盘,即可看到整个系统的异常统计指标,如图1所示。


图 1 异常仪表盘


在图1中,A区域代表一个时间段内系统出现的异常个数,并按照元数据、构建、查询等模块进行了统计。右侧B区域代表每日的异常统计,帮助用户快速定位突变和变化趋势,定位不稳定的时间段。C区域列出了所有的异常明细,包含异常的发生时间、模块和报错信息,通过单击右侧按钮,还能快速查看异常所在的日志片段,如下图所示。


图 2 异常日志



查询失败

如果遇到的异常是查询失败,还可以在查询仪表盘快速找到该查询并进行分析。单击左侧导航栏的“查询”打开查询仪表盘,页面下方查询列表处可以看到所有的失败查询,结合搜索功能,可以快速定位到失败的查询。

 

单击右侧按钮进入查询详情页,如图3所示,中间的“查询历史”区域代表这条SQL语句的多次执行历史,可快速看出这条SQL是否有执行成功的历史,为问题定位提供线索。

图 3 查询详情页


单击右上角的日志按钮,可以查看这次查询的日志,这些都是从原始日志文件进行切分和过滤得到的。当查询并发度较高,原始日志中各个线程交错,肉眼无法分析,通过此处可以事半功倍。查询详情页还可以辅助性能调优,详情参考文章[2]。


图 4 查看查询日志



构建失败

如果遇到的异常是构建Cube失败,还可以在任务仪表盘快速找到该任务并进行分析。单击左侧“任务”进入任务仪表盘,页面下方会列出所有任务历史,根据状态等信息可以快速找到该任务,并单击右侧按钮进入任务详情页。


图 5任务详情页


如上图所示,左侧区域是整个构建任务生命周期的时间线,可以很明显地看到红色的出错步骤。这一步是一个Map Reduce任务,单击红色泳道,再单击右侧的“MR”链接,可以跳转到Map Reduce任务详情页。


图 6 Map Reduce任务详情


在Map Reduce详情页有4个选项卡,其中“Log”选项卡包含了这个Map Reduce任务的日志,“Configuration”选项卡包含任务的配置项。基本上所有需要的信息都在这里,想要快速分析问题就不难了。任务详情页还可以辅助性能调优,详情参考文章[3]。



知识库

除了构建和查询,还有很多异常涉及环境、部署、第三方集成等方面,有的异常和大数据平台的架构或部署方案有关,这些问题都可以到知识库中检索。

 

知识库包含了Apache Kylin核心成员总结和撰写的知识问答、案例及最佳实践,用户可以通过关键词搜索,获取相应的问答及文章。在左侧导航菜单选择“帮助中心”-“知识库”即可搜索,因为所有的文章都是英文撰写,所以推荐使用英文关键词或异常报错信息进行检索,如下图所示。


图 7 知识库检索页


图 8 知识库检索结果



总结


以Apache Kylin为代表的大数据技术给用户带来了诸多便利,也给开发者带来了很多挑战。合理地使用工具是开发者提高工作效率最有效的方式。Kyligence Robot作为专业、智能的诊断平台,是解决Apache Kylin问题的不二之选。如果你也有类似困扰,不妨参考本文一试。



参考文章

[1] KyBot快速入门指南 

[2] Apache Kylin 深入Cube和查询优化

[3] 使用KyBot寻找Apache Kylin离线构建瓶颈


更多信息请点击阅读原文


 "Apache and Apache Kylin are either registered trademarks or trademarks of The Apache Software Foundation in the US and/or other countries. No endorsement by The Apache Software Foundation is implied by the use of these marks."


您可能还会想看


Apache Kylin查询性能优化

【技术帖】使用KyBot优化Apache Kylin存储

Apache Kylin v2.1.0正式发布

【案例分享,附PPT】Druid与Apache Kylin在美团的选型与实践

【干货,附PPT】:Apache Kylin v2.x最新特性分享

Apache Kylin优化利器KyBot: Rowkey一键优化

【案例分享】唯品会海量实时OLAP分析技术升级之路

【技术帖】Kylin v2.0 Spark Cubing优化改进

 
apachekylin 更多文章 Apache Kylin查询性能优化
猜您喜欢 “中国大数据行业规范化运营联盟”宣布成立 几个功能强大的分辨率测试网站 应届生应聘iOS岗位的面试建议 互联网公司年会上的老板与女优 浅谈"丢失iPhone"的安全问题