应用办公生活信息教育商业
投稿投诉
商业财经
汽车智能
教育国际
房产环球
信息数码
热点科技
生活手机
晨报新闻
办公软件
科学动态
应用生物
体育时事

OPPO大数据诊断平台罗盘正式开源

  一、背景
  OPPO大数据平台目前有20个服务组件,数据量超1EB,离线任务数近百万,实时任务数千,数据开发分析师超千人。这也带来了系统复杂度的问题,一方面是用户经常对自己的任务运行状况摸不着头脑,不管是性能问题,还是参数配置问题,甚至是一些常见的权限报错问题,都需要咨询平台给出具体的解决方案;另一方面是平台面对各类繁杂任务,运维人员经常需要对任务故障定位和排除,由于任务链路长,组件日志多,运维压力大。因此急需对任务进行实时监控和诊断,不仅要能够帮助用户快速定位异常问题,还需给出具体的建议和优化方案,同时还能治理各类僵尸和不合理任务,从而达到降本增效的目的。据调研,目前业界尚无成熟的开源任务诊断平台。为此我们开发了大数据诊断平台,通过诊断平台周优化任务实例数超2万,取得了良好的效果。
  罗盘(Compass)便是基于OPPO内部大数据诊断平台的开源项目,可用于诊断DolphinScheduler、Airflow等调度平台上所运行的大数据任务。我们希望通过罗盘(Compass)回馈开源社区,也希望更多人参与进来,共同解决任务诊断的痛点和难题。
  二、罗盘核心功能
  罗盘目前已支持以下功能和特性:非侵入式,即时诊断,无需修改已有的调度平台,即可体验诊断效果。支持多种主流调度平台,例如DolphinScheduler、Airflow或自研等。支持多版本Spark、Hadoop2。x和3。x任务日志诊断和解析。支持工作流层异常诊断,识别各种失败和基线耗时异常问题。支持引擎层异常诊断,包含数据倾斜、大表扫描、内存浪费等14种异常类型。支持各种日志匹配规则编写和异常阈值调整,可自行根据实际场景优化。
  罗盘已支持诊断类型概览:
  (一)非侵入式,即时诊断
  这里以DolphinScheduler调度平台为例。
  从架构上看,MasterServer主要负责DAG任务切分、任务提交监控并持久化任务实例数据到DB中,WorkerServer主要负责任务的执行和提供日志服务,同时在UI提供了查看远程日志的功能。为了能够获取任务元数据和相关日志进行诊断,一个方式是在MasterServer中监听任务状态事件,另一个方式是订阅MySQLbinlog日志。为了减少对DolphinScheduler的修改,我们采取了第二种方式。
  因此只需要在DolphinScheduler创建一个工作流,并运行,等待运行结束,我们便可在罗盘上看到该任务运行失败等异常。
  罗盘不但实现了对调度平台的解耦,还能在任务运行结束后即时诊断,同时提供了丰富的UI展示服务。如果您不需要我们提供的UI服务,那也可以直接查询罗盘诊断的元数据,展示在需要的地方。
  (二)工作流层异常诊断
  对于工作流层的任务实例,常见问题可分为两类:一类是失败的任务,例如首次失败、最终运行失败和长期失败;另一类是耗时异常的任务,例如基线时间异常、基线耗时异常和运行耗时长。
  诊断失败的任务
  用户经常忽略首次失败,甚至加大重试次数,如果不重视,最终可能会演变为最终失败。罗盘记录和诊断分析了每次失败的原因,不仅可以为用户快速定位问题,还可以在故障回溯时找到根因。对于长期失败的任务,需要通知用户整改或清理,避免造成资源浪费。
  诊断耗时异常的任务
  针对需要SLA保障的任务,罗盘不仅分析了相对于历史正常结束时间,是否提前结束或者晚点结束的任务,即基线时间异常,也分析了相对于历史正常运行时长,是否运行时间过长或者过短的任务,即基线耗时异常。对于运行耗时长的任务,例如超过几个小时以上的大任务,用户和平台都需要分析是任务本身的问题,还是平台的问题。
  (三)Spark引擎层异常诊断
  对于Spark任务,常见的问题可以归为三类:一类是运行时报错,另一类是运行时效率,最后一类是资源使用率问题。
  诊断运行时报错异常
  引擎层常见报错有sql失败、shuffle失败和内存溢出等。此类报错具有明显的日志特征,可根据关键字提取分类,使用已有的知识库,提供给用户具体的解决方案,提升用户体验和效率。
  罗盘提供了sql失败日志分析的规则,通常涉及到操作权限,库表不存在及语法等问题,此类问题可直接指引用户去申请权限。
  shuffle问题会严重影响任务运行甚至导致失败,需要重点关注,如果您目前没有更好的解决方案,也可以参考OPPO开源的高性能远程shuffle服务。
  内存溢出也是经常导致任务失败的一大问题,可提取关键日志诊断分析并建议用户优化内存配置参数。
  除了以上问题,罗盘还提供了40的日志识别规则及建议,也可自行根据实际场景扩展识别规则。
  诊断运行时效率异常
  如果任务执行耗时较长或者突然变慢,用户直接在调度平台无法判断是任务自身问题,还是调度平台问题,亦或是计算引擎的问题。为了排查Spark引擎,一般需要专业分析SparkUI,比较不直观。罗盘对影响引擎执行效率的问题做了全面的检测,覆盖大表扫描,数据倾斜,Task长尾,全局排序,OOM风险,Jobstage耗时异常,HDFS卡顿,推测执行Task过多等问题。
  大表扫描
  罗盘对执行的SQL扫描表行数,直观呈现在表格中。如果用户没有进行分区条件筛选,可能会发生全表扫描,需要提醒用户优化SQL,避免导致内存溢出和影响集群,以提升运行效率。
  数据倾斜
  罗盘检测每个Task的数据处理量并判断数据是否倾斜。当数据倾斜时,可能会导致任务内存溢出,计算资源利用率低,作业执行时间超出预期。
  Task长尾
  罗盘检测所有Task的耗时,并按Stage呈现在柱状图中,方便用户判断是哪个Stage执行耗时异常。形成的原因一般是读取数据过多或读取数据慢。如果是数据倾斜造成读取数据过多,则按数据倾斜方式处理。如果同时HDFS发生卡顿,则会导致读取数据慢,则需要排查集群问题。
  全局排序异常
  用户经常在SQL中使用了排序函数却不加分区限制,会导致全局排序。如果只有一个Task处理数据,需要建议用户重新分区,避免造成资源浪费和影响运行效率。
  OOM预警分析
  罗盘检测执行SQL广播内存占比,当广播数据过大,会导致driver或executor出现OOM风险,需要提醒用户禁用广播或取消强制广播,必要时申请增加内存。
  Jobstage耗时异常
  罗盘计算每个Jobstage实际计算时间和空闲时间,一般是资源不足时出现,需要关注集群资源问题。
  HDFS卡顿
  当出现HDFS卡顿时,会影响Task读取数据速率,从而影响执行效率,需要关注HDFS集群运行状态。
  推测执行Task过多
  推测执行(speculative)是指作业执行单元Task在同一个Stage中的执行时间相比其他Task执行时间长,在其他Executor发起相同Task执行,先完成的Task将Kill另个Task,并取得结果。需要关注集群运行状态。
  诊断资源使用率异常
  对于用户不确定任务CPU和内存使用情况,不知道怎么申请多大规格资源的问题,罗盘直观呈现了CPU和内存使用占比,方便用户优化资源配置参数,以节约资源成本。
  罗盘还提供了GC日志分析功能,可查看执行过程GC是否存在性能问题。
  (四)一键诊断、报告总览等功能
  除了以上功能,我们还提供了一键诊断的功能,为用户提供详细的诊断报告。同时还有报告总览数据和白名单功能等。
  三、罗盘技术架构
  罗盘主要由同步工作流层任务元数据模块、同步YarnSparkApp元数据模块、关联工作流层引擎层App元数据模块、工作流任务异常检测模块,引擎层异常检测模块,Portal展示模块组成。
  整体架构图
  整体架构分3层:第一层为对接外部系统,包括调度器、Yarn、HistoryServer、HDFS等系统,同步元数据、集群状态、运行环境状态、日志等到诊断系统分析;第二层为架构层,包括数据采集、元数据关联模型标准化、异常检测、诊断Portal模块;第三层为基础组件层,包括MySQL、Elasticsearch、Kafka、Redis等组件。
  具体模块流程阶段:
  (1)数据采集阶段:从调度系统将用户、DAG、作业、执行记录等工作流元数据同步至诊断系统;定时同步YarnResourceManager、SparkHistoryServerApp元数据至诊断系统,标志作业运行指标存储路径,为后续数据处理阶段作基础;
  (2)数据关联模型标准化阶段:将分步采集的工作流执行记录、SparkApp、YarnApp、集群运行环境配置等数据通过ApplicationID介质进行关联,此时,工作流层与引擎层元数据已关联完毕,得到数据标准模型(user,dag,task,application,clusterConfig,time);
  (3)工作流层引擎层异常检测阶段:至此已经获得数据标准模型,针对标准模型进一步Workflow异常检测流程,同时平台维护着一套沉淀多年的数据治理知识库,加载知识库到标准模型,通过启发式规则,对标准模型的指标数据、日志同时进行异常挖掘,结合集群状态及运行是环境状态,分析得出工作流层、引擎层异常结果;
  (4)业务视图:存储、分析数据,提供给用户任务概览、工作流层任务诊断、引擎层作业Application诊断,工作流层展示调度器执行任务引发的异常,如任务失败、回环任务、基线偏离任务等问题,计算引擎层展示Spark作业执行引发的耗时、资源使用、运行时问题;
  四、DolphinSchedulerCompass
  DolphinScheduler是一个分布式和可扩展的开源工作流协调平台,具有强大的DAG可视化界面,有着丰富的使用场景,提供Spark、Hive和Flink等30种类型的任务,可靠性高和拓展性强。DolphinScheduler经历了多年的实践和积累,已经成为了一个成熟的开源项目,并有着广泛的用户群体。
  (一)部署体验
  这里我们以DolphinScheduler(2。0。6版本)为例,体验如何快速集成罗盘。如果你还没有部署DolphinScheduler,可参考官网部署指南。如果你已经在使用DolphinScheduler,那么只需要部署罗盘即可。罗盘支持单机和集群部署,如果你想要快速体验罗盘的功能,可使用单机部署模式,罗盘依赖Kafka、Redis、zookeeper和ElasticSearch,需要提前安装,依赖服务完成后即可通过部署脚本进行罗盘部署:代码编译
  修改配置
  一键部署
  (二)使用示例
  首先在DolphinScheduler创建好项目,
  然后创建一个SPARK任务的工作流,
  最后上线该任务和运行。
  打开罗盘WebUI,默认路径为,输入DolphinScheduler的账号密码,罗盘自动同步了DolphinScheduler用户信息。
  最后进入任务运行页面,便可以看到所有的异常任务诊断信息。
  五、罗盘开源规划罗盘主要围绕离线调度任务、计算引擎两个方面对问题进行定位分析,使用丰富的知识库,提供给用户解决优化方案,同时达到降本增效的目的。目前已开源部分主要包含对任务工作流和Spark引擎层的问题诊断,不久将发布针对Flink任务的异常和资源问题诊断。未来将引入更深层次的算法和诊断模型,实现去规则和阈值,使异常诊断更加智能化。
  六、参与贡献
  Github项目名称:cubefscompass
  欢迎参与贡献,如果您有需求或建议可以提issue到Github,我们将及时为您解答。
  关于安第斯智能云
  OPPO安第斯智能云(AndesBrain)是服务个人、家庭与开发者的泛终端智能云,致力于让终端更智能。作为OPPO三大核心技术之一,安第斯智能云提供端云协同的数据存储与智能计算服务,是万物互融的数智大脑。

