本发明涉及数据共享技术领域,具体涉及一种数据资源共享方法,以及一种数据资源共享平台的目录系统。
背景技术:
目前,市场上的数据共享交换平台的数据资源与接口服务需要分别绑定,绑定数据资源后无法直接提供接口服务,要提供http的接口服务需要再进行接口资源注册,针对需求方不同的查询内容和条件需要重复开发接口,需求方使用新接口时需要重新申请授权。一方面,这种绑定在后续的维护过程中,开发以及维护工作量大,这会让运营成本增加,另一方面,针对不同的查询内容和条件需要重复开发和授权,导致接口冗余,难以管理。
技术实现要素:
根据第一方面,一种实施例中提供一种数据资源共享方法,包括步骤:
根据获取到的数据资源定义资源目录的基础属性和信息指标;
根据所述基础属性和信息指标生成资源目录及其元数据,所述元数据包括用于描述资源目录的指标项;
根据所述元数据建立与资源目录关联的数据表,所述数据表的属性与所述元数据的属性一一对应;
将所述元数据中的部分指标项或全部指标项作为查询条件发布;
基于资源使用端的资源申请请求,验证所述资源使用端的资源申请权限,所述资源申请请求包括发布的查询条件中被选中的查询条件,如果资源申请权限验证通过,构建包括被选中的查询条件的服务接口;
基于资源使用端对于所述服务接口的资源获取请求,验证所述资源使用端的资源获取权限,如果资源获取权限通过,根据所述资源获取请求调用相应的数据表。
根据第二方面,一种实施例中提供一种数据资源共享平台,包括:
目录系统,用于:
根据获取到的数据资源定义资源目录的基础属性和信息指标;
根据所述基础属性和信息指标生成资源目录及其元数据,所述元数据包括用于描述资源目录的指标项;
根据所述元数据建立与资源目录关联的数据表,所述数据表的属性与所述元数据的属性一一对应,所述数据表存储在用于提供数据资源的资源提供端;
将所述元数据中的部分指标项或全部指标项作为查询条件发布;
基于资源使用端的资源申请请求,验证所述资源使用端的资源申请权限,所述资源申请请求包括发布的查询条件中被选中的查询条件,如果资源申请权限验证通过,构建包括被选中的查询条件的服务接口;
基于资源使用端对于所述服务接口的资源获取请求,验证所述资源使用端的资源获取权限,如果资源获取权限通过,根据所述资源获取请求调用相应的数据表;
目录数据库,用于存储目录系统生成的资源目录;
交换传输系统,用于:
接收并向所述目录系统传输数据资源;
接收由资源使用端发送的资源申请请求和资源获取请求,将资源申请请求和资源获取请求上传至目录系统,并在资源申请权限验证通过后向资源使用端提供服务接口,在资源获取权限验证通过后将数据表由资源提供端传输至资源使用端。
根据第三方面,一种实施例中提供一种计算机可读存储介质,所述介质上存储有程序,所述程序能够被处理器执行以实现上述第一方面中的方法。
本发明的有益效果在于:数据资源共享平台根据设置的指标项作为获取服务的查询条件,在授权通过后自动构建服务接口,从而降低了数据使用门槛,并且,不需要根据不同的资源使用端单独开发服务接口,开发工作量小,维护成本低,另外,资源目录与服务接口中的字段为一一对应关系,方便资源目录和数据资源的统一管理。
附图说明
图1为一种实施例的数据资源共享平台的工作原理图;
图2为一种实施例的资源目录的元数据的示意图;
图3为一种实施例的数据表的示意图;
图4为一种实施例的数据资源共享方法的流程图;
10、数据资源共享平台;
11、目录系统;
12、目录数据库;
13、交换传输系统;
20、资源提供端;
21、第一前置交换系统;
22、前置库;
30、资源使用端;
31、第二前置交换系统;
32、业务应用系统。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
请参照图1,本发明提供了一种数据资源共享平台10,该共享平台包括目录系统11、目录数据库12以及交换传输系统13。
在进行数据资源共享时,首先要完成目录编制。目录系统11用于根据获取到的数据资源定义资源目录的基础属性和信息指标,其中,资源目录的基础属性的定义包含:目录名称、表名、更新周期等属性,信息指标的定义包含:字段名、字段类型、字段长度、是否可空、是否可比对以及共享类型等属性。而后,目录系统11根据定义好的基础属性和信息指标生成资源目录及其元数据,发布的资源目录可以存储在目录数据库12中。元数据包括用于描述资源目录的指标项,每条指标项可以看作是元数据的属性。图2所示为元数据,该图中显示有资源目录名称、资源目录表名和资源目录摘要等信息,以及用于描述该资源目录的各指标项。可以看出图2的元数据对应的资源目录是用户信息,以用户名、姓名、性别、出生日期、身份证号码和注册日期来描述该用户信息。例如,资源目录包括一万个用户信息,每个用户信息都分别具有用户名、姓名、性别、出生日期、身份证号码和注册日期这五方面的内容。目录系统11还根据元数据建立与资源目录关联的数据表,数据表的属性与元数据的属性一一对应。例如图3所示的数据表中,数据表中的每一行是数据表的一个属性,每个属性均与图2中元数据的每条指标项对应,该数据表可以存储在资源提供端20内(下文介绍),另外,可以指定上述指标项中对应的一个属性作为表主键,例如,在图3中,指定用户名作为表的主键。同时,目录系统11将元数据中的部分指标项或全部指标项作为查询条件发布。
目录编制完成后,数据资源共享平台10进行服务授权。服务授权指的是获取指定资源目录的全部或部分指标项,资源使用端30要获取指定资源目录的数据资源,需申请资源目录使用的授权,只有通过的资源目录授权,才能进行资源获取,资源获取的数据范围局限于已授权的资源目录以及目录下授权使用的指标项(从资源使用端30的角度看是查询条件)。具体的,基于资源使用端30的资源申请请求,验证资源使用端30的资源申请权限,该资源申请请求可先传递至交换传输系统13,再由交换传输系统13提交至目录系统11,资源申请请求包括发布的查询条件中被选中的查询条件,例如,在发布查询条件时,各查询条件就均为可勾选的,资源使用端30能够通过勾选查询条件的方式选择后续使用的查询条件(也就是指标项),在一些实施例中,资源申请请求还包括表征资源使用端30身份的身份标识,故验证资源使用端30的资源申请权限,包括了:根据身份标识验证资源使用端30的权限,如果资源申请权限验证通过,目录系统11构建包括被选中的查询条件的服务接口。例如,数据资源共享平台10应用于政务系统中,民政部门想要获取用户的姓名、性别以及婚姻信息这三个指标项(查询条件),数据资源共享平台10验证名民政部门的身份标识后,认定民政部门具有使用上述三个查询条件的权限,就为民政部门提供服务接口,而如果民政部门还想以身份证号码作为查询条件,且民政部门本身不具有使用身份证号码这一查询条件的权限,那么数据资源共享平台10就不会为民政部门提供服务接口。
上述数据资源共享平台10根据设置的指标项作为获取服务的查询条件,在授权通过后自动构建服务接口,从而降低了数据使用门槛。
提供服务接口后,目录系统11还基于资源使用端30对于服务接口的资源获取请求,验证资源使用端30的资源获取权限。具体的,资源使用端30可以将资源获取请求传递至通过交换传输系统13提供的服务接口,交换传输系统13将该资源获取请求上传至目录系统11进行权限的验证。例如,构建服务接口后,目录系统11通过交换传输系统13向资源使用端30提供第一授权码,而数据资源共享平台10要求资源获取请求中包括用于权限验证的第二授权码,目录系统11将第一授权码和第二授权码进行比对,根据比对结果验证资源使用端30的资源获取权限,如果两个授权码相同,则允许资源使用端30获取数据,也就是目录系统11根据资源获取请求调用相应的数据表。一些实施例中,数据表还根据标准规范将数据表转化为数据集,而后还可以进行数据过滤:对超过数据集行数最高限制的数据表进行过滤,过滤后的数据表经交换传输系统13再传输至资源使用端30供其使用,至此完成数据资源的传输。
为了更好地说明上述数据资源共享平台10的工作流程,以图1为例进行说明。
图1中,除了数据资源共享平台10外,还包括资源提供端20和资源使用端30,资源提供端20用于提供资源,资源使用端30则向目录系统11请求资源。
资源提供端20包括前置库22和第一前置交换系统21,该前置库存储有数据资源,数据资源可以是结构化数据、非结构化数据或半结构化数据,前置库22内的数据资源可以通过第一前置交换系统21传输至交换传输系统13。目录系统11根据获取到的数据资源完成上述目录编制的过程,在目录编制的过程中,建立的数据表通过交换传输系统13以及第一前置交换系统21传输至前置库22中。
资源使用端30包括业务应用系统32和第二前置交换系统31。业务应用系统32用于构造资源申请请求以及资源获取请求,构造好的资源申请请求和资源获取请求均通过第二前置交换系统31传递至交换传输系统13,再由交换传输系统13提交至目录系统11进行相应的权限验证,如果权限验证不通过,目录系统11通知资源使用端30权限不通过,如果资源申请权限通过,则目录系统11构建相应的服务接口,并通过交换传输系统13提供给资源使用端30,业务应用系统32此时还根据入参格式构建入参请求,入参请求可以封装有资源获取请求,如果进一步资源获取权限通过,则由交换传输系统13将请求路由到资源提供端20的第一前置交换系统21,由该第一前置交换系统21处理该资源获取请求,返回数据资源,其中数据资源经传输通道直接返回,资源使用端30的第二前置交换系统31根据业务应用系统32的请求方式(例如同步/异步)将数据返回给业务应用系统32。
具体到应用场景时,数据资源共享平台10可以使用在政务系统中,资源提供端20是负责收集居民各类信息的机构(例如统计部门),居民的各类信息可以包括身份信息、学历信息、婚姻信息、技能证书信息等。而资源使用端30可以是行使政府职能的各部门,例如教育部门、交通部门和民政部门,依据各部门的不同给予不同的权限。例如,教育部门可以以学历信息为查询条件查询查找居民,而民政部门可以以婚姻信息作为查询条件查找居民。
请参照图4,本发明还提供了一种数据资源共享方法,包括步骤:
步骤100、根据获取到的数据资源定义资源目录的基础属性和信息指标。其中,资源目录的基础属性的定义包含:目录名称、表名、更新周期等属性,信息指标的定义包含:字段名、字段类型、字段长度、是否可空、是否可比对以及共享类型等属性。
步骤200、根据基础属性和信息指标生成资源目录及其元数据。元数据包括用于描述资源目录的指标项。
每条指标项可以看作是元数据的属性。图2所示为元数据,该图中显示有资源目录名称、资源目录表名和资源目录摘要等信息,以及用于描述该资源目录的各指标项。可以看出图2的元数据对应的资源目录是用户信息,以用户名、姓名、性别、出生日期、身份证号码和注册日期来描述该用户信息。例如,资源目录包括一万个用户信息,每个用户信息都分别具有用户名、姓名、性别、出生日期、身份证号码和注册日期这五方面的内容。
步骤300、根据元数据建立与资源目录关联的数据表。数据表的属性与元数据的属性一一对应。
例如图3所示的数据表中,数据表中的每一行是数据表的一个属性,每个属性均与图2中元数据的每条指标项对应,该数据表可以存储在资源提供端20内(下文介绍),另外,可以指定上述指标项中对应的一个属性作为表主键,例如,在图3中,指定用户名作为表的主键。
步骤400、将元数据中的部分指标项或全部指标项作为查询条件发布。
步骤500、基于资源使用端30的资源申请请求,验证资源使用端30的资源申请权限。如果资源申请权限验证通过,执行步骤600,否则继续执行步骤500。
步骤500为服务授权的过程,服务授权指的是获取指定资源目录的全部或部分指标项,资源使用端30要获取指定资源目录的数据资源,需申请资源目录使用的授权,只有通过的资源目录授权,才能进行资源获取,资源获取的数据范围局限于已授权的资源目录以及目录下授权使用的指标项。资源申请请求包括发布的查询条件中被选中的查询条件,例如,在发布查询条件时,各查询条件就均为可勾选的,资源使用端30能够通过勾选查询条件的方式选择后续使用的查询条件(也就是指标项),在一些实施例中,资源申请请求还包括表征资源使用端30身份的身份标识,故验证资源使用端30的资源申请权限,包括了:根据身份标识验证资源使用端30的权限。
步骤600、构建包括被选中的查询条件的服务接口。例如,数据资源共享平台10应用于政务系统中,民政部门想要获取用户的姓名、性别以及婚姻信息这三个指标项(查询条件),数据资源共享平台10验证名民政部门的身份标识后,认定民政部门具有使用上述三个查询条件的权限,就为民政部门提供服务接口,而如果民政部门还想以身份证号码作为查询条件,且民政部门本身不具有使用身份证号码这一查询条件的权限,那么数据资源共享平台10就不会为民政部门提供服务接口。
步骤700、基于资源使用端30对于服务接口的资源获取请求,验证资源使用端30的资源获取权限,如果资源获取权限验证通过,执行步骤800,否则继续执行步骤700。
例如,构建服务接口后,数据资源共享平台10向资源使用端30提供第一授权码,而数据资源共享平台10要求资源获取请求中包括用于权限验证的第二授权码,数据资源共享平台10将第一授权码和第二授权码进行比对,根据比对结果验证资源使用端30的资源获取权限,如果两个授权码相同,则资源获取权限验证通过。
步骤800、根据资源获取请求调用相应的数据表。一些实施例中,数据表还根据标准规范将数据表转化为数据集,而后还可以进行数据过滤:对超过数据集行数最高限制的数据表进行过滤,过滤后的数据表再传输至资源使用端30供其使用,至此完成数据资源的传输。
上述实施例的数据资源共享平台根据设置的指标项作为获取服务的查询条件,在授权通过后自动构建服务接口,从而降低了数据使用门槛,并且,不需要根据不同的资源使用端单独开发服务接口,开发工作量小,维护成本低,另外,资源目录与服务接口中的字段为一一对应关系,方便资源目录和数据资源的统一管理。
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。