一种基于贝叶斯网络定位HDFS关键低效函数的性能分析方法技术

技术编号:23604503 阅读:36 留言:0更新日期:2020-03-28 05:38
本发明专利技术涉及一种基于贝叶斯网络定位HDFS关键低效函数的性能分析方法,被广泛采用的大数据应用平台如Hadoop和Spark,都把HDFS(Hadoop Distributed File System)作为默认的分布式文件系统。而分布式文件系统在对上层应用提供支持时,会因自身某些函数的低效,导致整个大数据应用执行效率较低,检测这些关键的低效函数有助于大数据应用开发人员改善大数据应用性能。本发明专利技术提出的针对HDFS的关键低效函数分析方法,通过对系统插桩得到的函数运行时间以及I/O数据量信息,进行统计学分析,计算这些函数的低效概率,再根据低效概率建立函数的贝叶斯网络找出HDFS源码中值得优化的关键低效函数。

A performance analysis method for locating key inefficient functions of HDFS based on Bayesian network

【技术实现步骤摘要】
一种基于贝叶斯网络定位HDFS关键低效函数的性能分析方法
本专利技术涉及一种基于贝叶斯网络定位HDFS(分布式文件系统)关键低效函数的性能分析方法,用于大数据分布式文件系统的性能分析,资源监控,性能瓶颈诊断和可视化。
技术介绍
在过去的几十年当中,互联网技术飞速的发展,计算机、手机等终端的普及,更是使得互联网走进了千家万户,与此带来的就是数据成指数级的增长,这背后便需要大数据和分布式计算的支持。分析大数据存储系统,可从四个层面来分析:裸设备、本地文件系统、分布式文件系统、大数据应用。其中,分布式文件系统是其中重要的一环。分布式计算需要有分布式文件系统的支持,所以,分析和优化分布式文件系统的性能,具有非常重要的研究和应用价值。如今被广泛采用的大数据应用平台,Hadoop和Spark,都把HDFS(HadoopDistributedFileSystem)作为默认的分布式文件系统。所以HDFS的性能优化,具有非常重要的研究和应用价值。以往的研究,大部分都把HDFS作为黑盒来分析,这样粗粒度的分析没办法发现性能问题的根本原因,所以据此给出的优化本文档来自技高网...

【技术保护点】
1.一种基于贝叶斯网络定位HDFS关键低效函数的性能分析方法,其特征在于,包括以下步骤:/n步骤(1):HDFS源码插桩,在分布式文件系统HDFS的DFSInputStream,BlockReaderLocalLegacy,BlockReaderRemote2,BlockReaderLocal,BlockReaderRemote,BlockSender,BlockReceiver,FSNameSystem,DFSClient,DistributedFileSystem类下面的特定目标函数中进行函数级插桩,得到HDFS被插桩函数的函数入口和出口的时间戳、函数读写的数据量作为插桩得到的数据;/n步...

【技术特征摘要】
1.一种基于贝叶斯网络定位HDFS关键低效函数的性能分析方法,其特征在于,包括以下步骤:
步骤(1):HDFS源码插桩,在分布式文件系统HDFS的DFSInputStream,BlockReaderLocalLegacy,BlockReaderRemote2,BlockReaderLocal,BlockReaderRemote,BlockSender,BlockReceiver,FSNameSystem,DFSClient,DistributedFileSystem类下面的特定目标函数中进行函数级插桩,得到HDFS被插桩函数的函数入口和出口的时间戳、函数读写的数据量作为插桩得到的数据;
步骤(2):利用改进的HTrace对插桩得到的数据进行采样,得到每个插桩函数次数相等的数据;
步骤(3):对所有插桩函数进行低效概率的计算,得到每一个插桩函数的低效概率;
步骤(4):步骤(1)至步骤(3)作为一次过程,重复50-100次,将一次作为一条数据,用50-100条数据构建函数低效概率数据集;
步骤(5):基于低效函数数据集,采用结构学习的方法构建贝叶斯网络,结构学习的方法为贝叶斯评分策略和爬山搜索法;
步骤(6)在结构学习方法的基础上进行参数学习,得到局部的条件概率分布函数,参数学习的具体算法为贝叶斯方法;
步骤(7):遍历每个插桩函数,对每个插桩函数进行敏感性分析,得到关键低效函数。


2.根据权利要求1所述的基于贝叶斯网络定位HDFS关键低效函数的性能分析方法,其特征在于:所述步骤(1)中的HDFS源码插桩,为扩展HTrace采集的Trace信息,获取HDFS中名称节点、数据节点、客户端节点之间所有的通信Trace信息,同时采集插桩函数的参数信息,插桩函数见插桩目标函数为:DFSInputStream类的构造函数,openInfo,fetchBlockAt,readWithStrategy,actualGetFromOneDataNode,BlockReaderLocalLegacy/BlockReaderRemote2/BlockReaderLocal/BlockReaderRemote类的构造函数,readFully,readAll,BlockSender类的sendPackage(transferTo),BlockSender#sendPacket(readLocal),BlockSender\#sendPacket(writeToSocket),doSendBlock,BlockReceiver类的flushOrSync,receivePacket,receiveBlock,FSNameSystem类的getBlockLocations,renameTo,delete,getFileInfo,DFSClient/DistributedFileSystem类的getBlockLocations,rename,delete,getFileBlockLocations,create。


3.根据权利要求1所述的基于贝叶斯网络定位HDFS关键低效函数的性能分析方法,其特征在于:所述步骤(2)中,采用改进的HTrace(Cloudera开源出来的一个分布式系统跟踪框架)进行采样,采样方法为令牌桶算法,参数设置为令牌桶大小为1000,时间间隔为180ms。


4.根据权利要求1所述的基于贝叶斯网络定位HDFS关键低效函数的性能分析方法,其特征在于:所述步骤(3)中,在HDFS的性能检测当中,所述的低效函数概率计算公式如下:



其中,plow(f)为函数f对应的低效概率;Flow(f)为函数f的低效执行的次数,其具体...

【专利技术属性】
技术研发人员:杨海龙刘一陈鹤李云春
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1