[发明专利]基于MapReduce并行计算模型的XML文件处理方法和装置在审
| 申请号: | 201510009477.0 | 申请日: | 2015-01-08 |
| 公开(公告)号: | CN104598562A | 公开(公告)日: | 2015-05-06 |
| 发明(设计)人: | 徐正礼;周正德;魏金雷 | 申请(专利权)人: | 浪潮软件股份有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F9/46 |
| 代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 李世喆 |
| 地址: | 250100 山东*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 mapreduce 并行 计算 模型 xml 文件 处理 方法 装置 | ||
技术领域
本发明涉及计算机软件应用技术领域,特别涉及一种基于MapReduce并行计算模型的XML文件处理方法和装置。
背景技术
可扩展标记语言(extensible markup language,XML),是一种用于标记电子文件使该标记的电子文件具有结构性的标记语言。其越来越多地活跃在数据交换和存储方向,而用XML表示的结构化或半结构化数据得到越来越普遍的应用。可以通过XML文件存储数据,以使用户进行数据交换。其中,MapReduce是一种编程模型,可以用于对小规模的XML文件进行读写。例如,10MB、100MB等大小的XML文件。
目前,利用MapReduce对小规模的XML文件进行读写的过程是:MapReduce直接读取XML文件,为XML文件分配一个处理设备,利用这个处理设备对XML文件进行Map函数和Reduce函数的处理,进而将该XML文件写入到本地磁盘中。
由于当XML文件的规模较大时,例如,大于1TB的XML文件,因此,MapReduce对较大规模的XML文件进行读写过程,影响了处理设备对XML文件的处理效率。
发明内容
本发明提供一种基于MapReduce并行计算模型分布式处理XML数据的方法,以解决现有技术方案影响了处理设备对XML文件的处理效率的问题。
本发明提供了一种基于MapReduce并行计算模型的XML文件处理方法,设置split值和配置信息,包括:
获取待处理的目标XML文件;
根据预先设置的split值,获取所述目标XML文件的各个预分切位置;
根据预先设置的配置信息,对获取的各个预分切位置进行校正;
根据校正后的各个预切分位置,对所述目标XML文件分切为两个以上的数据块;
将各个数据块发送给MapReduce并行计算模型,以使MapReduce并行计算模型分别为各个数据块分配处理设备,以对各个数据块进行写入。
所述根据预先设置的配置信息,对获取的各个预分切位置进行校正,包括:
根据所述配置信息,分别从各个预分切位置处开始,向所述目标XML文件的起始位置进行查找,直到查找到所述配置信息时结束;
根据分别查找的所述配置信息计算各个预分切位置的偏移量;
根据各个预分切位置的偏移量,对所述目标XML文件分切为一个以上的数据块。
在所述将各个数据块发送给MapReduce并行计算模型之前,进一步包括:
将各个数据块的格式转换为适合MapReduce并行计算模型处理的格式。
所述基于MapReduce并行计算模型的XML文件处理方法进一步包括:预先设置封装信息,所述封装信息包括:xmlInputFormat.head、xmlInputFormat.tail;
在所述将各个数据块发送给MapReduce并行计算模型之前,进一步包括:根据预先设置的封装信息对各个数据块进行封装。
本发明还提供基于MapReduce并行计算模型的XML文件处理装置,包括:
存储单元,用于存储split值和配置信息;
获取单元,用于获取待处理的目标XML文件;
预分切单元,用于根据预先设置的split值,获取所述目标XML文件的各个预分切位置;
校正单元,用于根据预先设置的配置信息,对获取的各个预分切位置进行校正;
根据预先设置的配置信息,对获取的各个预分切位置进行校正包括:根据所述配置信息,分别从各个预分切位置处开始,向所述目标XML文件的起始位置进行查找,直到查找到所述配置信息时结束;根据分别查找的所述配置信息计算各个预分切位置的偏移量;然后,根据各个预分切位置的偏移量,通过所述分切单元对所述目标XML文件分切为一个以上的数据块。
分切单元,用于根据校正后的各个预切分位置,对所述目标XML文件分切为两个以上的数据块;
发送单元,用于将各个数据块发送给MapReduce并行计算模型;
分配单元,用于通过MapReduce并行计算模型分别为各个数据块分配处理设备,以对各个数据块进行写入。
优选地,进一步包括:
转换单元,将各个数据块的格式转换为适合MapReduce并行计算模型处理的格式。
优选地,进一步包括:预设单元,用于预先设置封装信息,
所述封装信息包括:xmlInputFormat.head、xmlInputFormat.tail;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮软件股份有限公司;,未经浪潮软件股份有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510009477.0/2.html,转载请声明来源钻瓜专利网。