旅行记皖南行(2),皖南川藏线的路与寺院的兴衰时间:2020年11月27日皖南行第一天早晨7点启程,朋友执意把我送到皖南川藏线入口,用他的话说:让我看着你的背影潇洒的前行。于是锁上店门,两人各骑辆自行车出发了,……国青队员赛后与现场球迷一起庆祝干掉韩国队!我们要去世青赛!直播吧3月10日讯据记者马德兴报道,国青在U20亚洲杯小组出线后,有队员与现场球迷一起庆祝时发出了要去世青赛的豪言。11战平吉尔吉斯斯坦的比赛结束时,当在替补席上的球员们……周末,扬州茱萸湾迎来春游潮春天是扬州最明媚的季节,春风和煦、繁花似锦。今天是周末,不少市民、游客结伴而行,感受扬州的盎然春意,尽享周末美好时光。上午,茱萸湾景区里,前来游玩赏春、看小动物的市民游客熙熙攘……iPhone15Pro将配备索尼LiDAR传感器或有助于延长这段时间以来,外界关于新一代的iPhone15系列的爆料越来越密集,不出意外的话该系列将继续推出包含iPhone15、iPhone15Plus、iPhone15Pro和iPho……再回1时代!2月份CPI同比涨幅回落明显中新网3月9日电(中新财经记者谢艺观)9日,国家统计局公布2月份全国居民消费价格(CPI)数据。受上年同期对比基数较高等因素影响,2月份CPI同比上涨1。0,再回1时代。……WOT丨免费翻牌抽奖140换全局这不比氪金箱子香多了?本文首发于微信公众号坦克零距离,文章转载权限坦克空间站UP为个人专栏文章作者,非官方人员,在头条同步更新文章开箱子上瘾啊?各位车长老爷们大家好啊,我是阿纳贝尔……开宾馆记录怎么才能查到(了解4种查询技巧)开宾馆记录怎么才能查到1、如果起诉以后可以申请法院查询开房记录,其实就是在本地,是否退房都有记录,有时过错方可能会写下或保证书。如家会员卡。宾馆开房备案或者查询有关问题,……怀疑老婆出轨怎么查聊天记录(了解4种查询策略)怀疑老婆出轨怎么查聊天记录1、所以在这里给大家所准备的就是有关于怎么查老婆和别人开过房这方面的相关的情况介绍,老婆出轨怎么查用软件查微信聊天记录。在这里为的要安排,看看他……广州早茶的正确打开方式广州是一个充满活力的城市,其繁华和喧嚣的城市风景吸引着来自世界各地的游客和商人。然而,广州的人们仍然保留了一种悠闲和惬意的生活方式,这种生活方式表现在许多方面,其中最重要的是早……黑客教你定位找人(了解10种查询方式)黑客教你定位找人1、他破解了一款手机聊天程序的位置信息防护系统,聊天室等网上渠道销售,您可以听取与他人进行的所有谈话。只需要您只需要简单3步。我也不知道以为为什么要这样做……棒球夹克火了,可你还不知道穿哪件?我们必须得承认,当一件单品在市场上存在的时间足够久的时候,它总会形成一股潮流,例如作为美式校园文化产物的棒球夹克,以往被视为平常老套的运动服,却在这两年再度翻红,成为流行文化的……政府工作报告六大看点今年政府工作报告,从政策目标到政策实施力度的表述均偏温和5左右的经济增长目标,3的预算赤字率,3。8万亿新增专项债规模以及精准有力的货币政策。稳健的经济目标背后体现了政府对经济……
益普星为自闭症儿童开展青春期教育的方式及教育要点儿童具备较好理解力的情况下,对自闭症儿童开展青春期教育与普通儿童的教育内容大部分是相同的。按照《国际性教育技术指导纲要》对性教育内容的规定,内容涵盖如下主题:(1)人际关系;(……止步16强,亚洲三队仍有巨大收获文羊城晚报全媒体记者苏荇实习生李泽宇澳大利亚队不敌梅西领衔的阿根廷队;日本队的八强梦倒在了与克罗地亚的点球大战中;韩国队则难以招架华丽的巴西桑巴足球。。。。。。亚洲球队终……旅游的春天已到来,这4朵花儿朵朵开?随着环境的逐步改变,旅游板块出现了持续性的热点。也是市场板块中的热点的赛道,在热点的赛道之中,旅游板块成为热点中的热点。在一个交易日之内,旅游板块的涨幅达到了4。12,成……骑士三虎882017,詹姆斯17中8,浓眉诡异退场,湖人新援北京时间2022年12月7日,今日NBA比赛,15胜9负的骑士在主场迎战10胜12负的湖人,骑士首发:加兰米切尔史蒂文斯莫布利阿伦,湖人首发:贝弗利施罗德沃克詹姆斯浓眉。……西班牙今夜大战非洲独苗,葡萄牙火拼瑞士随着巴西、克罗地亚分别淘汰韩国和日本,世界杯八强最后两个席位将于今夜明晨揭晓。北京时间今晚23时,西班牙与摩洛哥的18决赛将在卡塔尔教育城球场打响。西班牙队主教练恩里克赛……矿企做电池左手贪婪,右手焦虑有戏么?撰文刘星志编辑赵晋杰来源盒饭财经(ID:daxiongfan)2019年,发现了锂钴氧化物的美国科学家古德纳夫在获得诺奖后第一时间发出警告:锂资……广东韶关最新五大富豪,4人身价缩水,一对兄弟搭档齐上榜韶关位于广东省北端,地处粤、湘、赣三省交界之处,是广东的北大门,同时也是韶关都市区的核心城市和粤北地区的重要交通枢纽。韶关历史悠久,早在13万年前,便有祖先马坝人在此繁衍生息,……11月最新手机性价比排行榜出炉,这几款登顶榜首的机子你认可吗说到性价比手机,国产厂商肯定是做得最好的,苹果、三星这些海外品牌在国内完全是干不过国产厂商的,毕竟国产厂商这几年在中低端手机市场里可谓是卷出新高度了,很多配置都逐渐下放,有的性……中科院2个生命科学小立方搭乘神舟十五号飞船进入太空中新社北京11月30日电(记者孙自法)记者从中国科学院(中科院)获悉,由该院牵头负责的中国载人航天工程空间应用系统研制、昵称为生命科学小立方的2项科学实验的样品及实验单元空间辐……中国和朝鲜存在哪些差别?听听朝鲜女导游怎么说在朝鲜旅游是非常受煎熬的,因为不可以上网,而且不能独自到处走动。虽然吃住还算可以,但总觉得自己被困在笼子里。很多对朝鲜感到好奇的东西,也不敢偷偷去看。好在我们的导游漂亮可……伶仃岛上多繁华生态故事也盎然来源:【读特】12月28日7时刚过,冉冉升起的一轮红日将笼罩在伶仃洋上的夜幕渐渐拂去。伴随着阵阵悦耳的鸟鸣,内伶仃岛正在晨风和海浪的轻抚中慢慢苏醒。迎着朝阳,广东内……抓鸡实录一次服务器沦陷为肉鸡后的排查过程一、问题现象事情起因是突然发现一台oracle服务器外网流量跑的很高,明显和平常不一样,最高达到了200M左右,这明显是不可能的,因为oracle根本不与外界交互,第一感……
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网