CN113032399B - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN113032399B CN113032399B CN202110339521.XA CN202110339521A CN113032399B CN 113032399 B CN113032399 B CN 113032399B CN 202110339521 A CN202110339521 A CN 202110339521A CN 113032399 B CN113032399 B CN 113032399B
- Authority
- CN
- China
- Prior art keywords
- attribute
- data
- data form
- target
- preset
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 30
- 238000013500 data storage Methods 0.000 claims description 70
- 238000000034 method Methods 0.000 claims description 34
- 230000000875 corresponding effect Effects 0.000 description 48
- 201000010099 disease Diseases 0.000 description 20
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 20
- 238000004891 communication Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000001815 facial effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种数据处理方法及装置,当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定第一数据表单的差分预算;获取目标属性针对第一数据表单的优先级值、访问次数和数据量级;基于第一数据表单的差分预算、目标属性针对第一数据表单的优先级、访问次数和数据量级,确定目标属性的差分预算;按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声,得到目标查询结果。基于上述处理,可以提高在各属性的查询结果中添加的噪声的有效性。
Description
技术领域
本发明涉及数据安全技术领域,特别是涉及一种数据处理方法及装置。
背景技术
基于w-事件型差分隐私保护技术的数据查询方法,在接收到针对目标属性的查询请求时,从多个数据表单中确定该查询请求所请求的时间段对应的数据表单,作为目标数据表单。每一数据表单中均记录有多个用户的属性,例如,用于记录人脸特征的数据表单中,针对每一人脸特征,该数据表单中记录有各用户是否具有该人脸特征。然后,计算目标数据表单的差分预算,进而,按照目标数据表单的差分预算,在目标属性针对目标数据表单的查询结果中添加噪声,得到目标属性的目标查询结果。
现有技术中,可以基于BD(Budget Distribution,预算分配)算法,计算各数据表单各自的差分预算。具体的,可以基于预设的滑动窗口,按照各数据表单生成时间的先后顺序,从各数据表单中选取相邻的前第一数目个数据表单,作为第一数据表单。然后,计算待分配的差分预算(例如,ε/2)与1/2的乘积(即ε/4),作为第一个第一数据表单的差分预算,并计算待分配的差分预算与已分配的差分预算(即第一个第一数据表单的差分预算)的差值,得到当前剩余的差分预算(即ε/4)。然后,计算第二个第一数据表单与第一个第一数据表单的MAE(Mean Absolute Error,平均绝对误差)。如果计算得到的MAE不小于预设阈值,计算当前剩余的差分预算与1/2的乘积(即ε/8),作为第二个第一数据表单的差分预算,并计算待分配的差分预算与已分配的差分预算(即前两个第一数据表单的差分预算)的差值,得到当前剩余的差分预算,计算第三个第一数据表单与第二个第一数据表单的MAE,并继续判断计算得到的MAE是否小于预设阈值,以此类推,可以确定各第一数据表单各自的差分预算。
然后,基于预设的滑动窗口,按照各数据表单生成时间的先后顺序,从多个数据表单中选取第一个数据表单后相邻的第一数目个数据表单,作为第二数据表单。此时,计算最后一个第二数据表单与其前一个第二数据表单的MAE,如果计算得到的MAE不小于预设阈值,计算各已分配差分预算的第二数据表单的差分预算的和值,作为第一和值。计算待分配的差分预算与第一和值的差值,得到当前剩余的差分预算,并计算当前剩余的差分预算与1/2的乘积,作为最后一个第二数据表单的差分预算。
然后,基于预设的滑动窗口,按照各数据表单生成时间的先后顺序,从多个数据表单中选取第二个数据表单后相邻的第一数目个数据表单,作为第三数据表单,并计算最后一个第三数据表单的差分预算,以此类推,可以确定各数据表单各自的差分预算。
可见,计算出的差分预算是与数据表单相对应的,也就是说,同一数据表单内各属性的差分预算是相同的。然而,一个数据表单中具有各属性的用户的数目是不同的,例如,具有第一属性的用户的数目较少,而具有第二属性的用户的数目较多。针对第一属性的第一查询结果和第二属性的第二查询结果,若均使用该数据表单的差分预算,对第一查询结果和第二查询结果添加噪声,则会导致对第一查询结果添加的噪声较大,导致第一属性的目标查询结果的可靠性低,或者,对第二查询结果添加的噪声较小,会导致第二属性的目标查询结果的安全性较低。现有技术的在各属性的查询结果中添加的噪声的有效性较低。
发明内容
本发明实施例的目的在于提供一种数据处理方法及装置,以提高在各属性的查询结果中添加的噪声的有效性。具体技术方案如下:
第一方面,为了达到上述目的,本发明实施例提供了一种数据处理方法,所述方法应用于数据处理系统中的数据查询节点,所述方法包括:当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定所述第一数据表单的差分预算;获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目;基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级,确定所述目标属性的差分预算;按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果。
可选的,所述确定所述第一数据表单的差分预算,包括:从各数据表单中,确定位于所述第一数据表单之前的第一数目个数据表单,作为第二数据表单;获取所述第二数据表单的差分预算;计算待分配的差分预算与所述第二数据表单的差分预算的差值,作为第一差值;计算所述第一差值与预设数值的乘积,作为所述第一数据表单的差分预算。
可选的,所述基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级,确定所述目标属性的差分预算,包括:计算所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级的和值,作为第一和值;计算所述第一数据表单中的各预设属性对应的第一和值的总和值,作为目标和值;计算所述目标属性对应的第一和值与所述目标和值的比值,作为目标比值;计算所述目标比值与所述第一数据表单的差分预算的乘积,作为所述目标属性的差分预算。
可选的,所述按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果,包括:基于所述目标属性的差分预算,计算满足拉普拉斯分布的噪声值,作为所述目标属性对应的噪声值;计算所述目标属性针对所述第一数据表单的查询结果与对应的噪声值的和值,作为目标查询结果。
可选的,所述预设存储空间为记录数据表单的区块链。
第二方面,为了达到上述目的,本发明实施例提供了一种数据处理方法,所述方法应用于数据处理系统中的第一数据存储节点,所述数据处理系统还包括数据查询节点,所述方法包括:当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的最终数据表单;当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,以使所述数据查询节点在接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定所述第一数据表单的差分预算;获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级、访问次数和数据量级,确定所述目标属性的差分预算;按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目。
可选的,所述数据处理系统还包括第二数据存储节点;所述预设存储空间为记录数据表单的区块链;
所述当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,包括:当达到预设时刻时,生成包含在当前周期内生成的各最终数据表单的区块;向所述第二数据存储节点发送生成的区块,以使所述第二数据存储节点在判定所述区块满足预设条件时,将所述区块存储至当前的区块链。
可选的,所述当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的最终数据表单,包括:当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的初始数据表单;针对所述初始数据表单中的每一预设属性,确定针对该预设属性的属性值为第一属性值的用户,作为第一用户;从所述初始数据表单中除所述第一用户外的其他用户中,确定所述第一用户的数目个用户,作为第二用户;在所述初始数据表单中设置所述第二用户针对该预设属性的属性值为第一属性值,并设置所述第一用户针对该预设属性的属性值为第二属性值,得到最终数据表单,其中,一个用户针对一个预设属性的属性值为第一属性值,表示该用户具有该预设属性,一个用户针对一个预设属性的属性值为第二属性值,表示该用户不具有该预设属性。
第三方面,为了达到上述目的,本发明实施例提供了一种数据处理装置,所述装置应用于数据处理系统中的数据查询节点,所述装置包括:第一确定模块,用于当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;第二确定模块,用于确定所述第一数据表单的差分预算;获取模块,用于获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目;第三确定模块,用于基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级,确定所述目标属性的差分预算;添加模块,用于按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果。
可选的,第二确定模块,具体用于从各数据表单中,确定位于所述第一数据表单之前的第一数目个数据表单,作为第二数据表单;获取所述第二数据表单的差分预算;计算待分配的差分预算与所述第二数据表单的差分预算的差值,作为第一差值;计算所述第一差值与预设数值的乘积,作为所述第一数据表单的差分预算。
可选的,所述第三确定模块,具体用于计算所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级的和值,作为第一和值;计算所述第一数据表单中的各预设属性对应的第一和值的总和值,作为目标和值;计算所述目标属性对应的第一和值与所述目标和值的比值,作为目标比值;计算所述目标比值与所述第一数据表单的差分预算的乘积,作为所述目标属性的差分预算。
可选的,所述添加模块,具体用于基于所述目标属性的差分预算,计算满足拉普拉斯分布的噪声值,作为所述目标属性对应的噪声值;计算所述目标属性针对所述第一数据表单的查询结果与对应的噪声值的和值,作为目标查询结果。
可选的,所述预设存储空间为记录数据表单的区块链。
第四方面,为了达到上述目的,本发明实施例提供了一种数据处理装置,所述装置应用于数据处理系统中的第一数据存储节点,所述数据处理系统还包括数据查询节点,所述装置包括:生成模块,用于当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的最终数据表单;存储模块,用于当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,以使所述数据查询节点在接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定所述第一数据表单的差分预算;获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级、访问次数和数据量级,确定所述目标属性的差分预算;按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目。
可选的,所述数据处理系统还包括第二数据存储节点;所述预设存储空间为记录数据表单的区块链;
所述存储模块,具体用于当达到预设时刻时,生成包含在当前周期内生成的各最终数据表单的区块;向所述第二数据存储节点发送生成的区块,以使所述第二数据存储节点在判定所述区块满足预设条件时,将所述区块存储至当前的区块链。
可选的,所述生成模块,具体用于当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的初始数据表单;针对所述初始数据表单中的每一预设属性,确定针对该预设属性的属性值为第一属性值的用户,作为第一用户;从所述初始数据表单中除所述第一用户外的其他用户中,确定所述第一用户的数目个用户,作为第二用户;在所述初始数据表单中设置所述第二用户针对该预设属性的属性值为第一属性值,并设置所述第一用户针对该预设属性的属性值为第二属性值,得到最终数据表单,其中,一个用户针对一个预设属性的属性值为第一属性值,表示该用户具有该预设属性,一个用户针对一个预设属性的属性值为第二属性值,表示该用户不具有该预设属性。
本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述第一方面或者第二方面任一所述的数据处理方法步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面或者第二方面任一所述的数据处理方法步骤。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据处理方法。
本发明实施例提供的一种数据处理方法,当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定第一数据表单的差分预算;获取目标属性针对第一数据表单的优先级值、访问次数和数据量级;基于第一数据表单的差分预算、目标属性针对第一数据表单的优先级、访问次数和数据量级,确定目标属性的差分预算;按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声,得到目标查询结果。
基于上述处理,可以基于目标属性针对第一数据表单的优先级值、访问次数和数据量级,确定目标属性的差分预算,并按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声。相对于现有技术中各属性均按照相同的差分预算,在各自的查询结果中添加噪声,本发明实施例提供的技术方案,针对每一属性,可以确定该属性的差分预算,并按照该属性的差分预算,在该属性的查询结果中添加噪声,对于具有该属性的用户的数目较少的情况,可以提高该属性的添加噪声后的目标查询结果的可靠性,对于具有该属性的用户的数目较多的情况,可以提高该属性的添加噪声后的目标查询结果的安全性,即可以提高在各属性的查询结果中添加的噪声的有效性。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明实施例提供的一种数据处理方法的流程图;
图2为本发明实施例提供的另一种数据处理方法的流程图;
图3为本发明实施例提供的另一种数据处理方法的流程图;
图4为本发明实施例提供的另一种数据处理方法的流程图;
图5为本发明实施例提供的另一种数据处理方法的流程图;
图6为本发明实施例提供的另一种数据处理方法的流程图;
图7为本发明实施例提供的另一种数据处理方法的流程图;
图8为本发明实施例提供的另一种数据处理方法的流程图;
图9为本发明实施例提供的一种平均绝对误差的对比图;
图10为本发明实施例提供的一种数据处理装置的结构图;
图11为本发明实施例提供的另一种数据处理装置的结构图;
图12为本发明实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1为本发明实施例提供的一种数据处理方法的流程图,该方法应用于数据处理系统中的数据查询节点,该方法可以包括以下步骤:
S101:当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定查询请求所请求的时间段对应的数据表单,作为第一数据表单。
S102:确定第一数据表单的差分预算。
S103:获取目标属性针对第一数据表单的优先级值、访问次数和数据量级。
其中,一个属性的优先级值越大,该属性的优先级越高,目标属性针对第一数据表单的优先级值,与具有目标属性的用户在第一数据表单中的占比呈负相关;目标属性针对第一数据表单的数据量级为:第一数据表单中具有目标属性的用户的数目。
S104:基于第一数据表单的差分预算、目标属性针对第一数据表单的优先级值、访问次数和数据量级,确定目标属性的差分预算。
S105:按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声,得到目标查询结果。
基于本发明实施例提供的数据处理方法,可以基于目标属性针对第一数据表单的优先级值、访问次数和数据量级,确定目标属性的差分预算,并按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声。相对于现有技术中各属性均按照相同的差分预算,在各自的查询结果中添加噪声,本发明实施例提供的技术方案,针对每一属性,可以确定该属性的差分预算,并按照该属性的差分预算,在该属性的查询结果中添加噪声,对于具有该属性的用户的数目较少的情况,可以提高该属性的添加噪声后的目标查询结果的可靠性,对于具有该属性的用户的数目较多的情况,可以提高该属性的添加噪声后的目标查询结果的安全性,即可以提高在各属性的查询结果中添加的噪声的有效性。
在步骤S101中,每一数据表单中记录有一个预设时间段内的多个用户针对各预设属性的属性值,多个数据表单所对应的预设时间段为连续的时间段。例如,在医院的场景中,可以用数据表单的记录患者针对各预设属性的属性值。例如,每一数据表单可以记录一个月内入住的患者针对各预设属性的属性值,一个数据表单中的一个预设属性表示一种疾病,一个患者针对一种疾病的属性值用于表示该患者是否患有该疾病。参见表1,表1为本发明实施例提供的一种数据表单。
表1
表1中各预设属性包括:疾病A、疾病B、疾病C、疾病D、疾病E和疾病F。表1中记录了患者1、患者2、患者3和患者4针对各预设属性的属性值,例如,患者1针对疾病A的属性值为0,可以表示患者1未患有疾病A,患者1针对疾病B的属性值为1,可以表示患者1患有疾病B,患者2针对疾病A的属性值为1,可以表示患者2患有疾病A,患者2针对疾病B的属性值为0,可以表示患者2未患有疾病A。
当数据请求方需要获取具有某一预设属性的用户的数目时,可以向数据查询节点发送针对该预设属性的查询请求,例如,医院需要每月统计一次患有疾病A的患者的数目,以及时发现疾病暴发,则可以通过客户端,向数据查询节点发送用于获取一个月内患有疾病A的患者的数目的查询请求。
当接收到针对目属性的查询请求时,数据查询节点确定查询请求所请求的时间段,进而,数据查询节点可以从预设存储空间中的各数据表单中,确定该时间段对应的数据表单。目标属性可以为各数据表单中记录的各预设属性中的任一属性。针对目标属性的查询请求,用于获取查询请求所请求的时间段对应的数据表单中,具有目标属性的用户的数目。
可以理解的是,如果查询请求所请求的时间段与一个预设时间段相同,则第一数据表单为一个,如果查询请求所请求的时间段为一个预设时间段的倍数,则第一数据表单为多个。如果第一数据表单为多个,针对每一个第一数据表单均可以按照本发明实施例的方法,确定目标属性针对该第一数据表单的目标查询结果,进而,向数据请求方返回目标属性针对各第一数据表单各自的目标查询结果。
例如,各数据表单包括:数据表单1、数据表单2、数据表单3和数据表单4。每一数据表单记录对应的1天内的各用户针对和预设属性的属性值。如果查询请求为:获取从第1天至第3天内具有属性A的用户的数目,则数据查询节点可以确定数据表单1、数据表单2和数据表单3为第一数据表单。进而,数据查询节点可以按照本发明实施例的方法,分别确定属性A针对数据表单1的目标查询结果1、属性A针对数据表单2的目标查询结果2和属性A针对数据表单3的目标查询结果3,并向数据请求方返回确定的3个目标查询结果。
在本发明的一个实施例中,预设存储空间可以为记录数据表单的区块链。
一种实现方式中,数据处理系统还可以包括多个数据存储节点,多个数据存储节点中的第一数据存储节点,在接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含各用户针对各预设属性的属性值的数据表单。然后,第一数据存储节点可以在达到预设时刻时,生成包含在当前周期内生成的各数据表单的区块,并向第二数据存储节点发送生成的区块,以使第二数据存储节点在判定区块满足预设条件时,将区块存储至当前的区块链。第一数据存储节点的具体处理方式可以参见后续实施例的相关介绍。
在步骤S102中,由于各数据表单对应的预设时间段为连续的时间段,即各数据表单是按照预设时间段的先后顺序生成的,在第一数据表单之前,可能存在已经生成的其他数据表单,相应的,数据查询节点可能已经接收到的针对已生成的数据表单中的预设属性的查询请求,此时,数据查询节点已确定出第一数据表单之前的数据表单的差分预算。因此,数据查询节点可以直接计算第一数据表单的差分预算。
一种实现方式中,数据查询节点可以计算第一数据表单与其前一个数据表单的MAE,如果计算得到的MAE小于预设阈值,数据查询节点可以获取前一个数据表单的差分预算,作为第一数据表单的差分预算。
如果计算得到的MAE不小于预设阈值,数据查询节点可以按照如下方式计算第一数据表单的差分预算。参见图2,在图1的基础上,步骤S102可以包括以下步骤:
S1021:从各数据表单中,确定位于第一数据表单之前的第一数目个数据表单,作为第二数据表单。
S1022:获取第二数据表单的差分预算。
S1023:计算待分配的差分预算与第二数据表单的差分预算的差值,作为第一差值。
S1024:计算第一差值与预设数值的乘积,作为第一数据表单的差分预算。
其中,第一数目为预设的滑动窗口的大小减1,例如,预设的滑动窗口的大小为3,则第一数目可以为2,或者,预设的滑动窗口的大小为5,则第一数目可以为4,但并不限于此。待分配的差分预算为ε/2,ε的值可以由技术人员根据经验设置。预设数值为1/2。
一种实现方式中,数据查询节点可以按照各数据表单生成时间的先后顺序,从各数据表单中,确定位于第一数据表单之前第一数目个数据表单,作为第二数据表单。第二数据表单为已经确定出差分预算的数据表单,因此,数据查询节点可以获取第二数据表单的差分预算,并计算待分配的差分预算与第二数据表单的差分预算的差值(即第一差值),进而,可以计算第一差值与预设数值的乘积,得到第一数据表单的差分预算。
另外,如果当前未确定各数据表单各自的差分预算,数据查询节点可以基于BD算法,计算各数据表单各自的差分预算。
在步骤S103中,目标属性针对第一数据表单的优先级值,与具有目标属性的用户在第一数据表单中的占比呈负相关。例如,数据查询节点可以确定第一数据表单中具有目标属性的用户的数目(可以称为第三数目),然后计算第三数目与第一数据表单中用户的总数目的比值,并计算该比值的倒数,作为目标属性针对第一数据表单的优先级值。
一个属性的优先级值越大,该属性的优先级越高。目标属性针对第一数据表单的访问次数为:已接收到查询请求中,所请求的时间段对应的数据表单为第一数据表单的查询请求的数目。目标属性针对第一数据表单的数据量级为:第一数据表单中具有目标属性的用户的数目。一个用户针对一个预设属性的属性值为第一属性值,表示该用户具有该预设属性。
在本发明的一个实施例中,参见图3,在图1的基础上,步骤S104可以包括以下步骤:
S1041:计算目标属性针对第一数据表单的优先级值、访问次数和数据量级的和值,作为第一和值。
S1042:计算第一数据表单中的各预设属性对应的第一和值的总和值,作为目标和值。
S1043:计算目标属性对应的第一和值与目标和值的比值,作为目标比值。
S1044:计算目标比值与第一数据表单的差分预算的乘积,作为目标属性的差分预算。
针对每一数据表单,该数据表单中被多次查询的预设属性造成隐私泄露的风险较高,因此,需要在该预设属性针对该数据表单的查询结果中添加更大的噪声。也就是说,对应的访问次数越大的预设属性针对该数据表单的查询结果中添加的噪声应该越大。
另外,一个预设属性针对该数据表单的查询结果越大,则该预设属性针对该数据表单的查询结果中所添加的噪声也应该较大,也就是说,具有该预设属性的用户的数目越多,即该预设属性的数据量级越大,该预设属性的查询结果中所添加的噪声也应该较大。
因此,数据查询节点可以计算目标属性针对第一数据表单的优先级值、访问次数和数据量级的和值(即第一和值),并计算第一数据表单中的各预设属性对应的第一和值的总和值(即目标和值),第一数据表单中的各预设属性包括目标属性。然后,数据查询节点可以计算目标属性对应的第一和值与目标和值的比值(即目标比值),并计算目标比值与第一数据表单的差分预算的乘积,得到目标属性的差分预算。
在本发明的一个实施例中,参见图4,在图1的基础上,步骤S105可以包括以下步骤:
S1051:基于目标属性的差分预算,计算满足拉普拉斯分布的噪声值,作为目标属性对应的噪声值。
S1052:计算目标属性针对第一数据表单的查询结果与对应的噪声值的和值,作为目标查询结果。
一种实现方式中,数据查询节点可以基于目标属性的差分预算,计算满足拉普拉斯分布的噪声值,得到目标属性对应的噪声值。然后,数据查询节点可以确定目标属性针对第一数据表单的查询结果,即确定第一数据表单中具有目标属性的用户的数目。由于一个用户针对一个预设属性的属性值为第一属性值时,表示该用户具有该预设属性,因此,数据查询节点可以确定第一数据表单中针对目标属性的属性值为第一属性值的用户的数目,得到目标属性针对第一数据表单的查询结果。进而,数据查询节点可以计算目标属性针对第一数据表单的查询结果与对应的噪声值的和值,得到目标查询结果。
拉普拉斯分布为:
其中,
f表示拉普拉斯分布的函数值,λ表示尺度参数,μ表示位置参数,x表示目标属性对应的噪声值,e表示自然常数,d表示第一数据表单中各属性的总数目,ε‘表示目标属性的差分预算。本发明实施例中μ的值取0。
参见图5,图5为本发明实施例提供的一种数据处理方法的流程图,该方法应用于数据处理系统中的第一数据存储节点,数据处理系统还包括数据查询节点,该方法可以包括以下步骤:
S501:当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含各用户针对各预设属性的属性值的最终数据表单。
S502:当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,以使数据查询节点在接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定第一数据表单的差分预算;获取目标属性针对第一数据表单的优先级值、访问次数和数据量级;基于第一数据表单的差分预算、目标属性针对第一数据表单的优先级、访问次数和数据量级,确定目标属性的差分预算;按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声,得到目标查询结果。
其中,一个属性的优先级值越大,该属性的优先级越高,目标属性针对第一数据表单的优先级值,与具有目标属性的用户在第一数据表单中的占比呈负相关;目标属性针对第一数据表单的数据量级为:第一数据表单中具有目标属性的用户的数目。
基于本发明实施例提供的数据处理方法,可以基于目标属性针对第一数据表单的优先级值、访问次数和数据量级,确定目标属性的差分预算,并按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声。相对于现有技术中各属性均按照相同的差分预算,在各自的查询结果中添加噪声,本发明实施例提供的技术方案,针对每一属性,可以确定该属性的差分预算,并按照该属性的差分预算,在该属性的查询结果中添加噪声,对于具有该属性的用户的数目较少的情况,可以提高该属性的添加噪声后的目标查询结果的可靠性,对于具有该属性的用户的数目较多的情况,可以提高该属性的添加噪声后的目标查询结果的安全性,即可以提高在各属性的查询结果中添加的噪声的有效性。
在步骤S501中,第一数据存储节点负责收集所处领域内的各用户针对各预设属性的属性值。第一数据存储节点所处领域内的各终端可以在达到预设周期时,向第一数据存储节点发送当前周期内各用户针对各预设属性的属性值,进而,第一数据存储节点可以生成包含各用户针对各预设属性的属性值的最终数据表单。第一数据存储节点所处的领域内的各终端包括:与第一数据存储节点所处位置的距离不大于预设距离的终端。
在本发明的一个实施例中,参见图6,在图5的基础上,步骤S501可以包括以下步骤:
S5011:当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含各用户针对各预设属性的属性值的初始数据表单。
S5012:针对初始数据表单中的每一预设属性,确定针对该预设属性的属性值为第一属性值的用户,作为第一用户。
S5013:从初始数据表单中除第一用户外的其他用户中,确定第一用户的数目个用户,作为第二用户。
S5014:在初始数据表单中设置第二用户针对该预设属性的属性值为第一属性值,并设置第一用户针对该预设属性的属性值为第二属性值,得到最终数据表单。
其中,一个用户针对一个预设属性的属性值为第一属性值,表示该用户具有该预设属性,一个用户针对一个预设属性的属性值为第二属性值,表示该用户不具有该预设属性。
第一属性值和第二属性值不同,第一属性值和第二属性值均可以由技术人员根据从经验设置。
示例性的,第一属性值1,第二属性值为0。如果第一数据存储节点接收到的各用户针对各预设属性的属性值包括:用户1针对属性B和属性F的属性值为1,用户1针对属性A、属性C、属性D和属性E的属性值为0,用户2针对属性A和属性E的属性值为1,用户2针对属性B、属性C、属性D和属性F的属性值为0,用户3针对属性C的属性值为1,用户3针对属性A、属性B、属性D、属性E和属性F的属性值为0,用户4针对属性B和属性D的属性值为1,用户4针对属性A、属性C、属性E和属性F的属性值为0。第一数据存储节点可以生成记录上述各用户针对各预设属性的属性值的初始数据表单,生成的初始数据表单如表2所示。
表2
然后,针对表2中的属性A,第一数据存储节点可以确定用户2针对属性A的属性值为1,则第一数据存储节点可以从除用户2以外的其他用户中,确定1个用户(例如,用户1),并设置用户1针对属性A的属性值为1,设置用户2针对属性A的属性值为0。针对表2中的属性B,第一数据存储节点可以确定用户1和用户4针对属性A的属性值为1,则第一数据存储节点可以从除用户1和用户4以外的其他用户中,确定2个用户(例如,用户2和用户3),并设置用户2和用户3针对属性B的属性值为1,设置用户1和用户4针对属性A的属性值为0。同理,可以重新设置各用户针对属性C、属性D、属性E和属性F的属性值,可以得到如表3所示的最终数据表单。进而,可以将最终数据表单存储至预设存储空间。
表3
基于上述处理,最终数据表单中具有各属性的用户的数目,与初始数据表单与具有各属性的用户的数目相同,可以保证数据表单的统计特性,即保证各属性的查询结果的可靠性,并且即使恶意用户获取了数据表单,也无法得到用户真实的属性信息,可以进一步对用户的隐私进行保护。
在步骤S502中,当达到预设时刻时,第一数据存储节点可以将在当前周期内生成的各最终数据表单存储至预设存储空间,预设存储空间可以为第一数据存储节点本地的预设存储位置。
当数据查询节点接收到针对目标属性的查询请求时,可以从预设存储空间的各数据表单中,确定查询请求所请求的时间段对应的数据表单(即第一数据表单),进而,确定目标属性针对第一数据表单的目标查询结果。数据查询节点的具体处理方式,可以参见前述实施例的相关介绍。
在本发明的一个实施例中,数据处理系统还包括第二数据存储节点,预设存储空间为记录数据表单的区块链。相应的,参见图7,在图5的基础上,步骤S502可以包括以下步骤:
S5021:当达到预设时刻时,生成包含在当前周期内生成的各最终数据表单的区块。
S5022:向第二数据存储节点发送生成的区块,以使第二数据存储节点在判定区块满足预设条件时,将区块存储至当前的区块链。
一种实现方式中,第一数据存储节点可以获取当前的区块链中的最后一个区块的哈希值(可以称为第一哈希值)。然后,第一数据存储节点可以对当前时刻、当前周期内生成的各最终数据表单、第一哈希值和一个Nonce(随机数)进行拼接,得到对应的备选区块。第一数据存储节点还可以对备选区块进行哈希处理,得到备选区块的哈希值。当备选区块的哈希值不满足预设条件时,第一数据存储节点可以基于另一个Nonce,再次生成备选区块,并计算再次生成的备选区块的哈希值,以此类推,直至生成的备选区块的哈希值满足预设条件,第一数据存储节点可以确定哈希值满足预设条件的备选区块为包含在当前周期内生成的各最终数据表单的区块(可以称为目标区块)。其中,预设条件可以为:目标区块的哈希值中前第四数目个字段为0。第四数目可以为6,或者,第四数目也可以为7,但并不限于此。
进而,第一数据存储节点可以向数据处理存储系统中除第一数据存储节点外的第二数据存储节点发送目标区块和目标区块的哈希值。相应的,第二数据存储节点在接收到目标区块和目标区块的哈希值时,可以判断目标区块的哈希值是否满足预设条件,并在判定目标区块的哈希值满足预设条件时,将目标区块存储至当前的区块链。
基于上述处理,可以将各数据表单存储至区块链中,相对于直接将各数据表单存储于第一数据存储节点本地的预设存储位置,可以进一步对用户的隐私进行保护。
参见图8,图8为本发明实施例提供的一种数据处理方法的流程图。该数据处理方法应用于数据处理系统,该数据处理系统包括多个数据存储节点和数据查询节点,图8中以该数据处理系统包括3个数据存储节点为例进行说明,该3个数据存储节点分别为:数据存储节点1、数据存储节点2和数据存储节点3。
一个数据存储节点(本实施例以数据存储节点1为例进行说明),在接收到数据存储节点1所处领域(Domain)内的各终端发送的,各用户针对各预设属性的属性值时,生成包含各用户针对各预设属性的属性值的最终数据表单。
然后,数据存储节点1可以生成包含在当前周期内生成的各最终数据表单的区块。图8中,数据存储节点1生成的区块i,包含第i个周期内的4个时间段内的4个最终数据表单,一个最终数据表单对应的时间戳(Timestamp)可以表示该最终数据表单的生成时间,图8中区块i中包含的各最终数据表单各自的时间戳分别为:时间戳1、时间戳2、时间戳3和时间戳4。
进而,数据存储节点1可以向数据处理系统中除数据存储节点1外的第二数据存储节点(即数据存储节点2和数据存储节点3)发送生成的区块,以使第二数据存储节点在判定区块满足预设条件时,将区块存储至当前的区块链。
区块链(Blockchain)中包含多个区块,一个区块包含:前一区块的哈希值(FormerBlock)、时间戳和数据(Data),其中,时间戳表示该区块的生成时间,数据包括该区块对应的周期内的各最终数据表单。
数据查询节点(Requester)在接收到针对目标属性的查询请求时,可以从当前的区块链中的各数据表单中,确定查询请求所请求的时间段对应的数据表单(即第一数据表单),进而,确定目标属性针对第一数据表单的目标查询结果。
参见图9,图9为本发明实施例提供的一种平均绝对误差的对比图。
图9中带正方形的折线表示基于本发明实施例提供的方法对目标属性的查询结果添加噪声时,滑动窗口的大小与平均绝对误差的对应关系,带圆形的折线表示基于现有技术对目标属性的查询结果添加噪声时,滑动窗口的大小与平均绝对误差的对应关系。
平均绝对误差(MAE)指目标属性的查询结果,与目标属性的添加噪声后的目标查询结果之间的平均绝对误差。滑动窗口指计算各数据表单的差分预算时预设的滑动窗口。滑动窗口的大小指滑动窗口包含的数据表单的数目。
可见,滑动窗口的大小相同,且小于7时,基于本发明实施例提供的方法对目标属性的查询结果添加噪声,对应的平均绝对误差,大于基于现有技术对目标属性的查询结果添加噪声,对应的平均绝对误差。
平均绝对误差越大,表明目标属性的查询结果中添加的噪声越大,因此,本发明实施例提供的方法可以对数据保单中记录的各用户的属性信息进行更好的保护。另外,由于针对目标属性的查询请求,获取的是具有目标属性的用户的数目,其考虑的是数据表单的统计特性,对于数据表单的统计特征而言,提升的误差在允许范围内,因此,可以保证目标属性的添加噪声后的目标查询结果的可靠性。
与图1的方法实施例相对应,参见图10,图10为本发明实施例提供的一种数据处理装置的结构图,所述装置应用于数据处理系统中的数据查询节点,所述装置包括:
第一确定模块1001,用于当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;
第二确定模块1002,用于确定所述第一数据表单的差分预算;
获取模块1003,用于获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目;
第三确定模块1004,用于基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级,确定所述目标属性的差分预算;
添加模块1005,用于按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果。
可选的,第二确定模块1002,具体用于从各数据表单中,确定位于所述第一数据表单之前的第一数目个数据表单,作为第二数据表单;
获取所述第二数据表单的差分预算;
计算待分配的差分预算与所述第二数据表单的差分预算的差值,作为第一差值;
计算所述第一差值与预设数值的乘积,作为所述第一数据表单的差分预算。
可选的,所述第三确定模块1004,具体用于计算所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级的和值,作为第一和值;
计算所述第一数据表单中的各预设属性对应的第一和值的总和值,作为目标和值;
计算所述目标属性对应的第一和值与所述目标和值的比值,作为目标比值;
计算所述目标比值与所述第一数据表单的差分预算的乘积,作为所述目标属性的差分预算。
可选的,所述添加模块1005,具体用于基于所述目标属性的差分预算,计算满足拉普拉斯分布的噪声值,作为所述目标属性对应的噪声值;
计算所述目标属性针对所述第一数据表单的查询结果与对应的噪声值的和值,作为目标查询结果。
可选的,所述预设存储空间为记录数据表单的区块链。
基于本发明实施例提供的数据处理装置,可以基于目标属性针对第一数据表单的优先级值、访问次数和数据量级,确定目标属性的差分预算,并按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声。相对于现有技术中各属性均按照相同的差分预算,在各自的查询结果中添加噪声,本发明实施例提供的技术方案,针对每一属性,可以确定该属性的差分预算,并按照该属性的差分预算,在该属性的查询结果中添加噪声,对于具有该属性的用户的数目较少的情况,可以提高该属性的添加噪声后的目标查询结果的可靠性,对于具有该属性的用户的数目较多的情况,可以提高该属性的添加噪声后的目标查询结果的安全性,即可以提高在各属性的查询结果中添加的噪声的有效性。
与图5的方法实施例相对应,参见图11,图11为本发明实施例提供的另一种数据处理装置的结构图,所述装置应用于数据处理系统中的第一数据存储节点,所述数据处理系统还包括数据查询节点,所述装置包括:
生成模块1101,用于当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的最终数据表单;
存储模块1102,用于当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,以使所述数据查询节点在接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定所述第一数据表单的差分预算;获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级、访问次数和数据量级,确定所述目标属性的差分预算;按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目。
可选的,所述数据处理系统还包括第二数据存储节点;所述预设存储空间为记录数据表单的区块链;
所述存储模块1102,具体用于当达到预设时刻时,生成包含在当前周期内生成的各最终数据表单的区块;
向所述第二数据存储节点发送生成的区块,以使所述第二数据存储节点在判定所述区块满足预设条件时,将所述区块存储至当前的区块链。
可选的,所述生成模块1101,具体用于当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的初始数据表单;
针对所述初始数据表单中的每一预设属性,确定针对该预设属性的属性值为第一属性值的用户,作为第一用户;
从所述初始数据表单中除所述第一用户外的其他用户中,确定所述第一用户的数目个用户,作为第二用户;
在所述初始数据表单中设置所述第二用户针对该预设属性的属性值为第一属性值,并设置所述第一用户针对该预设属性的属性值为第二属性值,得到最终数据表单,其中,一个用户针对一个预设属性的属性值为第一属性值,表示该用户具有该预设属性,一个用户针对一个预设属性的属性值为第二属性值,表示该用户不具有该预设属性。
基于本发明实施例提供的数据处理装置,可以基于目标属性针对第一数据表单的优先级值、访问次数和数据量级,确定目标属性的差分预算,并按照目标属性的差分预算,在目标属性针对第一数据表单的查询结果中添加噪声。相对于现有技术中各属性均按照相同的差分预算,在各自的查询结果中添加噪声,本发明实施例提供的技术方案,针对每一属性,可以确定该属性的差分预算,并按照该属性的差分预算,在该属性的查询结果中添加噪声,对于具有该属性的用户的数目较少的情况,可以提高该属性的添加噪声后的目标查询结果的可靠性,对于具有该属性的用户的数目较多的情况,可以提高该属性的添加噪声后的目标查询结果的安全性,即可以提高在各属性的查询结果中添加的噪声的有效性。
本发明实施例还提供了一种电子设备,如图12所示,包括处理器1201、通信接口1202、存储器1203和通信总线1204,其中,处理器1201,通信接口1202,存储器1203通过通信总线1204完成相互间的通信;
存储器1203,用于存放计算机程序;
处理器1201,用于执行存储器1203上所存放的程序时,实现上述任一所述的数据处理方法。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一数据处理方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一数据处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据处理系统、数据处理装置、电子设备、计算机可读存储介质和计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法应用于数据处理系统中的数据查询节点,所述方法包括:
当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;
确定所述第一数据表单的差分预算;
获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目;
基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级,确定所述目标属性的差分预算;
按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果。
2.根据权利要求1所述的方法,其特征在于,所述确定所述第一数据表单的差分预算,包括:
从各数据表单中,确定位于所述第一数据表单之前的第一数目个数据表单,作为第二数据表单;
获取所述第二数据表单的差分预算;
计算待分配的差分预算与所述第二数据表单的差分预算的差值,作为第一差值;
计算所述第一差值与预设数值的乘积,作为所述第一数据表单的差分预算。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级,确定所述目标属性的差分预算,包括:
计算所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级的和值,作为第一和值;
计算所述第一数据表单中的各预设属性对应的第一和值的总和值,作为目标和值;
计算所述目标属性对应的第一和值与所述目标和值的比值,作为目标比值;
计算所述目标比值与所述第一数据表单的差分预算的乘积,作为所述目标属性的差分预算。
4.根据权利要求1所述的方法,其特征在于,所述按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果,包括:
基于所述目标属性的差分预算,计算满足拉普拉斯分布的噪声值,作为所述目标属性对应的噪声值;
计算所述目标属性针对所述第一数据表单的查询结果与对应的噪声值的和值,作为目标查询结果。
5.根据权利要求1所述的方法,其特征在于,所述预设存储空间为记录数据表单的区块链。
6.一种数据处理方法,其特征在于,所述方法应用于数据处理系统中的第一数据存储节点,所述数据处理系统还包括数据查询节点,所述方法包括:
当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的最终数据表单;
当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,以使所述数据查询节点在接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定所述第一数据表单的差分预算;获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级、访问次数和数据量级,确定所述目标属性的差分预算;按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目。
7.根据权利要求6所述的方法,其特征在于,所述数据处理系统还包括第二数据存储节点;所述预设存储空间为记录数据表单的区块链;
所述当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,包括:
当达到预设时刻时,生成包含在当前周期内生成的各最终数据表单的区块;
向所述第二数据存储节点发送生成的区块,以使所述第二数据存储节点在判定所述区块满足预设条件时,将所述区块存储至当前的区块链。
8.根据权利要求6所述的方法,其特征在于,所述当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的最终数据表单,包括:
当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的初始数据表单;
针对所述初始数据表单中的每一预设属性,确定针对该预设属性的属性值为第一属性值的用户,作为第一用户;
从所述初始数据表单中除所述第一用户外的其他用户中,确定所述第一用户的数目个用户,作为第二用户;
在所述初始数据表单中设置所述第二用户针对该预设属性的属性值为第一属性值,并设置所述第一用户针对该预设属性的属性值为第二属性值,得到最终数据表单,其中,一个用户针对一个预设属性的属性值为第一属性值,表示该用户具有该预设属性,一个用户针对一个预设属性的属性值为第二属性值,表示该用户不具有该预设属性。
9.一种数据处理装置,其特征在于,所述装置应用于数据处理系统中的数据查询节点,所述装置包括:
第一确定模块,用于当接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;
第二确定模块,用于确定所述第一数据表单的差分预算;
获取模块,用于获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目;
第三确定模块,用于基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级,确定所述目标属性的差分预算;
添加模块,用于按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果。
10.一种数据处理装置,其特征在于,所述装置应用于数据处理系统中的第一数据存储节点,所述数据处理系统还包括数据查询节点,所述装置包括:
生成模块,用于当接收到各个终端发送的各用户针对各预设属性的属性值时,生成包含所述各用户针对各预设属性的属性值的最终数据表单;
存储模块,用于当达到预设时刻时,将在当前周期内生成的各最终数据表单存储至预设存储空间,以使所述数据查询节点在接收到针对目标属性的查询请求时,从预设存储空间中的各数据表单中,确定所述查询请求所请求的时间段对应的数据表单,作为第一数据表单;确定所述第一数据表单的差分预算;获取所述目标属性针对所述第一数据表单的优先级值、访问次数和数据量级;基于所述第一数据表单的差分预算、所述目标属性针对所述第一数据表单的优先级、访问次数和数据量级,确定所述目标属性的差分预算;按照所述目标属性的差分预算,在所述目标属性针对所述第一数据表单的查询结果中添加噪声,得到目标查询结果;其中,一个属性的优先级值越大,该属性的优先级越高,所述目标属性针对所述第一数据表单的优先级值,与具有所述目标属性的用户在所述第一数据表单中的占比呈负相关;所述目标属性针对所述第一数据表单的数据量级为:所述第一数据表单中具有所述目标属性的用户的数目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110339521.XA CN113032399B (zh) | 2021-03-30 | 2021-03-30 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110339521.XA CN113032399B (zh) | 2021-03-30 | 2021-03-30 | 一种数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113032399A CN113032399A (zh) | 2021-06-25 |
CN113032399B true CN113032399B (zh) | 2022-08-30 |
Family
ID=76452978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110339521.XA Active CN113032399B (zh) | 2021-03-30 | 2021-03-30 | 一种数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032399B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109117669B (zh) * | 2018-08-14 | 2020-08-28 | 华中科技大学 | MapReduce相似连接查询的隐私保护方法及系统 |
US10642847B1 (en) * | 2019-05-09 | 2020-05-05 | LeapYear Technologies, Inc. | Differentially private budget tracking using Renyi divergence |
CN110135180B (zh) * | 2019-05-15 | 2021-04-06 | 苏州大学 | 满足节点差分隐私的度分布直方图发布方法 |
CN111414641B (zh) * | 2020-03-13 | 2023-04-11 | 中国科学院信息工程研究所 | 一种基于采样的个性化差分隐私保护方法及系统 |
CN111859460A (zh) * | 2020-08-03 | 2020-10-30 | 辽宁工业大学 | 一种满足lkc模型的分类树差分隐私保护方法 |
CN112487472B (zh) * | 2020-11-09 | 2023-11-17 | 安徽工业大学 | 基于交互式查询的自适应差分隐私预算分配方法及其系统 |
-
2021
- 2021-03-30 CN CN202110339521.XA patent/CN113032399B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113032399A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108446407B (zh) | 基于区块链的数据库审计方法和装置 | |
JP7125514B2 (ja) | 異常ユーザーの識別方法、電子機器及び機械可読記憶媒体 | |
US11792218B2 (en) | Method, apparatus, and computer-readable medium for determining risk associated with anomalous behavior of a user on a computer network | |
US20130159972A1 (en) | Identifying components of a bundled software product | |
CN110083475B (zh) | 一种异常数据的检测方法及装置 | |
EP3817333B1 (en) | Method and system for processing requests in a consortium blockchain | |
JP2016508006A (ja) | 不適合のプライアに対する干渉攻撃に対するプライバシ | |
US10951708B2 (en) | Systems and methods for data access authentication using searchable encryption | |
CN112579551A (zh) | 数据存储和读取方法、装置、客户端、管理服务器及系统 | |
US11151087B2 (en) | Tracking file movement in a network environment | |
US11816251B2 (en) | Method for managing data asset in data bank and data bank system | |
US20150180990A1 (en) | Methods and systems for determining user online time | |
CN112069169A (zh) | 区块数据存储方法、装置、电子设备及可读存储介质 | |
US10742668B2 (en) | Network attack pattern determination apparatus, determination method, and non-transitory computer readable storage medium thereof | |
CN113032399B (zh) | 一种数据处理方法及装置 | |
CN108133136A (zh) | 攻击节点侦测装置、方法及其计算机可读取储存媒体 | |
CN113761000A (zh) | 数据处理的方法、装置、计算设备和存储介质 | |
WO2023109046A1 (zh) | 异常检测方法、装置、电子设备及存储介质 | |
CN113392138B (zh) | 一种隐私数据的统计分析方法、装置、服务器和存储介质 | |
CN115391581A (zh) | 索引创建、图像存储、图像检索方法、装置及电子设备 | |
CN113486344A (zh) | 一种接口防刷方法、装置、服务端及存储介质 | |
CN110209666B (zh) | 一种数据存储方法及终端设备 | |
CN107743070B (zh) | 一种双属性网络的社群划分方法及装置 | |
CN110442845B (zh) | 文件重复率计算方法及装置 | |
CN110209679B (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 |