CN108573026B - 一种数据流通方法及装置、存储介质、服务器 - Google Patents
一种数据流通方法及装置、存储介质、服务器 Download PDFInfo
- Publication number
- CN108573026B CN108573026B CN201810209695.2A CN201810209695A CN108573026B CN 108573026 B CN108573026 B CN 108573026B CN 201810209695 A CN201810209695 A CN 201810209695A CN 108573026 B CN108573026 B CN 108573026B
- Authority
- CN
- China
- Prior art keywords
- data
- splitting
- demander
- query
- request
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种数据流通方法及装置、存储介质、服务器,所述数据流通方法包括:接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识;按照数据供方的不同拆分所述查询请求,以得到拆分请求;将所述拆分请求发送至对应的数据供方;接收各个数据供方反馈的数据查询结果;根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方。通过本发明提供的技术方案,易于为数据需方查找到合适的数据,减小数据需方寻找适合数据源的难度,降低数据流通成本,并可以提高数据覆盖率,增强数据供需双方的紧密程度。
Description
技术领域
本发明涉及数据流通领域,具体地涉及一种数据流通方法及装置、存储介质、服务器。
背景技术
随着互联网技术的快速发展,各行各业都沉淀海量数据,不同行业所需的数据类型和数据量也随之增加,数据配送量巨大,数量级达到亿级数量,数据流通已成为必然趋势。
现有的数据流通模式主要采用点对点数据交易模式,也即从单一数据供方流转到单一数据需方,按需、异步完成数据配送。即便存在多数据源的数据供应,点对点数据交易方案也无法为数据需求方提供来自多数据源的数据,使得数据需方无法获得多个数据供方的数据补充,阻碍了数据流通。另外,点对点的数据流通难以受到政府相关部门或者行业的监管,可能会侵犯用户隐私。随着数据需方的需求逐渐呈现多元化趋势,数据需方为获得所需的数据信息,很多时候需要来自多数据源的数据支持。现有数据配送方案无法满足多数据供需双方的数据流通,难以满足数据需方的个性化数据配送需求。
如何从多个数据供方获得数据需方所需数据,如何为数据需方寻找和配送数据,减小数据需方寻找适合数据源的难度,已经成为数据流通领域中亟待解决的技术问题之一。
发明内容
本发明解决的技术问题是如何为数据需方寻找和配送数据,减小数据需方寻找适合数据源的难度,降低数据流通成本,并可以提高数据覆盖率,增强数据供需双方的紧密程度。
为解决上述技术问题,本发明实施例提供一种数据流通方法,所述数据流通方法包括:接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识;按照数据供方的不同拆分所述查询请求,以得到拆分请求;将所述拆分请求发送至对应的数据供方;接收各个数据供方反馈的数据查询结果;根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方。
可选的,所述数据流通方法还包括:将各个数据供方反馈的数据查询结果的至少一部分存入缓存中。
可选的,所述数据流通方法还包括:在接收到所述至少一个数据需方的新的查询请求时,优先从所述缓存中的数据查询结果中寻找并反馈匹配的结果。
可选的,所述数据流通方法还包括:删除所述缓存中超出预设生命周期的数据查询结果。
可选的,所述按照数据供方的不同拆分所述查询请求,以得到拆分请求包括:根据数据供方的不同,对每一数据需方的查询请求进行拆分,以得到每一数据需方的拆分子请求;将各个数据需方的属于同一数据供方的拆分子请求合并,并进行去重,以得到所述拆分请求。
可选的,所述根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方包括:根据各个数据需方的查询请求,对每一数据供方的数据查询结果进行拆分,以得到每一数据供方的拆分子结果;将各个数据供方的属于同一数据需方的拆分子结果合并,以得到所述拆分结果并发送至对应的数据需方。
可选的,通过伪供方前置机接收所述至少一个数据需方的查询请求,并通过所述伪供方前置机将所述拆分结果发送至数据需方。
可选的,通过伪需方前置机将所述拆分请求发送至对应的数据供方,并通过所述伪需方前置机接收所述数据供方反馈的数据查询结果。
为解决上述技术问题,本发明实施例还提供一种数据流通装置,所述数据流通装置包括:第一接收模块,适于接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识;拆分模块,适于按照数据供方的不同拆分所述查询请求,以得到拆分请求;发送模块,适于将所述拆分请求发送至对应的数据供方;第二接收模块,适于接收各个数据供方反馈的数据查询结果;拆分发送模块,适于根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方。
可选的,所述数据流通装置还包括:存储模块,适于将各个数据供方反馈的数据查询结果的至少一部分存入缓存中。
可选的,所述数据流通装置还包括:搜索模块,适于在接收到所述至少一个数据需方的新的查询请求时,优先从所述缓存中的数据查询结果中寻找并反馈匹配的结果。
可选的,所述数据流通装置还包括:删除模块,适于删除所述缓存中超出预设生命周期的数据查询结果。
可选的,所述拆分模块包括:第一拆分子模块,适于根据数据供方的不同,对每一数据需方的查询请求进行拆分,以得到每一数据需方的拆分子请求;合并去重子模块,适于将各个数据需方的属于同一数据供方的拆分子请求合并,并进行去重,以得到所述拆分请求。
可选的,所述拆分发送模块包括:第二拆分子模块,适于根据各个数据需方的查询请求,对每一数据供方的数据查询结果进行拆分,以得到每一数据供方的拆分子结果;合并发送子模块,适于将各个数据供方的属于同一数据需方的拆分子结果合并,以得到所述拆分结果并发送至对应的数据需方。
可选的,所述数据流通装置还包括:伪供方前置机模块,适于通过伪供方前置机接收所述至少一个数据需方的查询请求,并通过所述伪供方前置机将所述拆分结果发送至数据需方。
可选的,所述数据流通装置还包括:伪需方前置机模块,适于通过伪需方前置机将所述拆分请求发送至对应的数据供方,并通过所述伪需方前置机接收所述数据供方反馈的数据查询结果。
为解决上述技术问题,本发明实施例还提供一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述数据流通方法的步骤。
为解决上述技术问题,本发明实施例还提供一种服务器,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述数据流通方法的步骤。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
本发明实施例提供一种数据流通方法,首先接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识,从而可以确定全部待查询数据的标识;其次按照数据供方的不同拆分所述查询请求,也即根据能够提供数据查询结果的各个数据供方对所述查询请求进行拆分,以得到拆分请求;然后将所述拆分请求发送至对应的数据供方;之后接收各个数据供方反馈的数据查询结果;最后根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方。通过本发明提供的技术方案,可以将多个数据需方的查询请求看作是单个数据数量更大的查询请求,并根据数据供方的不同对所述查询请求进行拆分,并将拆分请求发送至对应的数据供方,根据数据需方的个性化需求为其寻找和配送数据,减小了数据需求方寻找适合数据源的难度,并可以增强数据需方和数据供方的紧密程度,提高数据覆盖率,为数据需方提供稳定、海量的多源数据,降低数据流通成本。
进一步,在接收到所述至少一个数据需方的新的查询请求时,优先从所述缓存中的数据查询结果中寻找并反馈匹配的结果。通过本发明提供的技术方案,可以优先查找缓存中的数据查询结果,很大程度上降低了数据流通过程中的数据配送的时间开销。
进一步,所述按照数据供方的不同拆分所述查询请求,以得到拆分请求包括:根据数据供方的不同,对每一数据需方的查询请求进行拆分,以得到每一数据需方的拆分子请求;将各个数据需方的属于同一数据供方的拆分子请求合并,并进行去重,以得到所述拆分请求,通过本发明提供的技术方案,可以根据数据需方的个性化需求,将不同数据需方的查询请求进行合并、去重,进一步降低数据配送成本和数据购买成本。
附图说明
图1是本发明实施例的一种数据流通方法的流程示意图;
图2是本发明实施例的一种典型的数据流通方法采用的数据资源组网的系统架构示意图;
图3是本发明实施例的一种数据流通装置的结构示意图。
具体实施方式
本领域技术人员理解,如背景技术所言,现有技术采用点对点数据交易,数据需方寻找适合数据源的难度高,既可能导致数据需方无法获得多源数据、数据覆盖度小,又难以减小降低数据流通成本。
本发明实施例提供一种数据流通方法,首先接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识,从而可以确定全部待查询数据的标识;其次按照数据供方的不同拆分所述查询请求,也即根据能够提供数据查询结果的各个数据供方对所述查询请求进行拆分,以得到拆分请求;然后将所述拆分请求发送至对应的数据供方;之后接收各个数据供方反馈的数据查询结果;最后根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方。通过本发明提供的技术方案,可以将各个数据需方的查询请求看作是一个数据数量更大的查询请求,并根据数据供方的不同对所述查询请求进行拆分,并将拆分请求发送至对应的数据供方,根据数据需方的个性化需求为其寻找和配送数据,减小了数据需求方寻找适合数据源的难度,并可以增强数据需方和数据供方的紧密程度,提高数据覆盖率,为数据需方提供稳定、海量的多源数据,降低数据流通成本。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图1是本发明实施例的一种数据流通方法的流程示意图。所述数据流通方法可以包括以下步骤:
步骤S101:接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识;
步骤S102:按照数据供方的不同拆分所述查询请求,以得到拆分请求;
步骤S103:将所述拆分请求发送至对应的数据供方;
步骤S104:接收各个数据供方反馈的数据查询结果;
步骤S105:根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方。
具体而言,在步骤S101中,服务器可以从一个或多个数据需方接收查询请求,所述查询请求中可以包括待查询数据的标识和请求的参数信息。其中,服务器可以是单台服务器,也可以是多台服务器形成的集群。所述查询请求可以是数据量较大的数据文件,例如,可以包含数万条或上亿条待查询数据的标识。所述参数信息可以为所述待查询数据的标识期望获得的数据查询结果。所述待查询数据的标识用于区分不同的待查询数据,例如待查询数据为个人的属性信息时,可以用个人的身份证号码、手机号码等作为标识。
作为一个非限制性实施例,数据需方可以采用超文本传输协议(Hyper TextTransport Protocol,简称HTTP)传输包括所述待查询数据的标识和所述参数信息的查询请求。需要说明的是,数据需方也可以采用其他数据传输协议传输所述查询请求,例如采用文件传输协议(File Transport Protocol,简称FTP)或其他协议。
作为一个非限制性实施例,所述待查询数据的标识可以为身份证号,所述查询请求为查询身份证号对应的人物性别,例如身份证号为220XXX0123,请求查询人物性别(也即参数信息)。
作为又一个非限制性实施例,所述待查询数据的标识可以为手机号码,所述查询请求为查询手机号码对应的人物姓名,例如手机号码为130XXX123,请求查询对应用户的姓名(也即参数信息)。
作为再一个非限制性实施例,所述待查询数据的标识可以为姓名,所述查询请求为查询该用户的手机上网偏好,例如,姓名为张三,请求查询该用户的视频浏览偏好,如音乐KTV、影视剧类别等(也即参数信息)。
需要说明的是,在实际应用中,所述待查询数据的标识可以扩展为其他更多标识,这里不再赘述。
具体实施时,所述服务器还可以预先设置发送所述查询请求的最迟截止时间,并可以与各个数据需方约定在该截止时间之前发送所述查询请求以及对应的数据查询结果的最迟返回时间。
所述服务器可以定时扫描配置的路径,获取各个数据需方的查询请求,接收并存储符合要求的数据需方发送的查询请求。例如,所述待查询数据的标识为手机号码,且符合要求的手机号码为11位正整数,如果接收到的标识为11位,则符合所述要求。如果接收到的标识为9位,则认为所述待查询数据的标识不符合要求,需要进行其他相关处理。
进一步,所述数据需方的查询请求的参数信息可以包括1个或多个属性。例如,所述待查询数据的标识可以为身份证号,此时,所述查询请求的参数信息可以包括3个属性:性别、年龄、手机号码。
在步骤S102中,所述服务器可以将来自不同数据需方的查询请求整合为一个数据数量更大的查询请求,或者所述服务器将来自不同数据需方的查询请求直接当作一个较大的查询请求。
之后,可以按照不同的数据供方拆分该查询请求。对该查询请求进行拆分时,可以将每个数据需方的查询请求进行拆分,并得到该数据需方的拆分子请求。
具体而言,作为一个非限制性实施例,可以按照数据供方进行拆分以得到拆分子请求。优选地,当所述数据需方的查询请求中的参数信息仅有1个属性时,还可以结合预先设定的数据量,并按照数据供方的不同进行拆分以得到拆分子请求。
作为又一个非限制性实施例,当所述数据需方的查询请求中的参数信息有多个属性时,可以结合预先设定的数据量和不同属性的参数信息,并按照数据供方的不同进行拆分以得到拆分子请求。
在得到各个拆分子请求后,可以将属于同一数据供方的拆分子请求整合为一个较大的合并后拆分子请求。由于该合并后拆分子请求包含各个数据需方的至少一部分查询请求,可能存在相同的查询请求,也即存在相同的待查询数据的标识以及相同的参数信息,因而可以对合并后拆分子请求进行去重,删除重复的查询请求,以得到去重的拆分请求。由于数据的配送量巨大,数据级经常在亿级,因而各个数据需方的查询请求的重复率较高,去重后可以
MP1802930显著降低配送成本。
作为一个非限制性实施例,所述服务器可以使用Google提出的分布式计算模型MapReduce(简称MR)作业(Job)将从不同数据需方接收到的查询请求按照数据供方的不同进行拆分,并将传输至相同数据供方的拆分子请求去重,以得到所述拆分请求。
在步骤S103中,所述服务器可以将所述拆分请求发送至对应的数据供方。优选地,发送所述拆分请求前,可以对所述拆分请求按固定文件块大小进行分割,得到文件块较小的文件分片(例如每个文件分片可以包含1000万条数据),从而大大减少由于网络不稳而引起的超大数据文件传输失败的次数。
作为一个非限制性实施例,可以采用HTTP协议将所述拆分请求发送至对应的数据供方。数据供方可以根据所述拆分请求查找对应的数据查询结果。
在步骤S104中,在各个数据供方查找到所述数据查询结果之后,所述服务器可以接收来自各个数据供方返回的数据查询结果。
具体实施中,发送所述拆分请求的HTTP协议还可以携带指示数据查询结果的文件块大小的参数信息。在查找到所述数据查询结果之后,数据供方可以按照所述文件块大小传输数据查询结果。进一步,可以按照所述文件块大小将先查找到的数据查询结果进行处理,并将处理后的数据查询结果优先发送至所述服务器,以避免数据拥塞,减少超大数据文件传输失败的次数。其中,所述文件块大小也可以事先协商确定,无需采用HTTP协议发送。
在步骤S105中,所述服务器可以根据各个数据需方的查询请求拆分所述数据查询结果。
具体而言,可以根据各个数据需方的查询请求,对每一数据供方的数据查询结果进行拆分,以得到属于各个数据需方的拆分子结果。之后,可以将属于同一数据需方的拆分子结果合并得到每一数据需方所需的数据查询结果。接着,可以根据各个数据需方的个性化请求(例如固定大小的文件块)对每一数据需方的数据查询结果进行处理,并将处理结果发送至对应的数据需方。
作为一个非限制性实施例,仍然可以使用分布式计算模型MR Job将从不同数据供方接收到的数据查询结果按照数据需方的不同进行拆分。优选地,可以根据不同数据需方对数据供方返回的数据查询结果进行拆分。之后,将拆分得到的数据查询结果按照每一数据需方的个性化请求进行处理,以得到符合数据需方要求的拆分结果发送至对应的数据需方。
进一步,在得到各个数据供方返回的数据查询结果之后,所述服务器可以将各个数据供方返回的一部分数据查询结果或全部数据查询结果存入缓存中。
具体而言,可以利用高性能缓存建立分布式的缓存集群,之后将数据供方返回的数据查询结果作为热数据存入所述缓存集群,并基于所述缓存集群的数据淘汰策略对所述热数据进行更新,降低重复查询的开销。
作为一个非限制性实施例,所述缓存集群可以对每个数据查询请求及对应的数据查询结果设置生存周期(例如30天)。一旦超出预设的生命周期,就删除所述缓存集群中超出生命周期的数据查询结果。
进一步,一旦所述缓存集群中存储有热数据,就可以在接收到数据需方发送的新的查询请求时,优先从所述缓存集群中的数据查询结果中寻找并反馈匹配的结果。
具体而言,响应于所述数据需方的查询请求,可以优先在所述缓存集群中查找对应的数据查询结果。如果得到所述查询请求的全部数据查询结果,则可以将所述全部数据查询结果返回至所述数据需方。否则,如果仅得到部分数据查询结果,则首先保存该部分数据查询结果。之后,可以按照图1所示的数据流通方法查找得到其余数据查询结果,再整合所述部分数据查询结果和所述其余数据查询结果,以得到所述数据需方所需的数据查询结果,并发送至所述数据需方。
作为一个非限制性实施例,当接收到多个数据需方发送的新的查询请求时,可以优先从所述缓存中的数据查询结果中寻找并反馈匹配的结果。
具体而言,响应于各个数据需方的查询请求,按照数据供方的不同拆分所述查询请求、合并并去重属于同一数据供方的查询请求,得到去重后的拆分请求,具体过程可以参见图1所述的数据流通方法,这里不再赘述。之后,可以对所述拆分请求,优先在所述缓存集群中查找对应的数据查询结果。如果得到所述查询请求的全部数据查询结果,则可以将属于同一数据需方的数据查询结果合并,并将合并后的数据查询结果返回至对应的数据需方。否则,如果仅得到部分查询结果,则可以首先保存该部分数据查询结果,并按照图1所示的数据流通方法查找其余数据查询结果。之后,整合所述部分数据查询结果和所述其余数据查询结果,以得到每一数据需方所需的数据查询结果,并发送至对应的数据需方。
根据所述缓存集群中的热数据来查找各个数据需方的查询请求所需的数据查询结果,可以减少传输给数据供方的查询请求的数量,大大降低了数据配送的时间开销。
进一步,所述服务器可以包括伪供方前置机。可以通过伪供方前置机接收所述至少一个数据需方的查询请求,并通过所述伪供方前置机将属于同一数据需方的拆分子结果合并得到的所述拆分结果发送至数据需方。进一步,所述服务器可以包括伪需方前置机。具体而言,可以通过伪需方前置机将所述拆分请求发送至对应的数据供方,并通过所述伪需方前置机接收所述数据供方反馈的数据查询结果。需要说明的是,关于伪供方前置机和伪需方前置机的工作原理、工作形式可以参考图1所示的数据流通方法。
图2是本发明实施例的一种典型的数据流通方法采用的数据资源组网的系统架构示意图。参考图2,所述数据流通方法的数据资源组网的系统架构(为简便,下文称为系统架构)200可以包括:需方前置机1、供方前置机2、伪供方前置机3、伪需方前置机4、数据管理系统(Data Management System,简称DMS)5、Hadoop分布式文件系统(Hadoop DistributedFile System,简称HDFS)6。
通过上述各个部分的有效配合,可以形成简化的数据资源网络。其中,每个部分可以为单个服务器或多个服务器组成的集群。每个部分可以扩展为多个服务器或服务器集群互相连接的服务器子网。在数据流通过程中,数据(如查询请求或数据查询结果)可以基于文件形式在各个部分进行流转,从而完成数据配送任务,实现数据流通。
下面以多个数据需方购买单一数据供方为例,介绍数据供需双方的数据文件在所述数据资源网络内的数据流通过程。
具体而言,参考图2,首先执行步骤S1:多个数据需方(图未示)通过各自的需方前置机1将各自的查询请求(也即数据文件)及相关参数信息通过HTTP协议发送给伪供方前置机3;
进一步执行步骤S2:伪供方前置机3将传送到本地的查询请求通过安全文件传送协议(Secure File Transfer Protocol,简称SFTP)发送并存储至DMS5的指定目录中。采用SFTP协议传输可以使得数据文件在数据流转过程中更安全,不易侵犯用户隐私。与此同时,HDFS 6可以通过执行定时任务在该目录下推送已经传输完成的查询请求文件至另一个HDFS 6;
进一步执行步骤S3:DMS 5将先后接收到的各个数据需方的参数信息记录在内存中,并在指定时间(例如,最迟截止时间)通知HDFS 6对指定的查询请求进行去重操作;
进一步执行步骤S4:HDFS 6可以通过MR Job完成指定的查询请求去重。之后,将去重后的拆分请求通过SFTP协议推送到DMS 5的指定目录下;
进一步执行步骤S5:DMS 5可以比较接收的查询请求与去重后的拆分请求的统计结果,并进行记录。DMS 5可以通过SFTP协议将步骤S4中DMS 5的指定目录下的所述拆分请求发送至伪需方前置机4;
进一步执行步骤S6:伪需方前置机4通过HTTP协议将所述拆分请求发送至供方前置机2;
进一步执行步骤S7:供方前置机2接收到所述拆分请求后,在本地根据拆分请求检索数据,并通过供方前置机2返回数据查询结果至伪需方前置机4;
进一步执行步骤S8:伪需方前置机4将返回的数据查询结果通过SFTP协议发送到DMS 5的指定目录下;
进一步执行步骤S9:DMS 5将返回的数据查询结果发送至HDFS 6,以对缓存所述数据查询结果,并通知HDFS 6按照数据需方的不同拆分数据查询结果;
进一步执行步骤S10:HDFS 6按照数据需方的不同拆分数据查询结果,并将拆分后的拆分结果通过SFTP协议推送给DMS 5的指定目录下;
进一步执行步骤S11:伪供方前置机3通过SFTP协议拉取所述拆分结果;
进一步执行步骤S12:伪供方前置3将来自于DMS 5的拆分结果发送给相应的数据需方。
关于图2所示的系统架构200的工作原理、工作方式的更多内容,可以参照上述图1中的相关描述,这里不再赘述。
由上,通过本发明实施例提供的数据流通方法和数据流通的数据资源网络,可以满足数据的流通特性和需求,让更多数据需方获得数据,减小了数据需求方寻找适合数据源的难度,并可以增强数据需方和数据供方的紧密程度,且可以降低数据需方的购买成本,提高数据覆盖率,为数据需方提供稳定、海量的多源数据,降低数据流通成本。
图3是本发明实施例的一种数据流通装置的结构示意图。具体而言,所述数据流通装置3可以包括第一接收模块301、拆分模块302、发送模块303、第二接收模块304和拆分发送模块305。
更具体而言,所述第一接收模块301适于接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识;所述拆分模块302适于按照数据供方的不同拆分所述查询请求,以得到拆分请求;所述发送模块303适于将所述拆分请求发送至对应的数据供方;所述第二接收模块304适于接收各个数据供方反馈的数据查询结果;所述拆分发送模块305适于根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方。
进一步,所述数据流通装置3还可以包括存储模块306。
具体而言,所述存储模块306适于将各个数据供方反馈的数据查询结果的至少一部分存入缓存中。
进一步,所述数据流通装置3还可以包括搜索模块307。
具体而言,所述搜索模块307适于在接收到所述至少一个数据需方的新的查询请求时,优先从所述缓存中的数据查询结果中寻找并反馈匹配的结果。
MP1802930
进一步,所述数据流通装置3还可以包括删除模块308。
具体而言,所述删除模块308适于删除所述缓存中超出预设生命周期的数据查询结果。
进一步,所述拆分模块302可以包括第一拆分子模块3021和合并去重子模块3022。
具体而言,所述第一拆分子模块3021适于根据数据供方的不同,对每一数据需方的查询请求进行拆分,以得到每一数据需方的拆分子请求;所述合并去重子模块3022适于将各个数据需方的属于同一数据供方的拆分子请求合并,并进行去重,以得到所述拆分请求。
进一步,所述拆分发送模块305可以包括第二拆分子模块3051和合并发送子模块3052。
具体而言,所述第二拆分子模块3051适于根据各个数据需方的查询请求,对每一数据供方的数据查询结果进行拆分,以得到每一数据供方的拆分子结果;所述合并发送子模块3052适于将各个数据供方的属于同一数据需方的拆分子结果合并,以得到所述拆分结果并发送至对应的数据需方。
进一步,所述数据流通装置3还可以包括伪供方前置机模块309。
具体而言,所述伪供方前置机模块309适于通过伪供方前置机接收所述至少一个数据需方的查询请求,并通过所述伪供方前置机将所述拆分结果发送至数据需方。
进一步,所述数据流通装置3还可以包括伪需方前置机模块310。
具体而言,所述伪需方前置机模块310适于通过伪需方前置机将所述拆分请求发送至对应的数据供方,并通过所述伪需方前置机接收所述数据供方反馈的数据查询结果。
关于图3所示的数据流通装置3的工作原理、工作方式的更多内容,可以一并参照上述图1和图2中的相关描述,这里不再赘述。
进一步地,本发明实施例还公开一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述图1和图2所示实施例中所述的数据流通方法技术方案。优选地,所述存储介质可以包括诸如非挥发性(non-volatile)存储器或者非瞬态(non-transitory)存储器等计算机可读存储介质。所述计算机可读存储介质可以包括ROM、RAM、磁盘或光盘等。
进一步地,本发明实施例还公开一种服务器,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行上述图1和图2所示实施例中所述的数据流通方法技术方案。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (16)
1.一种数据流通方法,其特征在于,包括:
接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识;
按照数据供方的不同拆分所述查询请求,以得到拆分请求;
将所述拆分请求发送至对应的数据供方;
接收各个数据供方反馈的数据查询结果;
根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方;
其中,所述按照数据供方的不同拆分所述查询请求,以得到拆分请求包括:
根据数据供方的不同,对每一数据需方的查询请求进行拆分,以得到每一数据需方的拆分子请求;
将各个数据需方的属于同一数据供方的拆分子请求合并,并进行去重,以得到所述拆分请求。
2.根据权利要求1所述的数据流通方法,其特征在于,还包括:
将各个数据供方反馈的数据查询结果的至少一部分存入缓存中。
3.根据权利要求2所述的数据流通方法,其特征在于,还包括:
在接收到所述至少一个数据需方的新的查询请求时,优先从所述缓存中的数据查询结果中寻找并反馈匹配的结果。
4.根据权利要求2所述的数据流通方法,其特征在于,还包括:
删除所述缓存中超出预设生命周期的数据查询结果。
5.根据权利要求1所述的数据流通方法,其特征在于,所述根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方包括:
根据各个数据需方的查询请求,对每一数据供方的数据查询结果进行拆分,以得到每一数据供方的拆分子结果;
将各个数据供方的属于同一数据需方的拆分子结果合并,以得到所述拆分结果并发送至对应的数据需方。
6.根据权利要求1所述的数据流通方法,其特征在于,通过伪供方前置机接收所述至少一个数据需方的查询请求,并通过所述伪供方前置机将所述拆分结果发送至数据需方。
7.根据权利要求1所述的数据流通方法,其特征在于,通过伪需方前置机将所述拆分请求发送至对应的数据供方,并通过所述伪需方前置机接收所述数据供方反馈的数据查询结果。
8.一种数据流通装置,其特征在于,包括:
第一接收模块,适于接收至少一个数据需方的查询请求,所述查询请求包括待查询数据的标识;
拆分模块,适于按照数据供方的不同拆分所述查询请求,以得到拆分请求;
发送模块,适于将所述拆分请求发送至对应的数据供方;
第二接收模块,适于接收各个数据供方反馈的数据查询结果;
拆分发送模块,适于根据各个数据需方的查询请求拆分所述数据查询结果,并将拆分得到的拆分结果发送至对应的数据需方;
其中,所述拆分模块包括:
第一拆分子模块,适于根据数据供方的不同,对每一数据需方的查询请求进行拆分,以得到每一数据需方的拆分子请求;
合并去重子模块,适于将各个数据需方的属于同一数据供方的拆分子请求合并,并进行去重,以得到所述拆分请求。
9.根据权利要求8所述的数据流通装置,其特征在于,还包括:
存储模块,适于将各个数据供方反馈的数据查询结果的至少一部分存入缓存中。
10.根据权利要求9所述的数据流通装置,其特征在于,还包括:
搜索模块,适于在接收到所述至少一个数据需方的新的查询请求时,优先从所述缓存中的数据查询结果中寻找并反馈匹配的结果。
11.根据权利要求9所述的数据流通装置,其特征在于,还包括:
删除模块,适于删除所述缓存中超出预设生命周期的数据查询结果。
12.根据权利要求8所述的数据流通装置,其特征在于,所述拆分发送模块包括:
第二拆分子模块,适于根据各个数据需方的查询请求,对每一数据供方的数据查询结果进行拆分,以得到每一数据供方的拆分子结果;
合并发送子模块,适于将各个数据供方的属于同一数据需方的拆分子结果合并,以得到所述拆分结果并发送至对应的数据需方。
13.根据权利要求8所述的数据流通装置,其特征在于,还包括:伪供方前置机模块,适于通过伪供方前置机接收所述至少一个数据需方的查询请求,并通过所述伪供方前置机将所述拆分结果发送至数据需方。
14.根据权利要求8所述的数据流通装置,其特征在于,还包括:伪需方前置机模块,适于通过伪需方前置机将所述拆分请求发送至对应的数据供方,并通过所述伪需方前置机接收所述数据供方反馈的数据查询结果。
15.一种存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行权利要求1至7任一项所述的数据流通方法的步骤。
16.一种服务器,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,其特征在于,所述处理器运行所述计算机指令时执行权利要求1至7中任一项所述的数据流通方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810209695.2A CN108573026B (zh) | 2018-03-14 | 2018-03-14 | 一种数据流通方法及装置、存储介质、服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810209695.2A CN108573026B (zh) | 2018-03-14 | 2018-03-14 | 一种数据流通方法及装置、存储介质、服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108573026A CN108573026A (zh) | 2018-09-25 |
CN108573026B true CN108573026B (zh) | 2021-01-19 |
Family
ID=63574443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810209695.2A Active CN108573026B (zh) | 2018-03-14 | 2018-03-14 | 一种数据流通方法及装置、存储介质、服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108573026B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457937A (zh) * | 2019-07-02 | 2019-11-15 | 上海数据交易中心有限公司 | 数据流通方法及装置、系统、存储介质、服务器 |
CN110533450A (zh) * | 2019-07-17 | 2019-12-03 | 上海数据交易中心有限公司 | 数据流通方法及装置、存储介质、服务器 |
CN111400370A (zh) * | 2020-03-06 | 2020-07-10 | 上海数据交易中心有限公司 | 数据流通中的数据监控方法及装置、存储介质、服务器 |
CN111444445A (zh) * | 2020-03-25 | 2020-07-24 | 平安医疗健康管理股份有限公司 | 一种数据传输方法、系统、计算机设备和可读存储介质 |
CN112507205B (zh) * | 2020-10-14 | 2024-03-29 | 中国民航信息网络股份有限公司 | 一种数据管理方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868380A (zh) * | 2016-04-01 | 2016-08-17 | 广州唯品会网络技术有限公司 | 一种异源数据读取方法和电子设备 |
CN107545005A (zh) * | 2016-06-28 | 2018-01-05 | 华为软件技术有限公司 | 一种数据处理方法及装置 |
CN107748792A (zh) * | 2017-11-01 | 2018-03-02 | 上海数据交易中心有限公司 | 数据检索方法及装置、终端 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4227033B2 (ja) * | 2004-01-20 | 2009-02-18 | 富士通株式会社 | データベース統合参照装置、データベース統合参照方法およびデータベース統合参照プログラム |
-
2018
- 2018-03-14 CN CN201810209695.2A patent/CN108573026B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868380A (zh) * | 2016-04-01 | 2016-08-17 | 广州唯品会网络技术有限公司 | 一种异源数据读取方法和电子设备 |
CN107545005A (zh) * | 2016-06-28 | 2018-01-05 | 华为软件技术有限公司 | 一种数据处理方法及装置 |
CN107748792A (zh) * | 2017-11-01 | 2018-03-02 | 上海数据交易中心有限公司 | 数据检索方法及装置、终端 |
Also Published As
Publication number | Publication date |
---|---|
CN108573026A (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108573026B (zh) | 一种数据流通方法及装置、存储介质、服务器 | |
US11436224B2 (en) | Parallel processing database system with a shared metadata store | |
US20220292093A1 (en) | Techniques For In Memory Key Range Searches | |
CN107451208B (zh) | 一种数据搜索方法与装置 | |
CN107704202B (zh) | 一种数据快速读写的方法和装置 | |
CN102193917A (zh) | 一种数据处理和查询方法和装置 | |
CN108897874B (zh) | 用于处理数据的方法和装置 | |
US20220083618A1 (en) | Method And System For Scalable Search Using MicroService And Cloud Based Search With Records Indexes | |
CN109766318B (zh) | 文件读取方法及装置 | |
US11907294B2 (en) | Efficient and scalable time-series data storage and retrieval over a network | |
US11226982B2 (en) | Synchronization of offline instances | |
CN111858760B (zh) | 一种异构数据库的数据处理方法及装置 | |
CN110909022A (zh) | 一种数据查询方法和装置 | |
US9645893B1 (en) | Method and system for file recovery using enhanced backup database indexing | |
CN111400301A (zh) | 一种数据查询方法、装置及设备 | |
CN116775712A (zh) | 联表查询方法、装置、电子设备、分布式系统和存储介质 | |
KR20160050930A (ko) | 대용량 분산 파일 시스템에서 데이터의 수정을 포함하는 트랜잭션 처리 장치 및 컴퓨터로 읽을 수 있는 기록매체 | |
CN108920581B (zh) | 数据流通方法及装置、存储介质、服务器 | |
US11727022B2 (en) | Generating a global delta in distributed databases | |
US10621207B2 (en) | Execution of queries in relational databases | |
CN110851419A (zh) | 一种数据迁移的方法和装置 | |
CN108804502A (zh) | 大数据查询系统、方法、计算机设备及存储介质 | |
CN115185966A (zh) | 一种分布式集群中数据一致性的处理方法及装置 | |
CN113495891B (zh) | 一种数据处理方法和装置 | |
CN113268483A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |