[发明专利]基于MapReduce的XML数据查询方法和系统有效
申请号: | 201510391100.6 | 申请日: | 2015-07-03 |
公开(公告)号: | CN105005606B | 公开(公告)日: | 2018-06-29 |
发明(设计)人: | 李东;邓泽航;李祖立 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 罗观祥 |
地址: | 510006 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于MapReduce的XML数据查询方法和系统,步骤:服务器接收客户端的XPath查询请求;查看待查询XML文档是否已进行区间编码;对未经过区间编码的待查询XML文档进行区间编码;服务器查看待查询XML文档是否已进行层次编码;对未经过层次编码的待查询XML文档进行层次编码;将查询请求中的查询语句进行解析;生成查询计划树,对结构连接结果进行估算;建立代价模型,对查询计划树的执行代价估算;找出最优查询计划树;求出的最优查询计划树,解析出MapReduce作业的输入文件;执行MapReduce查询作业;将MapReduce作业输出文件构造成XML数据结果集作为查询结果;将XML数据查询结果返回给客户端。该方法具有执行效率较高、加速比高、查询处理性能好和可伸缩性的优点。 | ||
搜索关键词: | 查询 查询计划树 层次编码 区间编码 解析 查询结果返回 服务器接收 查询处理 查询结果 查询请求 查询语句 代价估算 结构连接 可伸缩性 输出文件 输入文件 结果集 客户端 服务器 估算 客户 | ||
【主权项】:
1.一种基于MapReduce的XML数据查询方法,其特征在于,步骤如下:步骤101、服务器接收客户端的XPath查询请求;步骤102、服务器接收到XPath查询请求后,查看待查询XML文档是否已进行区间编码;若否,则进入步骤103;若是,则进入步骤104;步骤103、对待查询XML文档进行区间编码,然后进入步骤104;步骤104、服务器查看待查询XML文档是否已进行层次编码;若否,则进入步骤105;若是,则进入步骤106;步骤105、对待查询XML文档进行层次编码,然后进入步骤106;步骤106、服务器将XPath查询请求中的查询语句发送至Hadoop集群进行解析,提取出查询语句中出现的标签名、连接符号和谓词结构,并且作为解析结果保存到解析类中;步骤107、逐步增加查询语句出现的连接结构生成查询计划树,对查询计划树的结构连接结果进行估算;步骤108、对MapReduce作业建立代价模型,根据代价模型对查询计划树的执行代价估算;步骤109、根据查询计划树的执行代价估算值,找出最优查询计划树;步骤110、根据步骤109求出的最优查询计划树,解析出MapReduce作业的输入文件,然后启动MapReduce查询作业;步骤111、执行MapReduce查询作业;步骤112、将MapReduce作业输出文件构造成XML数据结果集作为查询结果,并且返回给服务器;步骤113、服务器根据XML数据结果集将XML数据查询结果返回给客户端;所述步骤108中,对查询计划树的执行代价估算时考虑三个因素:I/O开销、CPU的开销和网络传输的开销;步骤108中,对MapReduce作业建立代价模型过程中,包括对Map过程中的两种操作分别建立代价模型和对Shuffle和Reduce阶段建立代价模型;Map过程中的两种操作分别为不进行连接操作的Map阶段和进行连接操作的Map阶段;不进行连接操作的Map阶段建立的代价模型为:RC=NUM(Ii)*SIZE*Crh;PC=NUM(Ii)*Cm;WC=NUM(Ii)*Cwl*SIZE;其中RC为从HDFS上读取输入文件的代价,PC为数据集进行分区输出的CPU代价,WC为Map数据输出到本地文件的代价;其中NUM(Ii)表示的是数据集Ii的数目,SIZE为一个节点编码的数据大小,Cm为读取本地磁盘一个数据的代价,Cwl为写到本地磁盘上一个数据的代价;Crh为读取HDFS上一个数据的代价;路径Path(i,i)在不进行连接操作的Map阶段的代价CMi为:进行连接操作的Map阶段的建立的代价模型为:RAC=NUM(Ii‑1)*SIZE*Crh;PPC=R(Ii‑1,Ii)*Cm;WPC=R(Ii‑1,Ii)*Cwl*2*SIZE;其中RAC为在HDFS读取祖先节点数据集的代价,PPC对连接结果数据集进行分区输出的CPU代价,WPC为结果数据集输出节点到本地磁盘的代价;NUM(Ii‑1)表示的是数据集Ii‑1的数目;R(Ii‑1,Ii)表示数据集Ii‑1和数据集Ii连接结果数据集;路径Path(j‑1,j)在进行连接操作的Map阶段的代价CM(j‑1,j)为:Path(x1,x2)为指x1节点到x2节点组成的路径表达式,当x1=x2时,代表Path(x1,x2)为一个节点名称,当x1
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510391100.6/,转载请声明来源钻瓜专利网。
- 上一篇:一种专辑分类方法和装置
- 下一篇:连拍照片的处理方法