数据检索方法及装置与流程

文档序号:32113509发布日期:2022-11-09 05:45阅读:180来源:国知局
数据检索方法及装置与流程

1.本发明涉及计算机技术领域,尤其涉及一种数据检索方法及装置。


背景技术:

2.随着互联网技术的发展,由互联网所产生的数据呈爆发式增长,数据使用者对海量互联网数据进行检索,数据提供者的数据得以共享和交换,进而形成了庞大的数据信息网,在方便了数据使用者的同时,也为数据提供者带来巨大的经济价值。
3.目前,数据使用者想要检索数据提供者的数据信息,需要数据提供者将各自的数据托管至数据市场,然后数据使用者基于数据市场对数据提供者的数据进行检索。
4.然而,将数据托管至数据市场会使数据提供者面临数据泄露的风险,因此,数据提供者进行数据交换的积极性不高,从而导致各数据提供者形成了相互独立的数据孤岛。因此,如何保障数据提供者数据的安全性,是目前迫切需要解决的问题。


技术实现要素:

5.针对现有技术存在的问题,本发明实施例提供一种数据检索方法及装置。
6.本发明提供一种数据检索方法,包括:
7.接收客户端发送的数据检索请求,其中,所述数据检索请求中包括查询信息;
8.基于所述查询信息,检索与所述查询信息相匹配的目标目录条目;
9.将所述目标目录条目的属性信息发送至所述客户端,以使所述客户端根据所述属性信息检索各数据提供者提供的目标数据。
10.可选地,在所述接收客户端发送的数据检索请求之前,包括:
11.接收各所述数据提供者提供的数据信息元组,并基于所述数据信息元组生成目录条目。
12.可选地,所述数据目录检索平台包括区块链网络;
13.在所述接收各所述数据提供者提供的数据信息元组之前,包括:
14.接收各所述数据提供者发送的注册请求;
15.基于所述注册请求,调用所述区块链网络向各所述数据提供者分配密钥对。
16.可选地,所述密钥对包括公钥和私钥;
17.所述数据信息元组包括:
18.统一资源定位符url;
19.元数据;
20.数据完整性证明,其中,所述数据完整性证明是各所述数据提供者利用所述私钥对所述url所指向的真实数据进行签名生成的;
21.所有权声明,其中,所述所有权声明是各所述数据提供者将所述公钥与所述数据提供者的身份信息进行关联生成的。
22.可选地,在所述基于所述数据信息元组生成目录条目之后,包括:
23.将所述目录条目提交至所述区块链网络中的节点设备进行存储。
24.可选地,所述基于所述查询信息,检索与所述查询信息相匹配的目标目录条目,包括:
25.将所述查询信息与所述目录条目的元数据进行匹配,确定目标元数据,其中,所述目标元数据携带有所述目标目录条目的索引信息;
26.根据所述索引信息,确定所述目标目录条目。
27.可选地,在检索与所述查询信息相匹配的目标目录条目之后,包括:
28.将所述目标目录条目与所述区块链网络中存储的目录条目进行匹配;
29.在匹配成功的情况下,将所述目标目录条目的属性信息发送至所述客户端。
30.可选地,在将所述目标目录条目的属性信息发送至所述客户端之后,包括:
31.接收所述客户端发送的验证指令;
32.将所述目标条目的属性信息与所述数据信息元组进行匹配,并将匹配结果发送至所述客户端。
33.可选地,所述数据目录检索平台包括目录管理单元、所述区块链网络、元数据管理单元及数据检索单元;其中,
34.所述目录管理单元,用于接收各所述数据提供者提供的数据信息元组生成目录条目,并将所述目录条目交至所述区块链网络中的节点设备;
35.所述区块链网络的节点设备,用于存储所述目录条目;
36.所述元数据管理单元,用于从所述区块链网络的节点设备中同步元数据;
37.所述数据检索单元,用于从所述元数据管理单元中确定所述目标元数据,其中,所述目标元数据携带有所述目标目录条目的索引信息;根据所述索引信息,确定所述目标目录条目,并将所述目标目录条目的属性信息发送至所述客户端。
38.本发明还提供一种数据检索装置,包括:
39.接收模块,用于接收客户端发送的数据检索请求,其中,所述数据检索请求中包括查询信息;
40.检索模块,用于基于所述查询信息,检索与所述查询信息相匹配的目标目录条目;
41.发送模块,用于将所述目标目录条目的属性信息发送至所述客户端,以使所述客户端根据所述属性信息检索各数据提供者提供的目标数据。
42.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据检索方法。
43.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据检索方法。
44.本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述数据检索方法。
45.本发明提供的数据检索方法,通过将与查询信息相匹配的目标目录条目的属性信息发送至客户端,以使客户端通过属性信息检索目标数据,各数据提供者无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,进而保证了各数据提供者数据的安全性。
附图说明
46.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
47.图1是本发明提供的数据检索方法的流程示意图;
48.图2是本发明提供的数据检索方法的处理过程示意图之一;
49.图3是本发明提供的数据检索方法的处理过程示意图之二;
50.图4是本发明提供的数据检索装置的结构示意图;
51.图5是本发明提供的电子设备的结构示意图。
具体实施方式
52.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
53.首先,对本发明一个或多个实施例设计的名词术语进行解释。
54.区块链:“区块链”是一种特殊的分布式数据库技术,它适合存储简单的、有先后关系的、能在系统内验证的数据,用密码学和共识算法保证了数据的不可篡改和不可伪造。从科技层面来看,区块链涉及数学、密码学、互联网和计算机编程等很多科学技术问题。从应用视角来看,区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础。而区块链丰富的应用场景,基本上都基于区块链能够解决信息不对称问题,实现多个主体之间的协作信任与一致行动。
55.元数据:又称中介数据、中继数据,为描述数据的数据,元数据是对数据进行的多样化、细粒度、全方位的描述和标签,主要用来支持如指示存储位置、历史数据、文件记录、数据检索等功能。
56.随着互联网技术的发展,由互联网所产生的数据呈爆发式增长,数据使用者对海量互联网数据进行检索,数据提供者的数据得以共享和交换,进而形成了庞大的数据信息网,在方便了数据使用者的同时,也为数据提供者带来巨大的经济价值。
57.目前,数据使用者想要检索数据提供者的数据信息,需要数据提供者将各自的数据托管至数据市场,然后数据使用者基于数据市场对数据提供者的数据进行检索。
58.然而,将数据托管至数据市场会使数据提供者面临数据泄露的风险,因此,数据提供者进行数据交换的积极性不高,从而导致各数据提供者形成了相互独立的数据孤岛。
59.基于上述问题,为了数据使用者在进行数据检索时,充分保障各数据提供者的数据安全,避免各数据提供者发生数据泄露的风险,本发明提供了一种数据检索方法,本发明一个或多个实施例同时涉及一种数据检索装置、一种电子设备、一种非暂态计算机可读存储介质及一种计算机程序产品。
60.下面结合图1-图3对数据检索方法进行详细说明。
61.参见图1,图1是本发明提供的数据检索方法的流程示意图,具体包括步骤101-步骤103。
62.步骤101、接收客户端发送的数据检索请求,其中,数据检索请求中包括查询信息。
63.步骤102、基于查询信息,检索与查询信息相匹配的目标目录条目。
64.步骤103、将目标目录条目的属性信息发送至客户端,以使客户端根据属性信息检索各数据提供者提供的目标数据。
65.本发明提供的数据检索方法,通过将与查询信息相匹配的目标目录条目的属性信息发送至客户端,以使客户端通过属性信息检索目标数据,各数据提供者无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,进而保证了各数据提供者数据的安全性。
66.下面对步骤101-步骤103进行详细描述:
67.步骤101、接收客户端发送的数据检索请求,其中,数据检索请求中包括查询信息。
68.在本实施例中,数据检索请求用于请求检索各数据提供者提供的数据。数据使用者可以利用客户端进行数据检索。
69.具体地,在客户端的显示界面可以设置数据检索窗口,数据使用者可以在客户端显示界面的数据检索窗口输入查询信息。然后客户端基于该查询信息生成数据检索请求。
70.例如,数据使用者可以在客户端显示界面的数据检索窗口输入“医疗、呼吸科、器械”等关键词,然后客户端基于该查询信息生成一个数据检索请求,该数据检索请求用于在数据提供者提供的数据中检索与查询信息相关的数据。
71.在本实施例中,接收客户端发送的数据检索请求的方式有多种,例如可以是数据使用者在输入查询信息时,主动接收客户端发送的基于查询信息生成的数据检索请求;也可以设置预设时长,当经过预设时长时,周期性的接收客户端基于查询信息生成的数据检索请求。本发明对数据检索请求的接收方法不做限定。
72.在本发明实施例一种可能的实现方式中,在接收客户端发送的数据检索请求之前,包括:
73.接收各数据提供者提供的数据信息元组,并基于数据信息元组生成目录条目。
74.具体地,各数据提供者是控制数据并具有数据所有权的用户、组织或机构。
75.在实际应用中,如果数据归个人所有,则数据提供者就是提供数据的用户;若数据归个人、组织、机构共同所有,则数据提供者就是提供数据的用户、组织和机构。具体地,组织、机构可以是各种网络购物平台、在线视频平台或者数据存储平台等。
76.在本实施例中,在接收客户端发送的数据检索请求之前,还需要接收各数据提供者提供的数据信息元组,然后将数据信息元组按照预设的格式进行规范化组织,生成目录条目。其中,目录条目是用于描述数据信息元组的数据结构,根据目录条目中的属性信息,可以检索到各数据提供者提供的数据信息元组所对应的目标数据。具体地,属性信息包括url、元数据、数据完整性证明以及所有权声明。
77.将各数据提供者提供的数据信息元组按照预设的格式进行规范化组织,其目的是为了更快更准确的读取各数据提供者提供的数据信息元组,进而提高数据检索的准确性。
78.进一步地,将各数据提供者提供的数据信息元组按照预设的格式进行规范化组织的方式有多种,例如可以将各数据提供者的数据信息元组以预设长度的字符串形式进行表
示。例如“suufuts7wwoyjn+vigsfzg3urx=”就是将某数据提供者提供的数据信息元组以字符串形式进行表示的结果。
79.在上述实施方式中,在接收客户端发送的数据检索请求之前,还需要接收各数据提供者提供的数据信息元组,并基于数据信息元组生成目录条目。通过上述方法,并不需要存储各数据提供者提供的真实数据,而是将各数据提供者的数据信息元组以目录条目的形式进行存储,从而避免了各数据提供者数据泄露的风险,从而提高了各数据提供者数据的安全性。
80.在本发明实施例一种可能的实现方式中,数据目录检索平台包括区块链网络;
81.在接收各数据提供者提供的数据信息元组之前,具体还包括以下步骤:
82.接收各数据提供者发送的注册请求;
83.基于注册请求,调用区块链网络向各数据提供者分配密钥对。
84.在本实施例中,在接收各数据提供者提供的数据信息元组之前,需要接收各数据提供者发送的注册请求,其中,注册请求是指各数据提供者在区块链网络上进行注册的请求。
85.当接收到各数据提供者发送的注册请求之后,便基于注册请求,调用区块链网络分配一个或者多个节点设备给各数据提供者。同时,还要基于注册请求,向各数据提供者分配密钥对,以使各数据提供者能够基于密钥对对url所指向的真实数据进行数字签名,进而生成数据完整性证明,从而保证了接收到的各数据提供者的真实数据的完整性。
86.在上述实施方式中,在接收各数据提供者提供的数据信息元组之前,需要接收各数据提供者发送的注册请求,并基于注册请求,调用区块链网络向各数据提供者分配密钥对。通过上述方法,各数据提供者能够基于密钥对对url所指向的真实数据进行数字签名,进而生成数据完整性证明,从而保证了接收到的各数据提供者的真实数据的完整性。
87.进一步地,在本实施例中,密钥对包括公钥和私钥;
88.数据信息元组包括:
89.a)统一资源定位符(uniform resource locator,url);
90.具体地,url是用于指定信息位置的表示方法,在本实施例中,url指向了数据提供者提供的真实数据的位置,基于url即可确定出各数据提供者真实数据的存储地址。
91.进一步地,在本实施例中的真实数据中可以包含各种用户数据。
92.例如,用户数据可以包括用户标识数据、用户行为数据等。其中,用户标识数据可以是用户姓名、手机号码、居住地、职业、教育程度等;用户行为数据是指用户的行为信息,例如可以是登陆时间、登陆时长、访问的商品类型、页面停留时间等。
93.数据使用者可以检索各数据提供者提供的用户信息,实现向用户进行个性化信息推荐、精准数据检索等功能。
94.b)元数据;
95.具体地,元数据又称中介数据、中继数据,为描述数据的数据,元数据是对数据进行的多样化、细粒度、全方位的描述和标签。
96.在本实施例中,元数据是数据提供者提供的数据信息元组中,url所指向的真实数据的描述和标签。
97.例如,某url所指向的真实数据是有关医疗领域的数据信息,则元数据可以是“医
疗、医院、呼吸科”等关键词。
98.c)数据完整性证明;
99.在本实施例中,数据完整性证明是各数据提供者利用私钥对url所指向的真实数据进行签名生成的。数据完整性证明用于对数据信息元组的完整性进行验证。
100.具体地,各数据提供者利用私钥对url所指向的真实数据进行签名,可以通过以下方式实现:
101.首先需要利用哈希函数对url所指向的真实数据进行哈希计算,得到url所指向的真实数据的消息摘要(message digest),其中,哈希函数是一种“压缩函数”,利用哈希函数可以把任意长度的输入经由散列函数算法(例如sha-1、sha-2等密码散列函数)变换成固定长度的输出,该输出的哈希值就是消息摘要,也称数字摘要。在得到url和元数据的消息摘要之后,各数据提供者利用自己私钥对消息摘要进行签名,形成各数据提供者独有的数字签名。
102.相应地,当数据使用者需要对真实数据的完整性进行验证时,需要将url所指向的真实数据同样进行一次哈希计算,生成消息摘要,然后与数据完整性证明中的消息摘要进行对比,若完全一致则表示真实数据是完整的,未经过变动的数据。
103.d)所有权声明;
104.具体地,所有权声明是各数据提供者将公钥与数据提供者的身份信息进行关联生成的。所有权声明用于对数据信息元组的真实性进行验证。
105.其中,所有权声明中的公钥既可表明数据提供者的身份,又可用于验证数据完整性证明的真实性。身份信息是数据提供者的身份信息,例如可以是用于联系数据提供者的邮箱、电话号码等。
106.上述实施方式中,密钥对包括公钥和私钥;数据信息元组包括url、元数据、数据完整性证明以及所有权声明。其中,url指向了数据提供者提供的真实数据的位置,基于url即可确定出各数据提供者真实数据的存储地址。各数据提供者只需要上传指向真实数据的url,无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,同时数据完整性证明以及所有权声明为真实数据的完整性和数据所有权提供了保障。
107.在本发明实施例一种可能的实现方式中,在基于数据信息元组生成目录条目之后,包括:
108.将目录条目提交至区块链网络中的节点设备进行存储。
109.在本实施例中,区块链网络具体可指一个各节点设备通过共识机制达成的、具有分布式数据存储结构的p2p网络系统,它适合存储简单的、有先后关系的、能在系统内验证的数据,用密码学和共识算法保证了数据的不可篡改和不可伪造。区块链网络中的节点设备存储有各数据提供者提交的目录条目。
110.之所以将目录条目提交至区块链网络中的节点设备进行存储,是因为从各数据提供者的视角来看,区块链网络是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。这些特点保证了区块链网络的“诚实”与“透明”,为区块链网络创造信任奠定基础。
111.因此,各数据提供者可以放心的将目录条目提交至区块链网络中的节点设备进行
存储,并且各数据提供者之间通过区块链网络构建出了一个可信的信息共享环境,因此不需要担心用户隐私数据泄露的风险。并且还可以利用区块链网络中存储的目录条目,对获取到的目录条目的完整性和真实性进行验证,从而保障了检索到的目标数据的完整性和真实性。
112.步骤102、基于查询信息,检索与查询信息相匹配的目标目录条目。
113.在本实施例中,目录条目是根据各数据提供者提供的数据信息元组生成,其中,每个目录条目包含有url、元数据、数据完整性证明和所有权声明。基于查询信息,可以检索到与查询信息相匹配的目标目录条目,然后将目标目录条目发送给客户端,以使客户端能够根据目标目录条目中的属性信息,在各数据提供者的真实信息中查询出目标信息。
114.具体地,在本发明实施例一种可能的实现方式中,基于查询信息,检索与查询信息相匹配的目标目录条目,具体可以通过以下方式实现:
115.将查询信息与目录条目的元数据进行匹配,确定目标元数据,其中,目标元数据携带有目标目录条目的索引信息;
116.根据索引信息,确定目标目录条目。
117.在本实施例中,首先需要将查询信息与目录条目中的元数据进行匹配,确定目标元数据。其中,每个目录条目的元数据携带有目录条目的索引信息。也即,索引信息用于查询元数据所对应的目录条目,基于索引信息,元数据与目录条目之间构建有映射关系,根据索引信息可以查询到元数据所对应的目录条目。
118.在实际应用中,将查询信息与目录条目中的元数据进行匹配的方式有多种,例如可以利用关键词匹配的方法,也可以利用语义相似度匹配的方法,还可以利用神经网络模型的方法对查询信息与目录条目的元数据进行匹配。本发明对匹配的方式不做限定。
119.具体地,例如,可以利用关键词匹配的方法:例如目录条目a中的元数据为“医疗、器械、医院、呼吸科”,查询信息为关键词“医院”,则将目录条目a作为目标目录条目。
120.又例如,可以利用无监督算法提取元数据中的关键词,然后将元数据中的关键词与查询信息中的关键词进行匹配。具体地,可以利用词频-逆向文本频率(term frequency-inverse document frequency,tf-idf)的方法提取元数据中的关键词。tf-idf中的tf指的是词频,即某一个给定的目标词在该文本中出现的频率,具体可以通过以下公式(1)计算得到:
[0121][0122]
其中,f指的是目标词在文本中出现的次数,w指的是文本的总词数。
[0123]
idf指的是逆向文本频率,为了准确的提取出关键词,这时需要引入一个语料库,语料库用来模拟语言的使用环境,例如,语料库可以是预设的包含各个领域内容的文本库,idf具体可以通过以下公式(2)计算得到:
[0124][0125]
其中,r指的是语料库中的文本总数,y指的是语料库中包含目标词的文本数;
[0126]
目标词在文本中的词频-逆向文本频率tf-idf越大,表示目标词在文本中的关键性程度就越高,就越能作为文本中的关键词,tf-idf具体可以通过以下公式(3)计算得到:
[0127]
tf-idf=tf*idf
ꢀꢀꢀ
(3)
[0128]
又例如,还可以利用语义相似度算法,计算查询信息中的关键词与目录条目中的元数据之间的相似度,若相似度达到预设阈值,则表示二者匹配成功。
[0129]
具体地,可以利用点互信息(pointwise mutual information,pmi)来计算查询信息中的关键词与目录条目中的元数据之间的相似度,pmi可以来衡量两个词语之间的相似程度,pmi越大,则表示两个事物之间的相似度就越高,反之,pmi越小,两个事物之间的相似度就越小。
[0130]
具体可以通过以下方式实现:首先需要引入一个语料库,语料库用来模拟语言的使用环境,然后预设一个相似度阈值作为第一预设阈值;将查询信息中的关键词与目录条目中的元数据进行语义相似度对比,得到语义相似度对比结果。
[0131]
例如,查询信息中的关键词为“医院”,目录条目b的元数据为“医生”,分别计算出“医院”在语料库中出现的概率、“医生”在语料库中出现的概率以及“医院”、“医生”同时在语料库中出现的概率,然后利用pmi算法计算查询信息中的关键词“医院”与目录条目b中的元数据之间的语义相似度,在相似度达到第一预设阈值的情况下,则确定查询信息与目录条目b匹配成功,则将目录条目b作为目标目录条目。具体可以通过以下公式(4)计算得出查询信息中的关键词与元数据之间的语义相似度:
[0132][0133]
其中,x,y分别表示不同的词语;p(x)表示词语x在语料库中出现的概率;p(y)表示词语y在语料库出现的概率;p(x,y)表示词语x、y同时在语料库中出现的概率;pmi越大,则表示x、y之间的相似度越高;反之,相似度越低。
[0134]
还可以利用自然语言处理模型(natural language processing,nlp)、长短期记忆网络模型(long short term memory,lstm)、卷积神经网络模型(convolutional neural network,cnn)等神经网络模型对查询信息与目录条目的元数据进行匹配,也即,将查询信息与目录条目的元数据输入神经网络模型中,相应地,神经网络模型输出查询信息与目录条目的元数据的匹配度,若匹配度达到预设阈值,则匹配成功。本发明对匹配的方式不做限定。
[0135]
进一步地,在将查询信息与目录条目的元数据进行匹配,确定出目标元数据之后,便根据目标元数据携带的索引信息,确定出目标目录条目。
[0136]
在上述实施方式中,通过将查询信息与目录条目的元数据进行匹配,确定出目标元数据,然后根据目标元数据携带的索引信息,确定目标目录条目,以使客户端通过目标目录条目检索目标数据,各数据提供者无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,进而保证了各数据提供者数据的安全性。
[0137]
在本发明实施例一种可能的实现方式中,在检索与查询信息相匹配的目标目录条目之后,包括:
[0138]
将目标目录条目与区块链网络中存储的目录条目进行匹配;
[0139]
在匹配成功的情况下,将目标目录条目的属性信息发送至客户端。
[0140]
在本实施例中,在检索与查询信息相匹配的目标目录条目之后,为了保证目标目录条目的真实性及完整性,还需要将目标目录条目与区块链网络中存储的目录条目进行匹
配。
[0141]
具体地,例如可以将目标目录条目c的url、元数据、数据完整性证明、所有权声明与区块链网络中存储的目录条目c的url、元数据、数据完整性证明、所有权声明进行匹配。在匹配成功的情况下,则表示目标目录条目为真实且完整的。在确定目标目录条目的真实性和完整性之后,便将目标目录条目的属性信息发送至客户端。
[0142]
通过上述方法,保证目标目录条目的真实性及完整性,进而保证了各数据提供者数据的真实性及完整性。
[0143]
步骤103、将目标目录条目的属性信息发送至客户端,以使客户端根据属性信息检索各数据提供者提供的目标数据。
[0144]
在本实施例中,当检索到与查询信息相匹配的目标目录条目之后,需要将目标目录条目的属性信息发送至客户端。具体地,可以将目标目录条目的全部属性信息发送至客户端,也可以将部分属性信息发送至客户端。
[0145]
例如:可以将目标目录条目的url、元数据、数据完整性证明及所有权声明发送至客户端,也可以将目标目录条目的url、数据完整性证明及所有权声明发送至客户端。
[0146]
在将目标目录条目的属性信息发送至客户端之后,客户端便根据属性信息中的url,检索各数据提供者提供的数据中与url所对应的目标数据。
[0147]
在本发明实施例一种可能的实现方式中,在将目标目录条目的属性信息发送至客户端之后,包括:
[0148]
接收客户端发送的验证指令;
[0149]
将目标条目的属性信息与数据信息元组进行匹配,并将匹配结果发送至客户端。
[0150]
在本实施例中,为了保证客户端检索到的目标数据的完整性和真实性,在将目标目录条目的属性信息发送至客户端之后,还需要接收客户端发送的验证指令。
[0151]
在接收到验证指令后,将目标条目属性信息中的数据完整性证明与各数据提供者提供的数据信息元组中的数据完整性证明进行匹配,以保证目标数据的完整性;将目标条目属性信息中的所有权声明与各数据提供者提供的数据信息元组中的所有权声明进行匹配,以保证目标数据的真实性。通过上述方法,保证了客户端检索到的目标数据的真实性及完整性。
[0152]
在本发明实施例一种可能的实现方式中,数据目录检索平台包括目录管理单元、区块链网络、元数据管理单元及数据检索单元;其中,
[0153]
目录管理单元,用于接收各数据提供者提供的数据信息元组生成目录条目,并将目录条目交至区块链网络中的节点设备;
[0154]
区块链网络的节点设备,用于存储目录条目;
[0155]
元数据管理单元,用于从区块链网络的节点设备中同步元数据;
[0156]
数据检索单元,用于从元数据管理单元中确定目标元数据,其中,目标元数据携带有目标目录条目的索引信息;根据索引信息,确定目标目录条目,并将目标目录条目的属性信息发送至客户端。
[0157]
在上述实施方式中,通过将与查询信息相匹配的目标目录条目的属性信息发送至客户端,以使客户端通过属性信息检索目标数据,各数据提供者无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,进而保证了各数据
提供者数据的安全性。
[0158]
下述结合图2,以本发明提供的数据检索方法在进行数据交换的应用为例,对数据检索方法进行进一步说明。参见图2,图2是本发明提供的数据检索方法的处理过程示意图之一。
[0159]
在本实施例中,数据提供者可以是组织、机构、个人;各数据提供者都可以自下而上的管理属于自己的数据库(也称数据源),并向数据库上传数据,即组织可以将真实数据上传至数据库a、机构可以将真实数据上传至数据库b、个人可以将真实数据上传至数据库c,即每个数据库中存储着各数据提供者的真实数据。
[0160]
然后各数据提供者基于数据库中的真实数据,生成对应的数据信息元组(url、元数据、数据完整性证明、所有权声明),然后将数据信息元组发送至面向数据交换的数据目录系统(即上文提及的目录检索平台),进而生成目录条目;
[0161]
当面向数据交换的数据目录系统接收到数据交换客户端(即上文提及的客户端)发送的数据检索请求后,便基于检索请求中携带的查询信息,进行数据检索,即检索与查询信息相匹配的目标目录条目,并将目标目录条目的属性信息发送至数据交换客户端,以使数据交换客户端基于属性信息检索并验证目标数据。
[0162]
在上述实施方式中,通过将与查询信息相匹配的目标目录条目的属性信息发送至数据交换客户端,以使数据交换客户端通过属性信息检索目标数据,各数据提供者无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,进而保证了各数据提供者数据的安全性。
[0163]
参见图3,图3是本发明提供的数据检索方法的处理过程示意图之二。
[0164]
面向数据交换的数据目录系统(即上文提及的目录检索平台)包括目录管理单元、区块链网络、元数据管理单元及数据检索单元。
[0165]
该数据检索方法的处理过程分别包括数据发布环节和数据检索环节;其中,
[0166]
数据发布环节的流程如下:
[0167]
第一步,数据提供者管理数据;即数据提供者基于属于自己数据库(也称数据交换外部数据源)中的数据生成数据信息元组(即url、元数据、数据完整性证明及所有权声明);
[0168]
第二步,将数据信息元组发送至目录管理单元,目录管理单元基于数据信息元组生成目录条目,并将目录条目提交至区块链网络中的节点设备中,其中,区块链网络中有节点设备1、节点设备2、

