[发明专利]一种实现HDFS文件占用率自动监控的方法及系统有效
申请号: | 201910255763.3 | 申请日: | 2019-04-01 |
公开(公告)号: | CN109992573B | 公开(公告)日: | 2022-07-19 |
发明(设计)人: | 李娟;史飞悦 | 申请(专利权)人: | 焦点科技股份有限公司 |
主分类号: | G06F16/18 | 分类号: | G06F16/18;G06F16/174;G06F16/22;G06F16/25 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 陈建和 |
地址: | 210032 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 hdfs 文件 占用率 自动 监控 方法 系统 | ||
1.一种实现HDFS文件占用率自动监控的方法,其特征在于,包括如下步骤:
步骤一: JAVA中动态配置HDFS的namenodes,包含Active NameNode和 StandbyNameNode:两台NameNode形成互备,一台处于 Active 状态,为主NameNode,另外一台处于Standby 状态,为备NameNode,配置HDFS路径包括原始日志存放路径/user/root/ODS/、日志处理后的仓库表存放路径/user/hive/warehouse/、配置oralce数据库用户名及密码;通过调用java API接口递归循环获取各路径下的文件名和文件大小,将获取到的文件名和文件大小存入list表中;在数据库中建立相应的中间表,并且每次将list表中的数据插入到中间表之前,将ODS和DW层的中间表清空,所述ODS和DW层的中间表最多只存放近7天数据,而/user/root/ODS/、/user/hive/warehouse/路径的总文件大小存放历史至今 的数据;
步骤二:获取的数据插入到数据库之后,编写ETL,通过正则判断区分不规则路径,计算原始日志每个日期分区下文件大小;计算各数据库用户的文件大小、数据库用户下各表的文件大小、数据库用户下各表下每个分区的文件大小;
步骤三:采用报表软件展示每日HDFS总目录,将文件大小、新增、同比、环比、明细通过图表展现出来;
步骤四:通过kettle配置调度,所述步骤一中产生的JAR包发布后,编写Shell文件调度JAR包,在执行shell文件之前先在日志表里写一条开始执行的记录,执行结束后将执行结果写入日志表;最后调度在oracle里已经编写的存储过程并写相关日志。
2.如权利要求1所述的一种实现HDFS文件占用率自动监控的方法,其特征在于:所述步骤一中,配置oralce数据库用户名及密码,连接oralce数据库,在oralce数据库中新建新表TABLE1、TABLE2、TABLE3,将HDFS总目录及文件总大小、ODS目录及文件总大小、DW目录及文件总大小存储到TABLE1,将获取到的ODS下底层目录地址及文件大小明细存储到数据库中的新表TABLE2中,将获取到的DW下底层目录地址及文件大小明细存储到数据库中的新表TABLE3中。
3.如权利要求2所述的一种实现HDFS文件占用率自动监控的方法,其特征在于:所述步骤一中,所述TABLE2及TABLE3只保留最近7天的数据,所述TABLE1记录的是HDFS总目录及文件总大小、ODS目录及文件总大小、DW目录及文件总大小,记录程序运行至今的数据;所述步骤二中,编写ETL正则匹配hive仓库表的某一分区,具体的匹配路径为regexp_like(path,'/user/hive/warehouse/table_name/pt_cal_number =\d.+')0,将TABLE2及TABLE3向上汇总一层。
4.如权利要求3所述的一种实现HDFS文件占用率自动监控的方法,其特征在于:所述步骤三中,所述报表软件使用QlikView前端,所述图表包括趋势图、柱状图和透视表;将每天定位到的占用空间的TOP10及数据量同比增加或者减少超过15%的文件路径在报表中进行标记。
5.一种根据权利要求1-4之一所述方法运行的实现HDFS文件占用率自动监控的系统,其特征在于:包括依次相连的元数据模块、ETL模块、数据推送及展示模块;
所述元数据模块包括依次相连的基础配置模块、数据获取模块和数据插入模块;所述基础配置模块用于动态配置HDFS的namenodes使其在切换时不会对程序产生影响,配置HDFS路径包括原始日志存放路径/user/root/ODS/,日志处理后的仓库表存放路径/user/hive/warehouse/,配置oralce数据库用户名及密码,数据获取模块通过调用java API接口递归循环获取各路径下的文件名和文件大小,将获取到的文件名和文件大小存入list表中;所述数据插入模块用于在数据库中建立相应的中间表,并且每次将list表中的数据插入到中间表之前,需要将ODS和DW层的中间表清空,所述ODS和DW层的中间表中最多只存放最近7天的数据,而/user/root/ODS/、/user/hive/warehouse/路径的总文件大小存放历史至今 的数据;
所述ETL模块,计算HDFS目录下文件大小,ODS目录下原始日志文件大小,原始日志每个日期文件下文件大小,数据仓库DW目录下各数据库用户的文件大小,数据库用户下各表的文件大小,数据库用户下各表下每个分区的文件大小;
所述数据推送及展示模块,将ETL模块获取的各指标通过趋势图、柱状图、透视表图表方式展现出来,将每天定位到的占用空间的TOP10及数据量同比增加或者减少超过15%的文件路径在报表中进行标记并发送给维护人员。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于焦点科技股份有限公司,未经焦点科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910255763.3/1.html,转载请声明来源钻瓜专利网。