一种基于层次标识路由的网络化关系数据查询方法

文档序号:8223613阅读:740来源:国知局
一种基于层次标识路由的网络化关系数据查询方法
【技术领域】
[0001] 本发明涉及关系数据库、自组织网络环境、命名数据网络领域,具体地说涉及一种 基于层次标识路由的网络化关系数据查询方法。
【背景技术】
[0002] 自组织P2P、无线传感网络WSN、移动互联网等都存在动态分布数据的复杂查询和 获取的困难,因为既要考虑在动态分布环境下查询请求的正确、有效路由问题,还要考虑分 布式结果的动态聚合和可靠返回问题。其中动态路由会影响查询结果的查全率、查准率以 及数据传输效率。此外,查询结果的动态聚合和可靠返回会影响查询结果的可用性、可靠 性。而动态分布环境下查询系统所支持的形式对动态分布数据的个性化获取能力具有重要 影响。为便于更好的开放查询和共享,对动态分布的数据对象进行结构化或半结构化描述, 建立规范的元数据格式及结构化或半结构化数据库具有重要的作用。
[0003] 为了有效获取互联网络环境中的动态分布内容块,CCN/NDN网络(即 Content-Centric Network/Named Data Networking)提出了一种基于层次命名标识获取 动态分布内容块的路由方法(我们称之为层次标识路由)。该路由方法中路由的名字不仅 标识了内容所属层次及名字,更重要的是代替IP地址成为路由处理中的基本单元。其核 心的路由实现机制是根据来自所有数据源的层次化名字在网络中建立形式为(层次化前 缀-接口)的转发树。因此,该路由机制与机器位置(包括IP地址)无关,并能实现用户 请求的异步组播,而且其数据传输更为有效,因为其路由通告会优先选择最快的路径。
[0004] 然而,面对大规模、动态和分布的关系数据或其它结构化数据或半结构化数据,复 杂查询应该适应路由变化和数据移动,并且各种形式的查询应能以统一的方式智能的路 由。而且构造查询语句时系统应不需要提前知道数据的分布和变化情况;为减少数据源的 计算负担和提高查询效率,当查询通过通信网络向相关数据源转发时,该查询应不需要查 看数据的分布特征而进行查询分解,即大规模数据的分布和动态变化情况能够对查询用户 和上层应用透明。当前实现了单播或组播模式的查询方法主要基于地址映射方式,当网络 拓扑或数据的存储地址变化时很难及时获取大规模、分布的数据并且达到较高的数据传输 效率。

【发明内容】

[0005] 针对现有技术存在的上述技术问题,本发明的目的是提供一种当网络拓扑或数据 的存储地址变化时能及时获取大规模、分布的数据并且具有较高的数据传输效率的基于层 次标识路由的网络化关系数据查询方法。
[0006] 为实现上述目的,本发明的一种基于层次标识路由的网络化关系数据查询方法, 包括以下步骤:
[0007] (1)在每个本地关系数据库中识别数据实体之间的包含关系,构造各数据实体的 层次化命名,并将每一个层次化的命名或者前缀通告到命名数据网络(简称为NDN网络) 的各路由节点中的转发信息表(简称为FIB表)中;
[0008] (2)针对每一查询请求根据用户查询的数据类别和其它约束条件参照转发信息表 中的层次化命名将其转换为由层次化路由因子和查询约束因子组成的查询分组(简称为 NDNQL),发送到与客户端连接的一个路由节点中;
[0009] (3)每个路由节点对收到的每个查询分组,使用命名数据网络的路由匹配算法将 查询分组中的层次化路由因子与转发信息表中的每一项进行匹配和转发,在命名数据网络 的请求暂存表(简称为PIT表)中登记从每个接口转发出去的查询分组的信息;
[0010] (4)当查询分组的信息到达相关的数据库节点后,将查询分组的信息转换为支持 本地关系数据库的SQL查询语句,进行本地查询;
[0011] (5)本地查询结果(简称为LRS)加上原查询请求的层次化路由因子封装成数据分 组(简称为NDNRS),然后将其回送至收到对应查询分组的接口上;
[0012] (6)各路由节点对收到的数据分组进行缓存、聚合和原路返回(用户获得结果简 称为RS)。
[0013] 所述查询分组包括以下项目:层次化命名或前缀,查询约束条件,返回形式,其它 条件,安全参数,不重数,其中层次化命名或前缀、返回形式可以多于一个。
[0014] 所述数据分组包括以下项目:层次化命名或前缀,返回结果,安全参数和时间戳, 其中返回结果可以一维、二维数组或链表的形式组织。
[0015] 所述步骤(4)中的SQL查询语句解构为由层次化路由因子和查询约束因子组成的 查询分组。
[0016] 所述步骤(4)中的层次化路由因子与转发信息表中的每一项进行的匹配为最长 前缀匹配,将查询分组经过多次路由转发,送到相关本地数据库中。
[0017] 本发明能够解决由NDN网络连接的所有关系数据库的SQL查询问题,使用时采用 统一格式,使用一个查询分组可以路由到所有相关数据库节点,各数据库节点可以很容易 将该查询分组转换为支持本地查询的SQL语句。
[0018] 本发明一方面可以解决在NDN网络环境下进行关系数据查询时,用户的SQL查询 请求在动态分布网络环境中的高效路由问题及其查询结果的返回和聚合问题;另一方面, 只需要抽取各数据实体的层次化分类和命名信息并通告到路由节点,就可以很容易使各本 地数据库发布共享内容,用户只要根据发布内容的多级分类(或者加上命名信息)即可找 到发布的内容。
[0019] 本发明能在动态分布的网络环境下(如非结构化P2P网络、WSN和其它自组织网 络)提供比现有查询方法如概率查询方法、基于标识-地址映射的查询方法、基于语义-地 址映射的查询方法等更好的查询召回率和精确度。本发明的查询对象不限于动态分布网络 中的关系数据、结构化数据或半结构化数据,还可以是所有能对其进行层次化分类和命名 的数字化对象。
【附图说明】
[0020] 图1为本发明中查询分组的数据结构图;
[0021] 图2为本发明中数据分组的数据结构图;
[0022] 图3为本发明中基于NDN网络的SQL查询系统图;
[0023] 图4为本发明中从关系数据库中抽取层次化命名信息的流程图;
[0024] 图5为本发明中单个概念(表)的SQL查询语句到查询分组的映射实例图;
[0025] 图6为本发明中两个概念(表)的有关连接(join)查询的SQL语句到查询分组 的映射实例图;
[0026] 图7为本发明中两个概念(表)的有关联合(union)查询的SQL语句到查询分组 的映射实例图;
[0027] 图8
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1