CN109766322A - 一种数据共享交换方法及系统 - Google Patents
一种数据共享交换方法及系统 Download PDFInfo
- Publication number
- CN109766322A CN109766322A CN201811648611.1A CN201811648611A CN109766322A CN 109766322 A CN109766322 A CN 109766322A CN 201811648611 A CN201811648611 A CN 201811648611A CN 109766322 A CN109766322 A CN 109766322A
- Authority
- CN
- China
- Prior art keywords
- data
- user
- share exchange
- directory
- providing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据共享交换方法,包括:根据数据目录对数据进行管理以及根据预设规则进行数据共享交换。所述根据预设规则进行数据共享交换,包括:根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换,根据数据更新情况进行数据共享交换,根据用户调用的接口进行数据共享交换。本发明还公开了一种数据共享交换系统,包括数据目录管理模块及数据共享交换服务模块。所述数据共享交换服务模块包括订阅共享交换单元、通报共享交换单元、网关共享交换单元。采用本发明,可统一管理分散的数据库,文件库或消息接口,为不同用户提供个性化的数据共享交换服务,同时提高数据传输效率,让业务部门一定程度参与数据共享交换。
Description
技术领域
本发明涉及一种数据管理技术,尤其涉及一种数据共享交换方法及系统
背景技术
当前高校在信息化基础设施、信息系统、教育技术、用户服务方面取得了长足进展。由于高校在教学、科研等方面的需要,大量数据需要在校内外进行共享、交互,比如数据共享平台中的文件、数据需要定期更新,使用分布式计算机系统进行科学计算时需要快速读写大量实验数据,在校务系统上管理大量学生信息等。在数据共享、交换方面,较多高校选择使用Oracle公司的数据集成工具(Oracle Data Integrator,简称ODI)。ODI使用ELT理念(Extract,Load,Transform,即提取,加载,转换)进行数据共享交换及管理,满足了高校业务系统数据库交换及管理的基本要求。
但是,ODI也给高校使用者带来不便:数据库,文件库或消息接口分散,缺乏统一管理所有数据库,文件库或消息接口的系统,在进行数据共享交换时效率低,不便于用户使用;数据服务比较简单,没有根据用户需要提供个性化数据服务;传输过程中采取单一作业模式,在进行多文件传输时,数据排队现象突出,拖慢了数据传输效率;数据库,文件库或消息接口的更新与维护由数据库管理员负责,产生数据的业务部门很少参与,增加了数据管理员的工作量。
故此,如何改进现有的数据共享交换方法及系统,统一管理分散的数据库,文件库或消息接口,为不同用户提供个性化的数据共享交换服务,同时提高数据传输效率,让业务部门一定程度参与数据共享交换,是目前需要解决的问题。
发明内容
本发明所要解决的技术问题在于,提供一种数据共享交换方法及系统,统一管理分散的数据库,文件库或消息接口,为不同用户提供个性化的数据共享交换服务,同时提高数据传输效率,让业务部门一定程度参与数据共享交换。
为了解决上述技术问题,本发明提供一种数据共享交换方法,其特征在于,包括:
根据数据目录对数据进行管理,所述数据包括数据库数据,数据文件及消息;
根据预设规则进行数据共享交换,包括:根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换,根据数据更新情况进行数据共享交换,根据用户调用的接口进行数据共享交换。
作为上述方案的改进,所述根据数据目录对数据进行管理,包括:
建立新增的所述数据库数据或消息的描述信息,根据预设规则对所述数据的描述信息进行分类、注册,并在数据目录中发布;
建立新增的所述数据文件的描述信息及链接地址,根据预设规则对所述数据文件的描述信息及链接地址进行分类、注册,并导入到数据目录的相应分类位置;
根据预设规则查询数据目录中的数据;
根据预设规则对数据目录的结构、条目信息及运行进行维护、监控;
根据预设规则设定数据目录中各条目的保密属性,以及不同用户的数据访问权限。
作为上述方案的改进,所述根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换的步骤,包括:
当数据提供方审核通过用户请求,将数据提供方提供的数据传输给用户,或者将所述数据提供方提供的数据上传到服务器中供用户下载,首次传输后,在每个预设数据更新周期内,读取数据提供方及用户的作业日志,当数据提供方及用户均释放有关数据时,根据预设规则读取更新数据并进行异构数据转换,然后传输给用户,或将服务器中供用户下载的数据更新为转换后的数据;
当数据提供方没有审核通过用户请求,终止数据共享交换程序。
作为上述方案的改进,所述根据数据更新情况与用户进行数据共享交换的步骤,包括:
在数据提供方更新数据后,根据数据提供方调用的接口向用户传输所述更新数据,或对服务器中供用户下载的数据进行更新。
作为上述方案的改进,所述根据用户调用的接口进行数据共享交换的步骤,包括:
当数据提供方经审核授权用户调用接口,允许用户自行调用接口查询数据目录中的数据,并将查询结果传输给用户;
如果数据提供方经审核不授权用户调用接口,不允许用户自行调用接口查询数据目录中的数据。
相应地,本发明还公开了一种数据共享交换系统,其特征在于,所述数据共享交换系统用于实现上述数据共享交换方法,所述数据共享交换系统包括:
所述数据管理模块,用于根据数据目录对数据进行管理,所述数据包括数据库数据,数据文件或消息;
所述数据共享交换模块,用于根据预设规则进行数据共享交换,包括:订阅共享交换单元,用于根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换,通报共享交换单元,用于根据数据更新情况进行数据共享交换,网关共享交换单元,用于根据用户调用的接口进行数据共享交换。
作为上述方案的改进,所述数据管理模块包括:
发布单元,用于建立新增的所述数据库数据或消息的描述信息,根据预设规则对所述数据的描述信息进行分类、注册,并在数据目录中发布;
数据文件定位单元,用于建立新增数据文件的描述信息及链接地址,根据预设规则对所述数据文件的描述信息及链接地址进行分类、注册,并导入到数据目录的相应分类位置;
查询单元,用于根据预设规则查询数据目录中的数据;
维护监控单元,用于根据预设规则对数据目录的结构、条目信息及运行进行维护、监控;
密级权限设置单元,用于根据预设规则设定数据目录中各条目的保密属性,以及设定不同用户的数据访问权限。
作为上述方案的改进,所述订阅交换单元包括:
订阅子单元,用于当数据提供方审核通过用户请求,将数据提供方提供的数据传输给用户,或者将所述数据提供方提供的数据上传到服务器中供用户下载,首次传输后,在每个预设数据更新周期内,读取数据提供方及用户的作业日志,当数据提供方及用户均释放有关数据时,根据预设规则读取更新数据并进行异构数据转换,然后传输给用户,或将服务器中供用户下载的数据更新为转换后的数据;
终止子单元,用于当数据提供方没有审核通过用户请求,终止数据共享交换程序。
作为上述方案的改进,所述通报交换模块包括:
通报更新子单元,用于在数据提供方更新数据后,根据数据提供方调用的接口向用户传输所述更新数据,或对服务器中供用户下载的数据进行更新。
作为上述方案的改进,所述网关交换模块单元包括:
调用接口子单元,用于当数据提供方经审核授权用户调用接口,允许用户自行调用接口查询数据目录中的数据,并将查询结果传输给用户;
禁止接口子单元,用于如果数据提供方经审核不授权用户调用接口,不允许用户自行调用接口查询数据目录中的数据。
实施本发明,具有如下有益效果:
本发明数据共享交换方法及系统,统一管理分散的数据库,为不同用户提供个性化的数据共享交换服务,同时提高数据传输效率,让业务部门一定程度参与数据共享交换。
第一,对数据库中所有新增的数据建立描述信息,包括数据名称、内容描述、制作人、制作时间等,然后根据数据目录的分类规则对描述信息进行分类,再对描述信息进行注册,最后导入到数据目录中,使得所有新增数据都有描述信息在数据目录的特定位置,用户通过访问数据目录中的描述信息,就可以对多个数据库,文件库或消息接口的数据,数据文件或消息的基本信息进行查询,而无需进行穷尽查询才能找到需要数据,数据文件或消息,极大地便利了用户与数据提供方进行数据共享交换的效率。本发明公开的数据共享交换系统包含数据管理模块,能实现上述方法。
第二,本发明提供了三种数据共享交换方法,满足不同用户的需要,本发明公开的数据共享交换系统包含数据共享交换模块,能实现上述三种方法。具体来说,第一种方法根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换,针对订阅性数据用户的数据共享交换方法。这类用户不需要一直关注数据更新。用户提交订阅请求,并经数据提供方审核后,在特定周期,如一天内,推送一次数据或更新共享平台的相关数据。本发明公开的数据共享交换系统的数据共享交换模块包含订阅共享交换单元,能实现上述方法。第二种方法根据数据更新情况进行数据共享交换,针对需要实时了解数据最新动态的用户,数据更新后,数据提供方调用接口向用户传输数据或更新共享平台的相关数据。本发明公开的数据共享交换系统的数据共享交换模块包含通报共享交换单元,能实现上述方法。第三种方法根据用户调用的接口进行数据共享交换,针对需对数据库进行操作的用户,该方法提供了基本数据库操作接口,数据提供方授权用户调用接口后,用户通过调用接口对数据库进行查询操作。本发明公开的数据共享交换系统的数据共享交换模块包含网关共享交换单元,能实现上述方法。
第三,在第一种数据共享交换方法,根据用户请求审核结果及预设数据更新周期进行数据共享交换时,可能出现数据排队传输或数据资源死锁等情况,该方法对传输数据进行异构转换及采用分布式框架、多线程传输数据及数据调度框架技术,提高了数据传输效率。
第四,涉及到审核用户请求,以及提交、维护数据等事项,均由数据提供方负责,数据共享交换系统的管理人仅对数据目录进行管理维护,这极大地减轻了系统管理人员的负担,让各业务部门都直接参与到数据共享交换过程中。
附图说明
图1是本发明数据共享交换方法的总体流程图;
图2是本发明数据共享交换方法的根据数据目录对数据进行管理的流程图;
图3是本发明数据共享交换方法的根据预设规则进行数据共享交换的流程图;
图4是本发明数据共享交换方法的根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换的流程图;
图5是本发明数据共享交换方法的根据用户调用的接口进行数据共享交换的流程图;
图6是本发明数据共享交换系统的总体功能结构图;
图7是本发明数据共享交换系统的数据管理模块的功能结构图;
图8是本发明数据共享交换系统的数据共享交换模块的功能结构图;
图9是本发明数据共享交换系统的订阅交换单元的功能结构图;
图10是本发明数据共享交换系统的网关共享交换单元的功能结构图;
标识说明:
100、数据管理模块;110发布单元;120、网络资源定位单元;130、查询单元;140、维护监控单元;150、密级权限设置单元;200、数据共享交换模块;210、订阅共享交换单元;211、订阅子单元;212终止子单元;220、通报共享交换单元;221、通报更新子单元;230、网关共享交换单元;231、调用接口子单元;232、禁止接口子单元。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。仅此声明,本发明在文中出现或即将出现的上、下、左、右、前、后、内、外等方位用词,仅以本发明的附图为基准,其并不是对本发明的具体限定。
一、数据共享交换方法
图1是本发明数据共享交换方法的总体流程图,包括:
S100、根据数据目录对数据进行管理,所述数据包括数据库数据,数据文件及消息;
S200、根据预设规则进行数据共享交换。
需要说明的是,数据管理是数据共享交换的基础。由于数据共享交换往往涉及到不同业务部门,数据量很大,尤其是,不同业务部门可能采用不同类型的数据库,文件库或消息接口,存在兼容性问题,如果不对数据进行统一管理,数据共享交换将因为不同数据库,文件库或消息接口的兼容性问题而无法进行。另外,对于用户来说,如果没有一个将分属多个数据库,文件库或消息接口的数据进行统一管理的平台,需要对所有数据库,文件库或消息接口进行逐一查询,效率极低,因此,必须对分属多个数据库,文件库或消息接口的所有数据进行统一管理,数据共享交换才具有可行性和高效率。
下面分别对数据管理及数据共享交换分别进行说明。
(一)数据管理
根据数据目录对数据进行管理(S100),如图2所示,具体步骤包括:
S110、建立新增的所述数据库数据的描述信息,根据预设规则对所述数据的描述信息进行分类、注册,并在数据目录中发布;
S120、建立新增的所述数据文件的描述信息及链接地址,根据预设规则对所述数据文件的描述信息及链接地址进行分类、注册,并导入到数据目录的相应分类位置;
S130、根据预设规则查询数据目录中的数据;
S140、根据预设规则对数据目录的结构、条目信息及运行进行维护、监控;
S150、根据预设规则设定数据目录中各条目的保密属性,以及不同用户的数据访问权限。
需要说明的是,上述五个步骤没有先后顺序,是可以同步进行的数据管理流程。数据目录是数据管理的的基本框架,由于不同数据库,文件库或消息接口的兼容性问题,将不同数据库,文件库或消息接口的数据进行整合,技术上难以实现。如果组织一个庞大的平台把不同业务部门的数据都进行汇总,则让数据管理涉及面更为复杂,管理效率极低,且对数据管理员来说是一件工作量极大的事情。因此,数据管理以不同业务部门各自负责其部门数据为基础,做到“谁负责,谁管理”,在此基础上,建立一个将所有业务部门的数据的索引目录,即只是进行索引汇总,而不是数据汇总。
根据数据目录进行数据管理,重要的一步是发布数据目录条目。对所有新增的数据库数据或消息建立起描述信息作为查询索引,然后根据数据目录的分类规则进行分类,并对描述信息进行注册,导入到数据目录中,供用户查阅。描述信息包括数据的名称、内容简述、制作人、制作时间等基本内容,便于用户了解数据内容。另外描述信息还应包括访问权限、访问方式、访问记录等访问内容,便于管理员管理、监控数据,但描述信息的访问内容一般至少有部分保密内容是不对一般用户开放的。至于描述数据目录的分类,则是根据业务部门、数据内容等一个或组合条件进行设计。
对于文件库中的数据文件,需要在描述信息中增加一个链接地址以对数据文件进行定位,然后再进行分类、注册,并导入到数据目录的相应分类位置。
在建立目录条目后,管理员、用户等经常需要查询数据目录中的数据,查询时,可按照按照分类、单项条件和组合条件三种方式进行。除此之外,还可以按主题词联想查询、快速定位、下载公开目录、查询资源在各个分类中的目录位置、下载结果列表。
数据管理十分重要的一项内容是对数据目录的结构、条目信息及运行进行维护、监控。维护包括数据目录结构树和目录条目的信息进行维护,比如当数据的分类体系发生变化时,要调整目录结构,又比如当数据需要修改、删除、添加和更新时,要在后台实现维护数据内容。除此以外,还要对数据共享交换的情况进行监控。比如,查询数据共享交换的记录、统计技术指标等。
数据管理还有一项内容是设定数据目录中各条目的保密属性,以及不同用户的数据访问权限,以保证用户可以正确地访问资源目录信息,并且保护目录系统目录信息的安全。数据密级、用户权限根据业务部门的工作特点进行划分,比如,可以把密级分为三类:公开级数据、限制级数据及机密级数据,相应地把用户分为三类:公开用户,只可以访问公开级数据;业务用户,可以访问公开级数据及限制级数据;管理用户,可以访问所有密级的数据。在用户查询数据目录时,根据用户权限和目录条目中资源保密属性过滤查询结果。
(二)数据共享交换
1.根据预设规则进行数据共享交换(S200),包括三种方法,如图3所示,分别是:
S210、根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换;
S220、根据数据更新情况进行数据共享交换;
S230、根据用户调用的接口进行数据共享交换。
需要说明的是,上述三个步骤没有先后顺序,是三个独立的数据共享交换方法,针对不同用户的需求进行设定。根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换(S210),针对订阅性数据用户,这类用户不需要一直关注数据更新,提交订阅请求,并经数据提供方审核后,在特定周期,如一天内,推送一次数据或更新共享平台的相关数据。根据数据更新情况进行数据共享交换(S220),针对需要实时了解数据最新动态的用户,数据提供方更新数据后,通过调用接口向用户传输数据或更新共享平台的相关数据。根据用户请求的接口进行数据共享交换,针对需对数据库进行操作的用户,该方法提供了基本数据库操作接口,数据提供方授权用户调用接口后,用户通过调用接口对数据库进行查询操作。
下面分别对上述三个方法进行具体说明。
根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换(S210),如图4所示,具体步骤包括:
S211、当数据提供方审核通过用户请求,将数据提供方提供的数据传输给用户,或者将所述数据提供方提供的数据上传到服务器中供用户下载,首次传输后,在每个预设数据更新周期内,读取数据提供方及用户的作业日志,当数据提供方及用户均释放有关数据时,根据预设规则读取更新数据并进行异构数据转换,然后传输给用户,或将服务器中供用户下载的数据更新为转换后的数据;
S212、当数据提供方没有审核通过用户请求,终止数据共享交换程序。
该方法适用于对数据实时性要求不太高的用户,用户订阅请求由数据提供方审核,可以减轻管理员的工作,在审核之后数据提供者根据订阅请求从其数据库中提取数据生成数据文件,经数据目录管理平台采集、处理、推送到使用者端。如果用户没有选择推送方式,可以将数据文件放置在安全的FTP服务器,供订阅用户自行下载。该模式适合于的情况。
在首次传输或共享后,当数据更新时,则需要按照用户请求的更新周期传输或共享更新的数据。更新数据可以有多种方式,比如增量更新方式,该方式在每次传输或共享数据时(包括首次传输或共享数据),在有关数据的描述信息中添加增量标识(时间戳/版本号/状态位)。更新时将检测上一次增量标识与本次增量标识的差距,并对差距范围内的数据进行更新。又比如,全量更新方式,该方式下每次数据更新都进行全量数据覆盖。
在采用增量更新方式时,对数据锁定进行锁定,防止锁死资源陷入死循环。具体来说,先读取数据提供者事务表或者事务日志,检测更新数据是否已经释放,其他正在调用更新数据的用户。当更新数据已被释放,则记录更新数据的增量标识A(n)。同时,读取用户的事务表或事务日志,检测旧有数据,也就是须被更新替换的数据,是否已被释放,如果是记录旧有数据的增量标识A(n-1)。当数据提供方及用户原有事务结束,锁定数据提供方的更新数据及用户的旧有数据,计算标识A(n)与上一次增量标识A(n-1)之间的标识范围,制作数据的更新采集规则,根据该规则对相关数据进行传输,替换,校验,并且最后释放相关数据。
数据更新触发条件为自定义频率更新,每到规定时间,进行数据更新。在数据更新时,可能会遇到其他数据正在传输,造成数据堵塞的现象,拖慢了数据传输效率,这时,可将数据读取和写入的操作过程抽象成为Reader和Writer两个流程,然后纳入到数据更新的作业当中,然后采用分布式线程的方式提高数据传输的速度。具体来说,在一个数据更新作业中,将作业过程切分成多个小的任务,每一个任务都会负责一部分数据的同步工作,之后根据并发运行的数据量,将多个任务组装成任务组,比如并发运行的线程为5个,则每个任务组就有5个任务。每一个任务组负责并发运行组内的所有任务,组内每一个任务启动后,会固定启动由Reader流程、Channel流程及Writer流程组成的线程来完成数据更新任务,其中Channel插件是对传输通道的抽象。在所有任务组的任务完成后成功退出。否则,异常退出,进程退出值非0。
数据提供方根据用户请求提取的数据文件,可以包括结构化文件(mysql、mssql、Oracle等)、非结构化文件(pdf、word等)、大数据环境文件(hive、hbase等);数据需求方也可用任何格式的数据持久化系统进行数据存储,如mysql、Oracle、hdfs等。因此,数据共享交换中,往往需要针对同类文件或不同类型数据文件进行异构处理。比如,同类数据文件在Reader流程中被转义成统一格式的数据流,然后在Framework流程中聚合、清洗,之后数据流在Writer流程中被写到任意格式的数据库中(如hbase)。又比如,针对异构文件传输情况,如果数据是有规律可循,如Syslog日志文档,每条纪录都会按照一定规律进行划分,每个字段的含义相对固定,那么在数据传输前,加载脚本程序对数据进行结构化处理,即对数据特征库进行识别,然后做成针对所传输数据的结构化索引。待数据特征稳定后,也可以在Reader流程或者Writer流程中定制结构化处理流程,方便以后重复调用。如果数据没有固定规律,如word、txt等,针对该类数据文件,在Reader流程中,在读取数据前,使用专门的语义分析引擎将数据文件转成结构化文件来进行变形传输,当分析正确率达到预期时,可以固化分析脚本以便以后在Reader流程中进行调用。
2.根据数据更新情况与用户进行数据共享交换(S220),具体步骤包括:
S221、在数据提供方更新数据后,根据数据提供方调用的接口向用户传输所述更新数据,或对服务器中供用户下载的数据进行更新。
与该方法与第一种方法相似,负责更新数据的交换与处理,唯一不同点在于触发机制。第一种方法基于自定义周期触发数据共享与传输,而第二种方法基于数据更新事件,当数据提供方更新数据时,触发更新数据共享交换流程。
3.根据用户调用的接口进行数据共享交换(S230),如图5所示,具体步骤包括:
S231、当数据提供方经审核授权用户调用接口,允许用户自行调用接口查询数据目录中的数据,并将查询结果传输给用户;
S232、如果数据提供方经审核不授权用户调用接口,不允许用户自行调用接口查询数据目录中的数据。
该方法针对数据提供方服务接口并不健全而服务接口的补充,能实现数据提供方只需要提供数据库(mysql、Oracle、hbase等),即可发布接口服务,大大减轻了数据接口的开发量,如实时接口调度、查询、更新消息接收等若干种固定动作。用户发起请求后,数据提供方审核用户请求,审核通过后,授权用户调用接口查询数据,之后用户每次查询数据时都可以调用接口进行查询,用户每次发起调用请求时,识别请求接口信息并调用有关接口,然后抽取用户请求中的数据查询动作,将数据查询动作转换为统一sql查询(NoSQL数据库也可进行识别),并给数据库所在服务器执行,然后将查询结果返还用户。如果数据提供方审核不通过,则禁止不允许用户调用接口。
二、数据共享交换系统
本发明还公开了一种数据共享交换系统,用以实现上述数据共享交换方法,如图6所示,数据共享交换系统包括数据管理模块100,用于根据数据目录对数据进行管理,所述数据包括数据库数据,数据文件或消息。数据共享交换系统还包括数据共享交换模块200,用于根据预设规则进行数据共享交换。下面对两个模块进行具体说明。
(一)数据管理模块
图7是数据管理模块100的功能结构图,包括:
发布单元110,用于建立新增的所述数据库数据或消息的描述信息,根据预设规则对所述数据的描述信息进行分类、注册,并在数据目录中发布;
数据文件定位单元120,用于建立新增数据文件的描述信息及链接地址,根据预设规则对所述数据文件的描述信息及链接地址进行分类、注册,并导入到数据目录的相应分类位置;
查询单元130,用于根据预设规则查询数据目录中的数据;
维护监控单元140,用于根据预设规则对数据目录的结构、条目信息及运行进行维护、监控;
密级权限设置单元150,用于根据预设规则设定数据目录中各条目的保密属性,以及设定不同用户的数据访问权限。
发布单元110对所有新增的数据库数据建立起描述信息作为查询索引,然后根据数据目录的分类规则进行分类,并对描述信息进行注册,导入到数据目录中,供用户查阅。描述信息包括数据的名称、内容简述、制作人、制作时间等基本内容,便于用户了解数据内容。另外描述信息还应包括访问权限、访问方式、数据地址、访问记录等访问内容,便于管理员管理、监控数据,但描述信息的访问内容一般至少有部分保密内容是不对一般用户开放的。至于描述数据目录的分类,则是根据业务部门、数据内容等一个或组合条件进行设计。
对于文件库中的数据文件,数据文件定位单元120在描述信息中增加一个链接地址以对数据文件进行定位,然后再进行分类、注册,并导入到数据目录的相应分类位置。
在建立目录条目后,管理员、用户等经常需要查询数据在数据目录中的位置已进行管理,查询时,查询单元130根据管理员、用户输入的分类、单项条件和组合条件三种方式进行查询。除此之外,查询单元130还可以根据管理员、用户输入的主题词进行联想查询、快速定位、下载公开目录、查询资源在各个分类中的目录位置、下载结果列表。
维护监控单元140对数据目录结构树和目录条目的信息进行维护,比如当数据的分类体系发生变化时,维护监控单元140调整目录结构,又比如当数据需要修改、删除、添加和更新时,维护监控单元140在后台实现维护数据内容。除此以外,维护监控单元140还对数据共享交换的情况进行监控。比如,查询数据共享交换的记录、统计技术指标等。
密级权限设置单元150设定数据目录中各条目的保密属性,以及不同用户的数据访问权限,以保证用户可以正确地访问资源目录信息,并且保护目录系统目录信息的安全。数据密级、用户权限根据业务部门的工作特点进行划分,比如,可以把密级分为三类:公开级数据、限制级数据及机密级数据,相应地把用户分为三类:公开用户,只可以访问公开级数据;业务用户,可以访问公开级数据及限制级数据;管理用户,可以访问所有密级的数据。在用户查询数据目录时,密级权限设置单元150根据用户权限和目录条目中资源保密属性过滤查询结果。
(二)数据共享交换模块
图8是数据共享交换模块200的功能结构图,包括:
订阅共享交换单元210,用于根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换;
通报共享交换单元220,用于根据数据更新情况进行数据共享交换;
网关共享交换单元230,用于根据用户调用的接口进行数据共享交换。
上述三个单元分别实现了三个数据共享交换方法,下面对上述三个单元分别做具体说明。
1.图9是订阅交换单元210的功能结构图,包括:
订阅子单元211,用于当数据提供方审核通过用户请求,将数据提供方提供的数据传输给用户,或者将所述数据提供方提供的数据上传到服务器中供用户下载,首次传输后,在每个预设数据更新周期内,读取数据提供方及用户的作业日志,当数据提供方及用户均释放有关数据时,根据预设规则读取更新数据并进行异构数据转换,然后传输给用户,或将服务器中供用户下载的数据更新为转换后的数据;
终止子单元212,用于当数据提供方没有审核通过用户请求,终止数据共享交换程序。
在订阅子单元211首次传输或共享数据后,订阅子单元211按照用户请求的更新周期传输或共享更新的数据。更新数据可以有多种方式,比如增量更新方式,该方式在每次传输或共享数据时(包括首次传输或共享数据),订阅子单元211在有关数据的描述信息中添加增量标识(时间戳/版本号/状态位)。更新时订阅子单元211检测上一次增量标识与本次增量标识的差距,并对差距范围内的数据进行更新。又比如,全量更新方式,该方式下每次数据更新都进行全量数据覆盖。
在采用增量更新方式时,订阅子单元211对数据锁定进行锁定,防止锁死资源陷入死循环。具体来说,订阅子单元211先读取数据提供者事务表或者事务日志,检测更新数据是否已经释放,是否有其他正在调用更新数据的用户。当更新数据已被释放,订阅子单元211记录更新数据的增量标识A(n)。同时,订阅子单元211读取用户的事务表或事务日志,检测旧有数据,也就是须被更新替换的数据,是否已被释放,如果已被释放,订阅子单元211记录旧有数据的增量标识A(n-1)。在数据提供方及用户原有事务都已经结束时,订阅子单元211锁定数据提供方的更新数据及用户的旧有数据,然后计算标识A(n)与上一次增量标识A(n-1)之间的标识范围,并据此制作更新数据的采集规则,根据该规则对数据进行传输,替换,校验,最后释放相关数据。
数据更新触发条件为自定义频率更新,每到规定时间,订阅子单元211进行数据更新。在数据更新时,可能会遇到其他数据正在传输,造成数据堵塞的现象,拖慢了数据传输效率,这时,可将数据读取和写入的操作过程抽象成为Reader和Writer两个插件,然后纳入到订阅子单元211更新数据的作业当中,然后采用分布式线程提高数据传输的速度。具体来说,在进行数据更新时,订阅子单元211将更新过程切分成多个小的任务,每一个任务进行一部分数据的更新工作,划分任务后根据并发运行的线程数量,订阅子单元211将多个任务组装成任务组,比如并发运行的线程为5个,则每个任务组就有5个任务。任务组内每一个任务启动后,订阅子单元211内的Reader插件、Channel插件及Writer插件协同完成任务,其中Channel插件是对传输通道的抽象。所有任务组的任务完成后订阅子单元211成功退出更新数据进程。否则,订阅子单元211异常退出。
数据提供方根据用户请求提取的数据文件,可以包括结构化文件(mysql、mssql、Oracle等)、非结构化文件(pdf、word等)、大数据环境文件(hive、hbase等);数据需求方也可用任何格式的数据持久化系统进行数据存储,如mysql、Oracle、hdfs等。因此,数据共享交换中,订阅子单元211针对同类文件或不同类型数据文件进行异构处理。比如,订阅子单元211的Reader插件将同类数据文件转义成统一格式的数据流,然后订阅子单元211的Framework插件对数据流进行聚合、清洗,订阅子单元211的Writer插件再将数据流写到任意格式的数据库中(如hbase)。又比如,针对异构文件传输情况,如果数据是有规律可循的,如Syslog日志文档,每条纪录都会按照一定的规律进行划分,每个字段的含义相对固定,那么在数据传输前,订阅子单元211加载脚本程序对数据进行结构化处理,即对数据特征库进行识别,然后做成针对所传输数据的结构化索引。待数据特征稳定后,可以在订阅子单元211的Reader插件或者Writer插件中定制用于结构化变形的子插件,方便以后重复调用。如果数据没有固定规律,如word、txt等,针对该类数据文件,订阅子单元211的Reader插件在读取前,使用专门的语义分析引擎转成结构化文件进行变形传输,当分析正确率达到预期时,可以在订阅子单元211中固化分析脚本,方便Reader插件进行调用。
2.通报共享交换单元220包括:
通报更新子单元221,用于在数据提供方更新数据后,根据数据提供方调用的接口向用户传输所述更新数据,或对服务器中供用户下载的数据进行更新。
通报共享交换单元220与订阅共享交换单元210相似,负责更新数据的交换与处理,唯一不同点在于触发机制。订阅共享交换单元210基于自定义周期触发数据共享与传输,而通报共享交换单元220基于数据更新事件,当数据提供方更新数据时,触发通报共享交换单元220进行更新数据共享交换。
3.图10是网关共享交换单元230的功能结构图,包括:
调用接口子单元231,用于当数据提供方经审核授权用户调用接口,允许用户自行调用接口查询数据目录中的数据,并将查询结果传输给用户;
禁止接口子单元232,用于如果数据提供方经审核不授权用户调用接口,不允许用户自行调用接口查询数据目录中的数据。
网关共享交换单元230针对数据提供方服务接口并不健全而对服务接口进行补充,数据提供方只需要提供数据库(mysql、Oracle、hbase等),网关共享交换单元230即可提供接口服务,如实时接口调度、查询、更新数据接收等若干种固定操作,大大减轻了数据接口的开发量。用户发起请求后,数据提供方审核用户请求,审核通过后,授权用户调用接口查询数据,调用接口子单元231允许用户每次查询数据时都可以调用接口进行查询,用户每次发起调用请求时,识别请求接口信息并调用有关接口,然后抽取用户请求中的数据查询动作,将数据查询动作转换为统一sql查询(NoSQL数据库也可进行识别),并给数据库所在服务器执行,然后将查询结果返还用户。如果数据提供方审核不通过,则禁止接口子单元232不允许用户调用接口。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (10)
1.一种数据共享交换方法,其特征在于,包括:
根据数据目录对数据进行管理,所述数据包括数据库数据,数据文件及消息;
根据预设规则进行数据共享交换,包括:根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换,根据数据更新情况进行数据共享交换,根据用户调用的接口进行数据共享交换。
2.如权利要求1所述数据共享交换方法,其特征在于,所述根据数据目录对数据进行管理,包括:
建立新增的所述数据库数据或消息的描述信息,根据预设规则对所述数据的描述信息进行分类、注册,并在数据目录中发布;
建立新增的所述数据文件的描述信息及链接地址,根据预设规则对所述数据文件的描述信息及链接地址进行分类、注册,并导入到数据目录的相应分类位置;
根据预设规则查询数据目录中的数据;
根据预设规则对数据目录的结构、条目信息及运行进行维护、监控;
根据预设规则设定数据目录中各条目的保密属性,以及不同用户的数据访问权限。
3.如权利要求1所述数据共享交换方法,其特征在于,所述根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换的步骤,包括:
当数据提供方审核通过用户请求,将数据提供方提供的数据传输给用户,或者将所述数据提供方提供的数据上传到服务器中供用户下载,首次传输后,在每个预设数据更新周期内,读取数据提供方及用户的作业日志,当数据提供方及用户均释放有关数据时,根据预设规则读取更新数据并进行异构数据转换,然后传输给用户,或将服务器中供用户下载的数据更新为转换后的数据;
当数据提供方没有审核通过用户请求,终止数据共享交换程序。
4.如权利要求1所述数据共享交换方法,其特征在于,所述根据数据更新情况与用户进行数据共享交换的步骤,包括:
在数据提供方更新数据后,根据数据提供方调用的接口向用户传输所述更新数据,或对服务器中供用户下载的数据进行更新。
5.如权利要求1所述数据共享交换方法,其特征在于,所述根据用户调用的接口进行数据共享交换的步骤,包括:
当数据提供方经审核授权用户调用接口,允许用户自行调用接口查询数据目录中的数据,并将查询结果传输给用户;
如果数据提供方经审核不授权用户调用接口,不允许用户自行调用接口查询数据目录中的数据。
6.一种数据共享交换系统,其特征在于,所述数据共享交换系统用于实现权利要求1-5的数据共享交换方法,所述数据共享交换系统包括:
所述数据管理模块,用于根据数据目录对数据进行管理,所述数据包括数据库数据,数据文件及消息;
所述数据共享交换模块,用于根据预设规则进行数据共享交换,包括:订阅共享交换单元,用于根据数据提供方对用户请求的审核结果及预设数据更新周期进行数据共享交换,通报共享交换单元,用于根据数据更新情况进行数据共享交换,网关共享交换单元,用于根据用户调用的接口进行数据共享交换。
7.如权利要求6所述数据共享交换系统,其特征在于,所述数据管理模块包括:
发布单元,用于建立新增的所述数据库数据或消息的描述信息,根据预设规则对所述数据的描述信息进行分类、注册,并在数据目录中发布;
数据文件定位单元,用于建立新增数据文件的描述信息及链接地址,根据预设规则对所述数据文件的描述信息及链接地址进行分类、注册,并导入到数据目录的相应分类位置;
查询单元,用于根据预设规则查询数据目录中的数据;
维护监控单元,用于根据预设规则对数据目录的结构、条目信息及运行进行维护、监控;
密级权限设置单元,用于根据预设规则设定数据目录中各条目的保密属性,以及设定不同用户的数据访问权限。
8.如权利要求6所述数据共享交换系统,其特征在于,所述订阅交换单元包括:
订阅子单元,用于当数据提供方审核通过用户请求,将数据提供方提供的数据传输给用户,或者将所述数据提供方提供的数据上传到服务器中供用户下载,首次传输后,在每个预设数据更新周期内,读取数据提供方及用户的作业日志,当数据提供方及用户均释放有关数据时,根据预设规则读取更新数据并进行异构数据转换,然后传输给用户,或将服务器中供用户下载的数据更新为转换后的数据;
终止子单元,用于当数据提供方没有审核通过用户请求,终止数据共享交换程序。
9.如权利要求6所述数据共享交换系统,其特征在于,所述通报交换模块包括:
通报更新子单元,用于在数据提供方更新数据后,根据数据提供方调用的接口向用户传输所述更新数据,或对服务器中供用户下载的数据进行更新。
10.如权利要求6所述数据共享交换系统,其特征在于,所述网关交换模块单元包括:
调用接口子单元,用于当数据提供方经审核授权用户调用接口,允许用户自行调用接口查询数据目录中的数据,并将查询结果传输给用户;
禁止接口子单元,用于如果数据提供方经审核不授权用户调用接口,不允许用户自行调用接口查询数据目录中的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811648611.1A CN109766322A (zh) | 2018-12-30 | 2018-12-30 | 一种数据共享交换方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811648611.1A CN109766322A (zh) | 2018-12-30 | 2018-12-30 | 一种数据共享交换方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109766322A true CN109766322A (zh) | 2019-05-17 |
Family
ID=66453357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811648611.1A Pending CN109766322A (zh) | 2018-12-30 | 2018-12-30 | 一种数据共享交换方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109766322A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427415A (zh) * | 2019-08-02 | 2019-11-08 | 泰康保险集团股份有限公司 | 知识库共享方法、装置、系统介质及电子设备 |
CN110490007A (zh) * | 2019-08-26 | 2019-11-22 | 顺德职业技术学院 | 一种基于互联网的计算机数据安全共享平台 |
CN110602075A (zh) * | 2019-08-15 | 2019-12-20 | 中国人民银行数字货币研究所 | 一种加密访问控制的文件流处理的方法、装置及系统 |
CN113672479A (zh) * | 2021-04-27 | 2021-11-19 | 全球能源互联网研究院有限公司 | 一种数据共享方法、装置及计算机设备 |
CN113709250A (zh) * | 2021-08-31 | 2021-11-26 | 中国电子科技集团公司第二十八研究所 | 一种基于订阅发送模式的跨域用户数据同步方法 |
CN114070882A (zh) * | 2021-07-14 | 2022-02-18 | 北京天元创新科技有限公司 | 一种数据整编方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103281368A (zh) * | 2013-05-22 | 2013-09-04 | 河海大学 | 一种基于云计算的数据共享交换模型及方法 |
US20160070453A1 (en) * | 2014-09-05 | 2016-03-10 | Verizon Patent And Licensing Inc. | Method and system for indicating social categories |
CN107862086A (zh) * | 2017-11-30 | 2018-03-30 | 华迪计算机集团有限公司 | 一种共享目录资源信息的系统和方法 |
-
2018
- 2018-12-30 CN CN201811648611.1A patent/CN109766322A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103281368A (zh) * | 2013-05-22 | 2013-09-04 | 河海大学 | 一种基于云计算的数据共享交换模型及方法 |
US20160070453A1 (en) * | 2014-09-05 | 2016-03-10 | Verizon Patent And Licensing Inc. | Method and system for indicating social categories |
CN107862086A (zh) * | 2017-11-30 | 2018-03-30 | 华迪计算机集团有限公司 | 一种共享目录资源信息的系统和方法 |
Non-Patent Citations (1)
Title |
---|
彭言海: "基于云计算的政务信息资源共享交换与整合平台的研究与实现", 《中国优秀硕士学位论文全文数据库(社会科学Ⅰ辑)》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427415A (zh) * | 2019-08-02 | 2019-11-08 | 泰康保险集团股份有限公司 | 知识库共享方法、装置、系统介质及电子设备 |
CN110602075A (zh) * | 2019-08-15 | 2019-12-20 | 中国人民银行数字货币研究所 | 一种加密访问控制的文件流处理的方法、装置及系统 |
CN110490007A (zh) * | 2019-08-26 | 2019-11-22 | 顺德职业技术学院 | 一种基于互联网的计算机数据安全共享平台 |
CN113672479A (zh) * | 2021-04-27 | 2021-11-19 | 全球能源互联网研究院有限公司 | 一种数据共享方法、装置及计算机设备 |
CN114070882A (zh) * | 2021-07-14 | 2022-02-18 | 北京天元创新科技有限公司 | 一种数据整编方法及系统 |
CN113709250A (zh) * | 2021-08-31 | 2021-11-26 | 中国电子科技集团公司第二十八研究所 | 一种基于订阅发送模式的跨域用户数据同步方法 |
CN113709250B (zh) * | 2021-08-31 | 2023-09-15 | 中国电子科技集团公司第二十八研究所 | 一种基于订阅发送模式的跨域用户数据同步方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109766322A (zh) | 一种数据共享交换方法及系统 | |
US10754932B2 (en) | Centralized consent management | |
AU2009223440B2 (en) | Synchronization of metadata | |
US7487550B2 (en) | Methods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system | |
US9973509B2 (en) | Provisioning system-level permissions using attribute-based access control policies | |
US9864868B2 (en) | Method and apparatus for process enforced configuration management | |
CA2688509C (en) | Distributed system for monitoring information events | |
CN112732811A (zh) | 一种数据开放平台 | |
US20020116340A1 (en) | Method and system for retrieving data from the XSLM license manager | |
US20080301757A1 (en) | Systems and methods for policy enforcement in electronic evidence management | |
CN106548324A (zh) | 一种it系统运维服务管理系统 | |
US10754901B2 (en) | Analytics of electronic content management systems using a staging area database | |
CN112035438A (zh) | 政务大数据平台系统 | |
US20130097221A1 (en) | Analyzing client data stores | |
CN112784230B (zh) | 网络安全数据共享与管控方法及系统 | |
CN110532313A (zh) | 数据交换装置 | |
US11379416B1 (en) | Systems and methods for common data ingestion | |
US11632375B2 (en) | Autonomous data source discovery | |
CN110493049A (zh) | 一种互联网资产监控的管理系统与方法 | |
Zhezhnych et al. | An Approach to Multiple Security System Development Using Database Schemas | |
CN117420999A (zh) | 一种多功能的试验数据管理与数据综合分析平台 | |
CN115098522A (zh) | 一种数据发布方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190517 |
|
RJ01 | Rejection of invention patent application after publication |