[发明专利]一种基于HDFS的海量小文件处理方法在审
申请号: | 201510724658.1 | 申请日: | 2015-10-29 |
公开(公告)号: | CN105404652A | 公开(公告)日: | 2016-03-16 |
发明(设计)人: | 陈洁;王龙宝;张雪洁;孙泽群;安纪存;马鹏举 | 申请(专利权)人: | 河海大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 朱小兵 |
地址: | 211100 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于HDFS的海量小文件处理方法,通过对小文件过滤、元数据读取、生成文件ID完成对文件的预处理,并开辟内存缓冲区,建立文件上传队列,对文件进行延时存储;在缓冲区将小文件合并为<key,value>结构的Mapfile文件进行存储;将文件元数据存储在分布式数据库Hbase,Hbase持久化在HDFS中;利用Status标志位表示文件状态,以完成缓冲区小文件快速读取,Mapfile碎片合并等操作,从而支持HDFS对小文件的即时增删改。本发明提高了HDFS对小文件的读取效率,使系统支持对小文件的即时更新操作,提升了系统的整体性能。 | ||
搜索关键词: | 一种 基于 hdfs 海量 文件 处理 方法 | ||
【主权项】:
一种基于HDFS的海量小文件处理方法,其特征在于,具体步骤如下:步骤1,根据设定的第一阈值,对服务器接收的上传文件进行筛选过滤;步骤2,获取筛选过滤得到的小文件的文件名、文件长度及文件上传时间戳,通过安全散列算法SHA‑1生成文件存储ID;步骤3,利用Status标志位表示文件存储状态,其中,Status标志位共有0、1、2三种状态,分别表示缓冲区文件、HDFS中已同步文件和已删除文件;步骤4,采用分布式无关系型数据库Hbase存储小文件的元数据,并将Hbase数据持久化在HDFS中;步骤5,根据服务器内存大小,申请一定内存的缓冲区,建立上传队列,将文件缓存至缓冲区,若缓冲区中的文件大小已超过设定的第二阈值或将要上传的小文件大小超过剩余缓冲区,则将缓冲区中的小文件合并并且清空缓冲区;其中,小文件合并为:将缓冲区中的小文件合并成结构为<key,value>键值集合形式的Mapfile,即将每个小文件的文件名作为key值、文件内容字节流作为value值进行拼接;步骤6,将步骤5中合并后的文件通过异步线程延时上传至HDFS。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河海大学,未经河海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510724658.1/,转载请声明来源钻瓜专利网。