[发明专利]一种利用简单路径特征优化树状结构数据的方法及系统有效
申请号: | 201710178692.2 | 申请日: | 2017-03-23 |
公开(公告)号: | CN107016071B | 公开(公告)日: | 2019-06-18 |
发明(设计)人: | 陈世敏;王智义 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F16/81 | 分类号: | G06F16/81;G06F16/835;G06F17/22 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;梁挥 |
地址: | 100080 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 利用 简单 路径 特征 优化 树状 结构 数据 方法 系统 | ||
1.一种利用简单路径特征优化树状结构数据的方法,其特征在于,包括:
步骤1,设置简单路径,其中所述简单路径为在树状结构数据定义的语法树中,从根节点到叶子节点最多只存在一个多值的域的路径;
步骤2,通过存储所述简单路径中叶子节点的相关结构信息,从树状结构数据定义的语法树中获取完整的路径结构信息;
步骤3,在使用列式结构数据进行查询的过程中,使用简单路径对列式结构数据到行式结构数据的组装过程进行优化:简化行式结构数据中的嵌套关系,仅通过叶子节点表示从根节点到叶子节点的路径而忽略路径中所有的非叶子节点。
2.如权利要求1所述的利用简单路径特征优化的树状结构数据处理方法,其特征在于,利用半结构化数据定义中叶子节点的相关信息从语法树中获得整个路径的结构信息。
3.如权利要求1所述的利用简单路径特征优化的树状结构数据处理方法,其特征在于,对列式结构树状数据组装为行式结构数据之前,对待组装的每一条列式结构的路径按照叶子节点的ID进行相应的排序,之后,依次按照顺序从每个列式数据读取器中读取中每条记录所有的列数据项,依次将读出的数值与相关的结构信息写入到组装的结果中。
4.如权利要求1所述的利用简单路径特征优化树状结构数据的方法,其特征在于,对于语法树中的非简单路径,依然按照树状结构数据典型的使用多层嵌套结构表示其结构和数据的方法进行存储。
5.如权利要求3所述的利用简单路径特征优化的树状结构数据处理方法,其特征在于,包括:
1)当语法树中从根节点到叶子节点的路径上没有多值节点的域:仅需要存储叶子节点的ID与相应域的数值;
2)当语法树中从根节点到叶子节点的路径上只有一个多值节点的域:按照以下两种结构进行存储:
a)将每个重复域的数值都作为一个独立的值存储在扁平的行式结构数据中,所以,数据中会有多项有相同ID的值,其个数决定于重复域中其值的个数;
b)将重复的域作为一个整体存储在扁平的行式结构数据中,其中数据中仅有一个重复域的ID表示其在数据中多次出现的值,且所述重复域是由一个数组形式的结构表示多个数值;
3)语法树从根节点到叶子节点的路径上有多个多值节点的域:使用默认的树状数据存储结构,其中在扁平结构的数据中存储的ID为路径上嵌套层次为1的ID,其对应的偏移量指向存储完整嵌套结构的位置。
6.一种利用简单路径特征优化的树状结构数据处理系统,其特征在于,包括:
简单路径模块,用于设置简单路径,其中所述简单路径为在树状结构数据定义的语法树中,从根节点到叶子节点最多只存在一个多值的域的路径;
获取数据模块,用于通过存储所述简单路径中叶子节点的相关结构信息,从树状结构数据定义的语法树中获取完整的路径结构信息;
组装模块,用于在使用列式结构数据进行查询的过程中,使用简单路径对列式结构数据到行式结构数据的组装过程进行优化:简化行式结构数据中的嵌套关系,仅通过叶子节点表示从根节点到叶子节点的路径而忽略路径中所有的非叶子节点。
7.如权利要求6所述的利用简单路径特征优化树状结构数据的系统,其特征在于,利用半结构化数据定义中叶子节点的相关信息从语法树中获得整个路径的结构信息。
8.如权利要求6所述的利用简单路径特征优化树状结构数据的系统,其特征在于,对列式结构树状数据组装为行式结构数据之前,对待组装的每一条列式结构的路径按照叶子节点的ID进行相应的排序,之后,依次按照顺序从每个列式数据读取器中读取中每条记录所有的列数据项,依次将读出的数值与相关的结构信息写入到组装的结果中。
9.如权利要求6所述的利用简单路径特征优化树状结构数据的系统,其特征在于,对于语法树中的非简单路径,依然按照树状结构数据典型的使用多层嵌套结构表示其结构和数据的方法进行存储。
10.如权利要求8所述的利用简单路径特征优化树状结构数据的系统,其特征在于,包括:
1)当语法树中从根节点到叶子节点的路径上没有多值节点的域:仅需要存储叶子节点的ID与相应域的数值;
2)当语法树中从根节点到叶子节点的路径上只有一个多值节点的域:按照以下两种结构进行存储:
a)将每个重复域的数值都作为一个独立的值存储在扁平的行式结构数据中,所以,数据中会有多项有相同ID的值,其个数决定于重复域中其值的个数;
b)将重复的域作为一个整体存储在扁平的行式结构数据中,其中数据中仅有一个重复域的ID表示其在数据中多次出现的值,且所述重复域是由一个数组形式的结构表示多个数值;
3)语法树从根节点到叶子节点的路径上有多个多值的节点:使用默认的树状数据存储结构,其中在扁平结构的数据中存储的ID为路径上嵌套层次为1的ID,其对应的偏移量指向存储完整嵌套结构的位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710178692.2/1.html,转载请声明来源钻瓜专利网。