、节点设备n;
[0169]
第三步,元数据管理单元从区块链网络中同步目录条目中的元数据。
[0170]
数据检索环节的流程如下:
[0171]
第一步,数据使用者向数据交换客户端(即上文提及的客户端)发送数据检索指令;
[0172]
第二步,数据交换客户端基于数据检索指令,向数据检索单元发送数据检索请求,其中,数据检索请求中包括查询信息;
[0173]
第三步,数据检索单元从元数据管理单元中检索目标元数据,其中,目标元数据携带有所述目标目录条目的索引信息;
[0174]
第四步,数据检索单元基于目标元数据所携带的目标目录条目的索引信息,从目录管理单元中获取目标目录条目;
[0175]
第五步,数据检索单元将目标目录条目与区块链网络中的目录条目进行匹配,验证目标目录条目;
[0176]
第六步,数据检索单元向数据交换客户端发送目标目录条目的属性信息(url、数据完整性证明);
[0177]
第七步,数据交换客户端基于目标目录条目的属性信息,从数据交换外部数据源处检索并验证目标数据。
[0178]
在上述实施方式中,通过将与查询信息相匹配的目标目录条目的属性信息发送至数据交换客户端,以使数据交换客户端通过属性信息检索目标数据,各数据提供者无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,进而保证了各数据提供者数据的安全性。
[0179]
下面对本发明提供的数据检索装置进行描述,下文描述的数据检索装置与上文描述的数据检索方法可相互对应参照。
[0180]
图4是本发明提供的数据检索装置的结构示意图。
[0181]
接收模块401,用于接收客户端发送的数据检索请求,其中,数据检索请求中包括查询信息;
[0182]
检索模块402,用于基于查询信息,检索与查询信息相匹配的目标目录条目;
[0183]
发送模块403,用于将目标目录条目的属性信息发送至客户端,以使客户端根据属性信息检索各数据提供者提供的目标数据。
[0184]
可选地,接收模块401,进一步用于:
[0185]
接收各数据提供者提供的数据信息元组,并基于数据信息元组生成目录条目。
[0186]
可选地,数据目录检索平台包括区块链网络;
[0187]
接收模块401,进一步用于:
[0188]
接收各数据提供者发送的注册请求;
[0189]
基于注册请求,调用区块链网络向各数据提供者分配密钥对。
[0190]
可选地,密钥对包括公钥和私钥;
[0191]
数据信息元组包括:
[0192]
url;
[0193]
元数据;
[0194]
数据完整性证明,其中,数据完整性证明是各数据提供者利用私钥对url所指向的真实数据进行签名生成的;
[0195]
所有权声明,其中,所有权声明是各数据提供者将公钥与所述数据提供者的身份信息进行关联生成的。
[0196]
可选地,接收模块401,进一步用于:
[0197]
将目录条目提交至区块链网络中的节点设备进行存储。
[0198]
可选地,检索模块402,进一步用于:
[0199]
将查询信息与目录条目的元数据进行匹配,确定目标元数据,其中,目标元数据携带有目标目录条目的索引信息;
[0200]
根据索引信息,确定目标目录条目。
[0201]
可选地,检索模块402,进一步用于:
[0202]
将目标目录条目与区块链网络中存储的目录条目进行匹配;
[0203]
在匹配成功的情况下,将目标目录条目的属性信息发送至客户端。
[0204]
可选地,发送模块403,进一步用于:
[0205]
接收客户端发送的验证指令;
[0206]
将目标条目的属性信息与数据信息元组进行匹配,并将匹配结果发送至客户端。
[0207]
可选地,数据目录检索平台包括目录管理单元、区块链网络、元数据管理单元及数据检索单元;其中,
[0208]
所述目录管理单元,用于接收各数据提供者提供的数据信息元组生成目录条目,并将所述目录条目交至所述区块链网络中的节点设备;
[0209]
所述区块链网络的节点设备,用于存储所述目录条目;
[0210]
所述元数据管理单元,用于从所述区块链网络的节点设备中同步元数据;
[0211]
所述数据检索单元,用于从所述元数据管理单元中确定所述目标元数据,其中,所述目标元数据携带有所述目标目录条目的索引信息;根据所述索引信息,确定所述目标目录条目,并将所述目标目录条目的属性信息发送至所述客户端。
[0212]
本发明提供的数据检索装置,通过接收客户端发送的数据检索请求,其中,数据检索请求中包括查询信息;然后基于查询信息,检索与查询信息相匹配的目标目录条目;将目标目录条目的属性信息发送至客户端,以使客户端根据属性信息检索各数据提供者中的目标数据。将与查询信息相匹配的目标目录条目的属性信息发送至客户端,以使客户端通过属性信息检索目标数据,各数据提供者无需将真实数据托管至数据市场,从而避免了客户端直接对各数据提供者的真实信息进行查询,进而保证了各数据提供者数据的安全性。
[0213]
图5是本发明提供的电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communications interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行数据检索方法,该方法包括:
[0214]
接收客户端发送的数据检索请求,其中,数据检索请求中包括查询信息;
[0215]
基于查询信息,检索与查询信息相匹配的目标目录条目;
[0216]
将目标目录条目的属性信息发送至客户端,以使客户端根据属性信息检索目标数据。
[0217]
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0218]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的数据检索方法,该方法包括:
[0219]
接收客户端发送的数据检索请求,其中,数据检索请求中包括查询信息;
[0220]
基于查询信息,检索与查询信息相匹配的目标目录条目;
[0221]
将目标目录条目的属性信息发送至客户端,以使客户端根据属性信息检索目标数据。
[0222]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的数据检索方法,该方法包括:
[0223]
接收客户端发送的数据检索请求,其中,数据检索请求中包括查询信息;
[0224]
基于查询信息,检索与查询信息相匹配的目标目录条目;
[0225]
将目标目录条目的属性信息发送至客户端,以使客户端根据属性信息检索目标数据。
[0226]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0227]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0228]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1