[发明专利]一种基于数据服务的跨域电梯数据组合视图自动生成方法有效

专利信息
申请号: 201710244081.3 申请日: 2017-04-14
公开(公告)号: CN107239483B 公开(公告)日: 2020-06-09
发明(设计)人: 张元鸣;叶成龙;肖刚;陆佳炜;高飞;黄浪游;沈志鹏;蒋建波 申请(专利权)人: 浙江工业大学
主分类号: G06F16/25 分类号: G06F16/25;G06F16/28
代理公司: 杭州天正专利事务所有限公司 33201 代理人: 王兵;黄美娟
地址: 310014 浙江省杭*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要: 一种基于数据服务的跨域电梯数据组合视图自动生成方法,首先,将跨域电梯数据集封装为原子数据服务,并基于REST技术将原子数据服务封装注册并统一管理;其次,根据原子数据服务的内在的依赖关系构建跨域电梯数据的数据服务依赖图;再次,在服务依赖图的基础上,根据用户数据需求自动组合原子数据服务生成复合数据服务;最后,执行复合数据服务生成数据组合视图,以表格的形式返回给用户。本发明为跨域电梯数据集成提供了一种有效的数据组合视图自动生成方法,提高了其自动化程度。
搜索关键词: 一种 基于 数据 服务 电梯 组合 视图 自动 生成 方法
【主权项】:
一种基于数据服务的跨域电梯数据组合视图自动生成方法,包括以下步骤:(1)将跨域电梯数据集封装为原子数据服务;(1.1)构建跨域电梯数据依赖图;根据电梯数据属性间的函数依赖和连接依赖,建立跨域电梯数据集的数据依赖图DDG;定义1数据依赖图,数据依赖图表示为一个扩展的有向图DDG=(U,E),其中U={a1,a2,…,an}是单个属性的集合;E={e1,e2,…,em}是属性间依赖关系的集合,如ei=X→aj表示属性aj完全依赖于属性集X,建立属性间数据依赖图的步骤为:输入:基本表及其属性,函数依赖集合,连接依赖集合输出:数据依赖图步骤a1:确定每个基本表的所有候选键;步骤a2:根据函数依赖,确定每个基本表内属性之间的依赖关系;步骤a3:根据连接依赖,确定所有基本表间的依赖关系;步骤a4:建立属性间的数据依赖图,其节点为属性,有向边为依赖关系;(1.2)基于数据依赖图将跨域电梯数据集划分原子数据服务;基于所构建的数据依赖图,将各类跨域电梯数据集划分为原子数据服务ADS,其定义如下:定义2原子数据服务,将可独立访问且语义不可再分的数据服务称为原子数据服务,表示为一个八元组ADS=<Id,Name,Fields,Description,Input,Output,Operations,Publisher>,其中Id是ADS的唯一标识;Name是ADS的名称;Fields是ADS的属性列表;Description是ADS的语义描述;Input是ADS的输入,有一个或多个;Output是ADS的输出,是一个关系;Operations是对ADS可执行的操作,包括查询、修改和删除;Publisher是ADS的发布者;基于步骤(1.1)中生成的数据依赖图将跨域电梯数据集划分为原子数据服务的算法如下:输入:数据依赖图DDG输出:原子数据服务集合步骤b1:从DDG的任意结点开始访问,设初始访问结点为v;步骤b2:访问结点v,做已访问标记,按照广度优先策略访问;步骤b3:查找结点v的任一邻接结点w,判断结点w是否存在,若不存在,转步骤b8;若邻接结点w存在且未访问,访问结点w,做已访问标记;步骤b4:判断结点v的前驱结点是否存在且未访问,若否,则确定v结点为前驱结点,w结点为后继结点,以v结点为输入,以w结点为输出,封装为ADS,执行步骤b5;若存在且未访问过,转步骤b7;步骤b5:查找结点v的下一个邻接结点wn,若存在且未访问,访问该结点,并将该结点标记为已访问,然后以v结点为输入,该邻接结点为输出,封装为ADS,转步骤b5;若不存在,执行步骤b6;步骤b6:确定v结点先访问到的邻接结点w1,后访问到的邻接结点wn,分别以w1结点,wn结点为新的初始访问结点v,并使w1结点的邻接结点先于wn的邻接结点被访问,转步骤b3;步骤b7:判断v结点的前驱结点是否唯一,若唯一,则访问前驱结点,做已访问标记,并以前驱结点为输入,以v结点为输出,封装为ADS,转步骤b5;若不唯一,则访问所有的前驱结点,做已访问标记,首先把v结点所有的前驱结点分别封装为一个ADS,再把v结点和它所有的前驱结点封装为一个ADS,转步骤b5;步骤b8:输出原子数据服务集合;(2)基于REST技术对原子数据服务进行封装;跨域电梯数据类型丰富,包括结构化与非结构化数据,将这些数据集都封装成REST风格的数据服务。REST服务需要包含3个层面:①每一种资源通过唯一的URI来访问;②客户端通过HTTP协议的GET,POST,PUT,DELETE四个操作方式对服务器资源进行创建、读取、更新和删除操作;③服务器与客户端之间传递着资源的某种表述形式;将各类电梯数据集封装成基于REST的原子数据服务,注册并统一管理,用唯一的URI进行统一访问;(3)构建跨域电梯数据服务依赖图;由于原子数据服务是通过封装数据集的属性得到的,因此原有属性间的数据依赖关系直接转换为数据服务之间的依赖关系;根据属性间的依赖得到数据服务之间的以下三种依赖关系:定义3(顺序依赖)对于两个原子数据服务ADSi与ADSj,若ADSi的属性值确定,ADSj上的属性值也相应确定,即ADSi→ADSj,则称ADSi与ADSj之间为顺序依赖,ADSi称为前驱服务,ADSj为后继服务;定义4(合并依赖)对于原子数据服务ADS1、ADS2、…、ADSm以及ADSj,若{ADS1∪ADS2∪ADS3∪…∪ADSm}→ADSj,则称为合并依赖;定义5(并发依赖)对于原子数据服务ADSi以及ADS1、ADS2、…、ADSm,若ADSi→{ADS1∧ADS2∧ADS3∧…∧ADSm},则称为并发依赖;根据数据服务的依赖关系,构建出跨域电梯数据服务依赖图,简称服务依赖图DSDG,定义如下:定义6服务依赖图,将原子数据服务间的依赖关系描述为一个扩展的有向图,表示为一个二元组DSDG=(D,E),其中D={ADS1,ADS2,…,ADSn}是原子数据服务集合;E={e1,e2,…em}是原子数据服务间依赖关系集合,如ei=A→ADSj表示原子数据服务ADSj依赖于原子数据服务集合A,(4)根据用户数据需求将原子数据服务组合为复合数据服务;(4.1)用户数据需求描述;数据服务组合过程是在用户数据需求驱动下进行的,用数据需求DR表示用户所需要操作的数据对象,其定义如下:定义7数据需求,用户所需要的属性列表、约束条件以及执行的操作称为数据需求,表示为一个三元组DR=<Requires,Conditions,Operations>,其中Requires表示数据需求的属性列表;Conditions={<Field,Value>|Field表示属性名,Value表示属性值>}表示数据需求的约束条件,如果值为Null,则表示没有约束条件;Operations={get,delete,update}表示需要执行的操作;(4.2)基于数据服务依赖图生成复合数据服务;将用户数据需求作为输入,在数据服务依赖图上自动搜索相关的原子数据服务,并将原子数据服务组合的结果称为复合数据服务CDS,其定义如下:定义8复合数据服务,由若干原子数据服务组成且可被独立访问的数据服务称为复合数据服务,它表示为一个八元组CDS=<Id,Name,Sub‑DSDG,Description,Input,Output,Operations,Operations>,其中Id是CDS的唯一标识;Name是CDS的名称;Sub‑DSG是DSDG的子图;Description是ADS的语义描述;Input是CDS的输入,有一个或多个;Output是CDS的输出,是一个关系;Operations是对ADS可执行的操作;Publisher是ADS的发布者;基于数据服务依赖图组合生成复合数据服务的算法如下:输入:数据服务依赖图DSDG,数据需求DR输出:复合数据服务CDS步骤c1:从原子数据服务库中检索出包含DR中Requires属性列表和Conditions属性列表的所有的ADS;步骤c2:任选其中一个ADS作为初始访问结点v,做已访问标记,按照深度优先策略访问;步骤c3:查找DSDG中v结点的第一个邻接结点w,判断结点w是否存在,若不存在,转步骤c5;若邻接结点w存在且未访问,访问结点w,做已访问标记;步骤c4:判断v结点,w结点之间是否包含DR属性列表中所有的ADS,若包含,则把v结点和w结点之间单链条所有访问结点封装为一个CDS,结束算法;若不包含,确定w结点为新的初始访问结点v,转步骤c3;步骤c5:确定v结点排在w结点后的下一个邻接结点为初始访问结点v,转步骤c3;该算法可能会产生多个组合方案,将包括ADS数量最少以及包括的属性个数最少的通路作为最终输出,得到最优的数据服务组合结果,该结果即是需要的CDS;此外,该算法假设DSDG的所有节点是联通的,如果不是联通的,则分别对DSDG的所有子图循环使用该算法,并输出每个子图的CDS;(5)执行复合数据服务自动生成数据组合视图;复合数据服务CDS包含了与数据需求相关的原子数据服务及其依赖关系,其执行的结果称为数据组合视图,其定义如下:定义9数据组合视图,执行复合数据服务后生成的结果称为数据组合视图,其形式上是一张二维表格;以查询操作为例,执行CDS生成数据组合视图的步骤如下:步骤d1:分别执行CDS的所有ADS,并根据Conditions条件对ADS的执行结果进行筛选;步骤d2:对具有服务依赖关系的ADS的结果执行连接操作;步骤d3:根据DR中的Requires属性列表对连接的结果执行投影操作;步骤d4:若存在多个CDS,则反复执行步骤d1和步骤d4,得到多个满足DR的数据子集;步骤d5:对得到的多个数据子集执行并操作;执行复合数据服务所涉及的操作包括选择、连接、并和投影。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201710244081.3/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top