CN111737751A - 实现隐私保护的分布式数据处理的方法及装置 - Google Patents

实现隐私保护的分布式数据处理的方法及装置 Download PDF

Info

Publication number
CN111737751A
CN111737751A CN202010693667.XA CN202010693667A CN111737751A CN 111737751 A CN111737751 A CN 111737751A CN 202010693667 A CN202010693667 A CN 202010693667A CN 111737751 A CN111737751 A CN 111737751A
Authority
CN
China
Prior art keywords
merging
weight
attribute
node
value
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.)
Granted
Application number
CN202010693667.XA
Other languages
English (en)
Other versions
CN111737751B (zh
Inventor
余超凡
王磊
周俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202010693667.XA priority Critical patent/CN111737751B/zh
Publication of CN111737751A publication Critical patent/CN111737751A/zh
Application granted granted Critical
Publication of CN111737751B publication Critical patent/CN111737751B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书实施例提供一种实现隐私保护的分布式数据处理的方法和装置,在利用分布式系统确定属性值的分位点的情况下,各个节点对分配到的属性值执行相同候选值的合并权重操作,并且在传递给其他节点进行进一步合并权重的合并结果项中,既包括有效信息项,又包括无效信息项,有效信息项和无效信息项的总项数为预定的候选项数之一,从而,可以在减少信息传输项数的基础上,降低通过合并结果项数泄露候选值的风险,有效保护通过分布式系统确定属性值的分位点时的数据隐私。

Description

实现隐私保护的分布式数据处理的方法及装置
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及通过计算机实现隐私保护的分布式数据处理的方法及装置。
背景技术
随着计算机技术的发展,获取数据的手段也越来越多。正是因为如此,各种业务处理过程中的数据隐私保护的重要度越来越高。常规技术中,保护数据隐私的一种可行的硬件解决方案是可信执行环境Trusted Execution Environments (TEEs)。在TEE中,不论是BIOS、操作系统等均无法窥视用户隐私数据。SGX是一项复杂的技术,可以通过一组CPU指令,使得应用程序获取隔离代码和数据的特定可信区域。SGX可以提供一个安全的飞地(Enclave,也可以称为可信容器),以保护敏感数据或代码免受外部干扰或检查。
TEE 模式可以保证内存数据只在 cpu 内部可见,然而,其计算过程仍需要通过内存访问、网络访问实现。在分布式架构下,分布式系统的节点之间需要数据交互,在一些情形下,按照通讯格式获取相关数据长度,可以获知部分数据内容。例如,对业务数据的业务属性的属性值分布进行传输,根据数据项数可能泄露属性值取值数量,等等。因此,需要提供一种方案,可以保护分布式系统中的数据隐私。
发明内容
本说明书一个或多个实施例描述了一种实现隐私保护的分布式数据处理的方法及装置,用以解决背景技术提到的一个或多个问题。
根据第一方面,提供了一种实现隐私保护的分布式数据处理的方法,所述方法用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据分别在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述方法由所述第一节点执行,包括:获取所述M个属性值中的m1个属性值,以及各个属性值分别对应的各个初始权重;针对所述m1个属性值执行合并权重操作,得到第一合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;根据所述第一合并结果,向第二节点发送第一数量合并项,以供第二节点将第一数量合并项,与基于第二节点对m2个属性值执行合并权重操作得到的第二合并结果,进行进一步的合并权重操作,进而对所述M个属性值完成最终权重合并,从而根据所述N个候选值分别对应的各个最终候选值权重确定基于第一业务属性的至少一个分位点,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项。
根据一个实施方式,所述合并权重操作包括:按照大小顺序排列各个属性值;针对排序后的各个属性值,依次对相同候选值进行权重叠加,得到与各个属性值一一对应的各个合并项,其中,单个合并项对应有单个候选值、候选值权重、有效性标识,所述有效性标识基于对所述单个合并项对应的单个属性值是否为相应候选值对应的最后一个属性值的检测确定,用于描述所述单个合并项是否为有效信息项。
在一个实施例中,所述单个合并项对应的候选值权重通过以下方式确定:根据所述单个合并项对应的单个属性值与前一个属性值是否相同,确定所述单个合并项对应的基准权重;在所述基准权重上叠加所述单个合并项对应的单个属性值的初始权重,得到所述单个合并项对应的候选值权重。
在进一步的实施例中,所述基准权重通过以下方式确定:在所述单个属性值是相应候选值的第一个属性值的情况下,确定所述基准权重为预定值;在所述单个属性值不是相应候选值的第一个属性值的情况下,确定所述基准权重为所述单个合并项的前一个合并项对应的候选值权重。
在另一个实施例中,所述单个合并项对应的有效性标识通过以下方式确定:在所述单个合并项对应的单个属性值与所述单个属性值的下一个属性值相同,确定所述单个合并项为无效信息项的情况下,设置所述单个合并项对应的有效性标识为第一预设值;在所述单个合并项对应的单个属性值与所述单个属性值的下一个属性值不相同,或者所述单个合并项对应所述M个属性值的最后一个属性值,确定所述单个合并项为有效信息项的情况下,设置所述单个合并项对应的有效性标识为第二预设值。
根据一个实施例,所述第一数量合并项通过以下方式确定:根据所述第一合并结果中的各个合并项分别对应的有效性标识,确定有效信息项的数量;确定所述若干候选项数中大于所述有效信息项的数量的最小候选项数;将所述大于所述有效信息项的数量的最小候选项数,作为所述第一数量;确定一下项为所述第一数量合并项:所述第一合并结果中的各个合并项中的有效信息项,以及若干无效信息项;所述若干无效信息项是从第一合并结果的无效信息项中选取,或者随机生成。
根据一个实施方式,所述分布式系统还包括第三节点,所述根据所述第一合并结果,向第二节点发送包括第一数量合并项包括:获取所述第三节点发送来的第三数量合并项,其中,所述第三数量合并项由所述第三节点基于对所述M个属性值中的m3个属性值执行的合并权重操作得到的第三合并结果确定;对所述第一合并结果与所述第三数量合并项执行所述合并权重操作,得到第四合并结果;根据所述第四合并结果确定所述第一数量合并项,以发送给第二节点。
根据一个实施方式,所述预定规则为:2的整数次幂,或者10的整数倍。
根据第二方面,提供一种实现隐私保护的分布式数据处理的方法,所述方法用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据分别在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述方法由所述第二节点执行,包括:获取所述M个属性值中的m2个属性值,以及各个属性值分别对应的各个初始权重;针对所述m2个属性值执行合并权重操作,得到第二合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;接收所述第一节点基于第一合并结果确定的第一数量合并项,其中,所述第一合并结果由所述第一节点基于对所述M个属性值中的m1个属性值执行的合并权重操作得到,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项;将所述第一数量合并项与所述第二合并结果进行进一步的合并权重操作,进而对所述M个属性值完成最终权重合并,从而根据所述N个候选值分别对应的各个最终候选值权重确定基于第一业务属性的至少一个分位点。
根据一个实施方式,所述方法还包括:基于所述第一数量合并项与所述第二合并结果进行进一步的合并权重操作得到的合并结果,得到对所述M个属性值的最终合并结果;根据预设的分位条件,确定用于分割所述M个属性值的至少一个分位权重;按照对所述最终合并结果中的各个有效信息项按照各个候选值的大小顺序,依次累加相应的候选值权重,从而将累加的候选值权重,分别达到各个分位权重时的相应候选值,确定为各个分位点。
根据第三方面,提供一种实现隐私保护的分布式数据处理的装置,所述装置用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据分别在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述装置设于所述第一节点,包括:
获取单元,配置为获取所述M个属性值中的m1个属性值,以及各个属性值分别对应的各个初始权重;
合并单元,配置为针对所述m1个属性值执行合并权重操作,得到第一合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;
通信单元,配置为根据所述第一合并结果,向第二节点发送包括第一数量合并项,以供第二节点将第一数量合并项,与基于第二节点对m2个属性值执行合并权重操作得到的第二合并结果,进行进一步的合并权重操作,进而对所述M个属性值完成最终权重合并,从而根据所述N个候选值分别对应的各个最终候选值权重确定基于第一业务属性的至少一个分位点,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项。
根据第四方面,提供一种实现隐私保护的分布式数据处理的装置,所述装置用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据分别在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述装置设于所述第二节点,包括:
获取单元,配置为获取所述M个属性值中的m2个属性值,以及各个属性值分别对应的各个初始权重;
合并单元,配置为针对所述m2个属性值执行合并权重操作,得到第二合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;
通信单元,配置为接收所述第一节点基于第一合并结果确定的第一数量合并项,其中,所述第一合并结果由所述第一节点基于对所述M个属性值中的m1个属性值执行的合并权重操作得到,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项;
所述合并单元还配置为,将所述第一数量合并项与所述第二合并结果进行进一步的合并权重操作,以对所述M个属性值完成权重合并,从而根据所述N个候选值分别对应的各个最终合并权重确定基于第一业务属性的至少一个分位点。
根据第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面的方法。
根据第六方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面或第二方面的方法。
通过本说明书实施例提供的方法和装置,在利用分布式系统确定属性值的分位点的情况下,各个节点对分配到的属性值执行相同候选值的合并权重操作,并且在传递给其他节点进行进一步合并权重的合并结果项中,既包括有效信息项,又包括无效信息项,有效信息项和无效信息项的总项数为预定的候选项数之一,从而,可以在减少信息传输项数的基础上,降低通过合并结果项数泄露候选值的风险,有效保护通过分布式系统确定属性值的分位点时的数据隐私。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出本说明书一个具体实施架构示意图;
图2示出根据一个具体例子的分布式系统下各节点上的合并结果的合并方式示意图;
图3示出根据一个实施例的实现隐私保护的分布式数据处理的方法流程图;
图4示出根据一个实施例的实现隐私保护的分布式数据处理的装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
首先,结合图1示出的一个具体实施架构进行说明。在实际应用中,可能经常用到对业务数据按照业务属性的属性值进行分割的情形。例如,树形结构描述业务数据的场景,每个树节点下,各个分支可以对应某个业务属性的不同属性值(在属性值较多的情况下,还可以是不同的属性值区间)。其中的业务数据可以是图片、文字、视频、音频、动画等中的至少一种。业务数据可以根据业务场景对应不同的内容。例如,业务数据可以是对用户进行描述的数据,一条业务数据可以对应一个用户,相应业务属性可以包括性别、年龄、收入等等。在其他实施例中,业务数据还可以是其他数据,例如目标识别场景中,一条业务数据可以对应一张图片,或一段视频,在此不作限定。其中的树形结构例如可以是各种业务模型,例如GBDT(Gradient Boosting Decision Tree,梯度提升决策树)等。
可以理解,业务属性对应的属性值可以是确定的数值,也可以是具有一定权重的数值。例如,通常情况下,年龄、性别可以对应确定的数值,非固定收入则可以具有一定的概率性,如可以将平均月薪作为属性值,那么每个月拿到平均月薪的概率可以作为相应属性值的权重。在本说明书中,对于对应确定数值的业务属性,还可以认为具有固定权重,如1,或归一化的数值。
本说明书的技术构思可以应用于分位点的确定过程。例如,对于年龄业务属性来说,如何确定将18还是40作为2个分支之间的属性阈值。这样,就需要考虑每个属性值对应的业务数据条数。例如,将用户按年龄等分为3个类别,则需要将与各个用户一一对应的各条业务数据中年龄业务属性的属性值按业务数据条数等分为3等份。在分割过程中,可以按照权重进行。针对确定的业务属性(如性别),可以认为其属性值为固定值,如1,针对不确定的业务属性(如非固定收入),可以根据业务数据提取相应的属性值以及相应权重。这里的权重就相当于在业务数据中所占的比重。那么按照比重分割,就可以得到合理的分割结果。例如,业务数据为10万用户的收入(对应10万条业务数据),分割目标为低、中、高三种收入人群,假设三种人群拥有的收入总量一致,则由低到高累积到33.33%的收入量的用户应该划分为一类。例如以千元(k)为单位记,且都为固定收入(权重均为1),月均收入由高到低的顺序依次为:收入1k的人群为30个(对应30条业务数据),收入2k的人群为300个(对应300条业务数据),收入3k的人群为3千个(对应3千条业务数据),收入5k的人群为3万个(对应3万条业务数据)……,那么累计到收入业务属性对应的属性值:5k时,可以满足33.33%的用户数量,则可以将收入属性值“5k”作为低收入人群和高收入人群的分割阈值。当用户的收入权重不为固定值时,权重按照实际值累加,在此不再赘述。
也就是说,可以按照权重对业务属性的属性值进行相同属性值的权重合并,从而确定按相关业务属性区分业务数据的分割阈值,或称为带权分位点。
进一步地,如果业务数据的数量较大,则还可以利用分布式系统进行处理。例如,将A条业务数据分发给C个节点进行处理。然后,将C个节点的数据处理结果合并在一起。
如图1所示,可以由计算平台将多条业务数据分发给各个设备节点进行处理。各个设备节点可以针对自身收到的业务数据,进行业务属性的属性值的合并权重处理。在一个实施例中,为了减少通信数据量,提高处理效率,计算平台也可以将业务数据中相应业务属性(如年龄)上的属性值,分发给各个设备节点。其中,为了保护数据传输过程中的数据隐私,可以采用加密等手段对分发的数据进行预处理,在此不再赘述。
各个设备可以分别对接收到的数据进行业务属性的属性值的权重合并权重处理。为了保护数据隐私,该合并权重处理过程例如可以通过TEE模式,在安全区域内进行。进行权重合并后的数据例如可以为以下格式:[v1:w1;v2:w2;v3:w3……],其中,v表示属性值(value),w表示合并后的权重(weight),下标表示合并项序号。
之后,各个设备节点之间可以按预定传递规则传递合并权重结果,以将属性值权重进一步合并。例如采用map reduce、tree reduce等方式进行传递和合并。以tree reduce为例,假设设备节点数量为5个,分别记为A、B、C、D,假设最终数据要给到设备节点A,则数据传递规则可以是B→A,同时,D→C,A和C分别在本地做进一步的权重合并,然后,经由C→A传递数据,由A进一步做权重合并,得到最终权重合并结果。
在图1示出的例子中,是由节点3和节点2将合并权重数据传递给节点1,由节点1做权重合并。节点3和节点2可以依次将本地合并权重数据传递给节点1,也可以同时将合并权重数据传递给节点1,在此不作限定。节点1对接收到的合并权重数据进一步进行权重合并,得到最终的权重合并数据后,可以传递给计算平台,由计算平台确定最终的分位点数据。可以理解的是,计算平台可以是独立于各个节点的计算机、设备、服务器等,也可以是分布在各个节点上的计算平台,或者分布式系统中的某个节点,在此不作限定。在计算平台是分布在各个节点上的计算平台,或者第一节点的情况下,第一节点还可以根据做种权重合并结果,确定相应分位点。
可以理解的是,图1中示出的设备节点数仅为示例,实践中,可以设置任意合理数量的设备节点,在此不做限定。
在利用分布式系统进行权重合并过程中,数据传输过程存在隐私泄露的风险。例如10条业务数据对应的年龄属性的属性值通过数组[1,2,1,2,9,2,7,3,2,4,5,10,1,6,8,1]记录,假设各个属性值对应的初始权重均为1,则记为[1:1,1:1,1:1,1:1,2:1,2:1,2:1,2:1,3:1,4:1,5:1,6:1,7:1,8:1,9:1,10:1]。合并权重后可以得到输出数组 [1:4,2:4,3:1,4:1,5:1,6:1,7:1,8:1,9:1,10:1]。该数组中,共有10项。而如果属性值是[1,2,1,2,1,2,1,3,2,4,5,1,1,2,2,1],则合并后的数组为[1:7,2:6,3:1,4:1,5:1],共有5项,显然,虽然初始的数组长度一致,但由于属性值取值分布不同,合并权重后,数据长度也不同。一个设备节点向另一个节点传输合并权重后的数据过程中,存在由数据长度泄露属性值分布的风险。
为此,在本说明书的技术构思下,设想通过传输预定长度数据的方式,来进行数据传输。一种思路是,数据长度仍为与业务数据条数一致的长度。这样,在业务数据条数较大(例如10万条),而业务属性的属性值取值较少(例如3个)的情况下,无效数据传输比例较大,造成通信资源或计算资源的浪费。
本说明书还提供一种新的构思,将传输的属性值项数设置为半固定值。所谓半固定值,也就是具有一定的规律,但不完全固定,例如2n,在n取1、2、3、4……时,分别为2、4、8、16……。由于不同业务属性,可选的属性值数量也不同,如性别,可选值可能为2,而收入的可选值则可以是任意自然数。可以理解,如果n为固定值,则对于可选值较多的业务属性,可能无法涵盖所有取值,而对于可选值较少的业务属性,可能造成较大冗余。而采用半固定值的方式,可以灵活确定传递的属性值项数,兼顾通信数据量以及数据隐私。
在传输的属性值项数为半固定值的构思下,可以在保留有效的权重合并项基础上,将传递的合并项的项数补齐为相应半固定值。为此,可以将n设置为随业务属性的可选值数量改变的值。例如,令2n为大于合并权重后的实际有效数据项数(也可以称为有效信息项的项数)的最小值。具体而言,在前述例子中,当合并权重的实际有效数据项数为10 时,n可以取4,2n为16,当合并权重的实际有效数据项数为5 时,n可以取3,2n为8。实践中,2n也可以替换成3n、n×10等等任意可行的数据,在此不作限定。
这样,设备节点之间传输的数据为固定的某些长度,例如8、16、32等,从而通过长度泄露数据的风险大大降低。
下面详细介绍本说明书的技术构思。
本说明书的实施例涉及实现隐私保护的分布式数据处理。其中的分布式系统可以包括多个节点,单个节点可以是具有一定运算能力的各种计算机、设备或服务器。可选地,单个节点可以实现TEE模式的安全计算。实现隐私保护的分布式数据处理流程可以用于,针对给定的M条业务数据(M为正整数),通过分布式系统确定业务数据中的第一业务属性的N个候选值(N为正整数)的分位点(也可以称为分割阈值)。其中, N个候选值由M条业务数据分别在第一业务属性上的M个属性值提供。可以理解的是,第一业务属性可以是业务数据中的任意业务属性,例如年龄、收入等。作为示例,假设有1000(即M=1000)条业务数据,第一业务属性为收入业务属性,这1000条业务数据中,收入业务属性的属性值为2000元的有200条,属性值为2500元的有400条,属性值为3000元的有200条,那么,这1000条业务数据所提供的候选值有3(即N=3)个,实现隐私保护的分布式数据处理流程可以在这3个候选值2000、2500、3000上确定至少一个分位点,以将这1000条业务数据按照收入业务属性分割开来。
在分布式系统下,各个节点可以获取部分业务数据进行处理。其中,各个节点获取的业务数据可以平均分配,也可以随机分配,还可以按照其他合理规则分配,在此不作限定。在业务数据传输过程中,可以采用约定的加密方式传输,例如TLS(Transport LayerSecurity,传输层安全协议)等方式。通常,为了节约通信量,还可以仅传输相应业务属性(以下以上述的第一业务属性为例进行说明)下的属性值,以及各个属性值在相应业务数据中对应的初始权重。对于第一业务属性来说,属性值和业务数据可以是一一对应关系。例如针对M条业务数据,平均分配到S个节点中的各个节点的数据为M/S条,格式可以为:[v1:w1;v2:w2;v3:w3……]。
单个节点在接收到相应业务数据后,可以在本地以TEE模式进行属性值的权重合并。通常,可以从头到尾依次遍历各个属性值,对相同属性值进行权重合并。例如单个节点接收到16条业务数据对应的年龄属性的属性值通过数组[1,2,1,2,9,2,7,3,2,4,5,10,1,6,8,1]记录,其中,假设各个属性值对应的初始权重均为1,则记为[1:1,2:1,1:1,2:1,9:1,2:1,7:1,3:1,2:1,4:1,5:1,10:1,1:1,6:1,8:1,1:1]。则可以依次遍历各个属性值,遍历到新的候选值时,在合并结果集内增加该新的候选值,在遍历到已有候选值时,将相应属性值的权重累加到结果集内的相应候选值对应的权重。例如前述属性值集合并权重后得到数组[1:4,2:4,3:1,4:1,5:1,6:1,7:1,8:1,9:1,10:1]。这里的数组中各个合并项均为有效信息项。可以理解,实践中,除了数组,属性值还可以通过集合等方式表示,本说明书对此不做限定。
在以上过程中,考虑到遇到相同的候选值,相应属性值的初始权重被累加(内存访问加法代码段),而遇到新的候选值,不执行属性值的初始权重累加(不访问加法代码段),则候选值的分布信息可能被泄露。
为此,根据一个可选的实施方式,可以在检测到每个属性值时,都在所有业务数据对应的候选值上进行累加运算。这样,相当于通过冗余加运算的方式,使得候选值的分布被保护。这种方式下,假设共有n条业务数据,运算复杂度为n2
根据另一个可选的实施方式,还可以提出以下新的解决方案:将属性值按照大小顺序排列,遍历各个属性值合并相同属性值的初始权重时,合并结果集中的项与各个属性值一一对应。也就是说,M/S个属性值,对应合并结果集中的M/S个合并项。对于每个合并项,设置一个标识,用于标识下一个值是否新的候选值,并根据该标识确定下一个属性值的权重在合并结果集中的基准值(也可称为基准权重)。例如,下一个属性值是新的候选值时,确定结果集中下一个合并项对应的属性值的基准值为预定值(如0),否则,下一个属性值不是新的候选值的情况下,确定结果集中下一个合并项对应的属性值的基准权重为该候选值在当前属性值累加到的合并权重。这样,不管下一个属性值是否为一个新的值,都会在基准权重的基础上进行加法运算,以对属性值的初始权重进行累加。可选地,上述标识也可以作为当前合并结果是否有效的标识(即有效性标识),例如,在下一个属性值是新的候选值时,当前合并项中的合并权重是当前候选值的最终合并结果,为有效信息,否则,下一个属性值不是新的候选值,当前候选值的在当前合并项中的合并权重不是该候选值的最终合并权重,可以是无效的。可选地,对于第一个属性值,可以确定基准权重为预定值(如0),那么在合并权重操作中第一个属性值对应的合并项也在初始值的基础上累加当前属性值的初始权重。也就是说,每个属性值,不管下一个属性值是否新的候选值,都会执行一次累加操作。这样,针对所有属性值的内存访问模式都是一致的,就不能通过内存访问模式获知属性值分布。同时,这种处理方式的复杂度为两次排序复杂度和一次遍历复杂度,与冗余加法的方式相比,算法复杂度大大降低,从而可以提高实现隐私保护的数据处理的有效性。
作为示例,对于前述的16项属性值数组[1:1,1:1,1:1,1:1,2:1,2:1,2:1,2:1,3:1,4:1,5:1,6:1,7:1,8:1,9:1,10:1],可以确定包括16个合并项的合并结果[1:1:0,1:2:0,1:3:0,1:4:1,2:1:0,2:2:0,2:3:0,2:4:1,3:1:1,4:1:1,5:1:1,6:1:1,7:1:1,8:1:1,9:1:1,10:1:1]。其中,合并结果中每一项可以指示出相应属性值对应的候选值的当前合并权重,以及当前合并项的有效性。其中,合并结果的格式为:v:W:New,其中,v表示属性值(或候选值),W表示当前的合并权重,New表示下一属性值是否为新的属性值的标识位,也是当前合并结果项是否为有效信息项的有效性标识。上例中,New=1表示下一个属性值为新的属性值,当前合并权重项为有效信息项,New=0表示下一个属性值不是新的属性值,当前合并权重项为无效信息项。以第3合并项“1:3:0”为例,表示候选值1经过累加第三个属性值1的初始权重后得到的合并权重为3,New=0表示下一个属性值仍为1,当前信息项为无效信息项。同时,由于New=0,下一个属性值对应的下一个合并项(第4项)的基准权重可以为当前合并权重3。在第4项,对应第4个属性值,在基准权重3的基础上,累加第4个属性值1的初始权重,得到合并权重4。由于第4合并项对应的下一个属性值为2,为新的候选值,因此当前合并项的New=1,所以第4合并项为“1:4:1”。同时,由于New=1,所以第5合并项的基准权重可以为固定值0。各个合并项原理相似,在此不再赘述。
在可选的实施例中,为了后续计算的方便,合并权重后的各个合并项还可以按照有效性标识排序,例如有效信息项靠前排列,如为[1:4:1,2:4:1,3:1:1,4:1:1,5:1:1,6:1:1,7:1:1,8:1:1,9:1:1,10:1:1,1:1:0,1:2:0,1:3:0,2:1:0,2:2:0,2:3:0]。
可以理解的是,分布式系统的单个节点确定合并结果的过程可以通过任意基于隐私保护的合理方式实现,包括但不限于以上列举的实施方式。
从整体构思来说,各个节点首先可以分别根据自身收到的属性值执行合并权重操作,得到相应合并结果。之后,不同节点之间可以通过通信,将合并结果向少数节点合并,以确定最终的M条业务数据关于第一业务属性的最终权重合并结果,用于确定分割N个候选值的分位点。
为了更明确各个节点之间的数据传递关系,请参考图2所示。在图2中,示出了分布式系统中,多个节点各自完成本地的合并权重操作之后,相互传递合并结果数据的交互关系示意图。该示意图中,各个节点之间的合并方式为tree-reduce,在可选的实现方式中,其合并方式也可以是map-reduce,在此不作限定。
参考图2所示,自下而上,节点B将本地合并权重操作的合并结果,向节点A发送若干合并项,由节点A基于B发送来的合并项与本地得到的合并结果执行进一步的合并权重操作。同理,节点D将本地合并结果发送给节点C、节点E将本地合并结果发送给节点F、节点H将本地合并结果发送给节点G。进一步地,节点A将本地合并结果发送给节点C、节点G将本地合并结果发送给节点F。此时,还有2个节点C和F具有最新的合并结果,可以由其中一个节点完成最终的权重合并操作,得到M个属性值的权重的最终合并结果。例如,由节点C将本地的最新合并结果发送给节点F,由节点F完成最终的权重合并操作。
在此过程中,分布式系统中必然存在第一节点和第二节点,第一节点可以向第二节点传递自身的权重合并结果,并由第二节点基于第一节点的权重合并结果和自身的权重合并结果,进一步进行权重合并操作。其中,第一节点和第二节点分别可以是分布式系统中的任意节点。第一节点在向第二节点传递自身的权重合并结果后,可以结束自身在分布式系统中确定当前第一业务属性的属性值分位点的任务。
下面参考图3,基于第一节点和第二节点之间的通信,描述本说明书实施例的权重合并流程。
如图3所示,首先,在步骤3011中,第一节点获取M个属性值中的m1个属性值,以及各个属性值分别对应的各个初始权重,并对m1个属性值执行合并权重操作,得到第一合并结果。可以理解,m1个属性值可以是M条业务数据中的m1条业务数据对应的属性值。其中,第一节点对m1个属性值执行的合并权重操作可以采用前文描述的任意一种操作方式。由前文可知,采用不同的操作方式,得到的合并结果中的合并项数也不同。在前文给出的实施方式中,得到的合并项数可以与m1个属性值所提供的候选值数量一致,也可以与属性值个数m1一致,在此不再赘述。
对于第一节点来说,假设其合并项要发送给第二节点进行合并,则在步骤3013中,第一节点还可以基于第一合并结果,确定出第一数量合并项,并发送给第二节点。可以理解,第一合并结果中,可能全部是有效信息项(针对各个属性值的最终合并结果项),也可能包括部分有效信息项和部分无效信息项(如前文例子中各个属性值对应的New=0的中间合并项)。而最终对M个属性值的权重合并结果,主要依赖的是有效信息项。因此,本说明书的实施架构下,采取的思路可以是,在有效信息项基础上添加一定干扰项,使得节点之间传递的合并项数是预定的若干候选项数之一。
可以理解,如果在合并项上添加固定项数作为扰动项,则由于各个节点在传递数据时均添加固定项数,仍有可能根据数据长度泄露数据隐私。例如,在对应有性别业务属性的情况下,性别的属性值的候选值通常为2个,那么添加的固定项数就较容易泄露。进而其他业务属性的候选值长度(可以指示出候选值数量)泄露的风险将会增加。同时,考虑到各种业务属性的属性值的候选值数量不一致的情况,设想预先设定可根据有效信息项,从按照预定规则确定的半固定长度的多个候选项数中选择一个数量,从而对节点之间传递的数据项数进行干扰。例如,预定规则可以为2n、10n等。
具体而言,第一节点在完成自身在当前的分布式系统中针对第一业务属性的属性值的权重合并任务后,可以根据合并结果中的有效信息项的数量,根据预定规则确定传递给第二节点的合并项数。在第一合并结果就是该第一节点最终的合并结果,可以按照第一合并结果中的有效信息项的数量,根据预定规则确定传递给第二节点的合并项数,即第一数量。以预定规则是10n为例,此时,各个节点传递的合并项的候选项数可能为10、20、30等等。在有效信息项为8时,n=1最接近该项数,则可以将第一数量确定为10。同理,预定规则为2n时,各个节点传递的合并项的候选项数可能为2、4、8、16、32等等这样的阶梯状取值。这样,可以避免通过长度泄露属性值的候选值数量。
特别地,在无效信息项较多的情况下,这种处理方式还可以有效减少通信数据量。例如上述实施方式中,合并结果中合并项的项数与属性值项数一致的实施方式下,假设属性值项数较多,如为1000,而属性值的候选值数量为15,则合并项中至多15项为有效信息项,无效信息项可多达985项。如果只取按照预定规则确定的候选项数(如2n),第一数量为16。根据一个实施例,可以将各个合并项按照标识位将有效信息项排列靠前,并截取前16项(可包含有效信息项的最小候选项数),作为第一数量合并项。根据另一个实施例,还可以取出这15个有效信息项,并补充一个具有无效标识(如New=0)的无效信息项,作为第一数量的合并项。在又一个实施例中,还可以在有效信息项的基础上补充干扰项。此时,可以补充不影响结果的干扰项,例如,属性值随机,合并权重为0的干扰项,或者属性值和合并权重至少一个为随机值,通过有效性标识记录为无效信息项的干扰项,等等。如此,既可以保证属性值分布数据隐私,又可以减少传输数据量。
第一节点可以将所确定的第一数量合并项传递给第二节点。这里节点之间的数据传递过程可以按照约定的协议传输,例如TLS加密协议等。
可以理解,步骤3011、步骤3013是第一节点至少需要执行的步骤。对于第二节点来说,按照时间顺序执行的步骤可以包括:
首先,在步骤3021中,对m2个属性值执行合并权重操作,得到第二合并结果。其中,在M条业务属性平均分配给各个节点的情况下,m2和m1可以是相等的。与第一节点类似地,第二节点对m2个属性值执行合并权重操作的方式同样可以是前述的各种实施方式,在此不再赘述。根据不同的实施方式,第二合并结果中的合并项数量可以是有效信息项的数量,也可以是与属性值数量一致的m2
然后,第二节点接收第一节点到发送来的第一数量合并项。其中第一数量合并项可以由步骤3011、3013的方式确定,在此不再赘述。值得说明的是,第一数量合并项中可以包括有效信息项和若干无效信息项。
这时,通过步骤3023,第二节点可以将第一数量合并项与第二合并结果进一步执行合并权重操作。可选地,在第二合并结果包含有无效信息项的情况下,可以将第二合并结果中的合并项做截断处理,保留包含有效信息项及若干无效信息项的最小候选项数。在可选的实施例中,该最小候选项数按照前述预定规则确定的半固定数量的合并项数,例如2n或10n(n为根据实际情形确定的正整数),等等。可选得,在第二合并结果仅包括有效信息项的情况下,可以不做处理,也可以在第二合并结果中的有效信息项基础上,补足包含有效信息项及若干无效信息项的最小候选项数,在此不作限定。
可以理解,在第二节点将第一数量合并项与第二合并结果进行进一步的合并权重操作时,第一数量合并项与第二合并结果中的各个合并项中还会出现相同的候选值,因此,可以将各个合并项看作初始的属性值项,相应的合并权重看作初始权重,重新执行前述的合并权重操作。值得说明的是,在第一数量合并项与第二合并结果中的各个合并项包括有效性标识的情况下,还可以重新根据合并权重操作的合并规则,确定候选值对应的有效性标识。对于包含无效标识的各个项,可以记录在合并结果中,也可以筛除,在此不作限定。
可以理解,在节点A和节点B的交互中,图2中的节点B相当于图3中的第一节点,节点A相当于图3中的第二节点。同理,对于存在交互关系的节点C和节点D来说,节点C相当于图3中的第二节点,节点D相当于图3中的第一节点。对于节点E和节点F之间、节点G和节点H之间的交互来说,节点F、节点G相当于图3中的第二节点,节点E、H相当于图3中的第一节点,在此不再赘述。
进一步地,在包含节点A、节点C、节点F、节点G的交互关系中,节点A、节点C分别相当于图3中的第一节点、第二节点,节点F、节点G分别相当于图3中的第二节点、第一节点。更进一步地,此时保留的节点C、节点F分别相当于图3中的第一节点、第二节点。最终,参考图2中的箭头所示,节点A、B、C、D、E、F、G、H,这8个节点上的合并权重操作的合并结果都合并到节点F中。
可以理解,在图3中,第二节点可以指示分布式系统中任一个确定的节点,例如图2中的节点F。在第二节点作为最终所有节点的合并结果归一到的节点的情况下,第二节点还可以包括步骤302s(s为大于等于4的自然数),根据最终合并结果中的各个合并项确定分位点。可以理解,最终的合并权重中,包含了M个属性值所提供的N个候选值的各个候选值权重,因此,可以根据候选值权重来确定分位点。
在可选的实施方式中,第二节点可以根据预设的分位条件,确定用于分割M个属性值的至少一个分位权重。这里,分位条件可以是预先设定的、可以是用于分割M个属性值的业务条件。例如,对M条业务数据的筛选比例、M条业务数据的分布规律等等中的至少一项。对M条业务数据的筛选比例,例如是筛除收入较低的20%,及收入较高的20%;M条业务数据的分布规律,例如是平均分布、正态分布、按2:6:2的比例分布等。
业务属性中,分位点往往是分割阈值,即按照大小顺序对属性值进行分割,通常不会将大小不在一个区间的属性值分在同一等份中。因此,可以按照根据属性值的大小顺序,累加相应候选值权重的构思,确定出分位权重。例如,在分位点用于将业务数据条数等分为5等份的情况下,分位点理论上可以是按照候选值大小顺序,候选值权重累加到20%、40%、60%、80%处的候选值。
在一个实施例中,可以按照候选值权重的累积比例确定分位权重。此时,可以依次累加各个有效信息项的候选值权重,得到总权重,基于总权重和分位条件,确定至少一个分位权重。假设12条业务数据的总权重为4,则均分4等份的情况下,按照候选值权重的累积确定3个分位权重分别为1、2、3。
可选地,还可以将候选值权重进行归一化处理,即将各个候选值权重分别相对于M个属性值的初始权重加和,或者相对于对最终合并结果中各项的候选值权重加和,得到的总权重进行归一化,然后按照归一化的候选值权重确定分位权重。由于归一化的权重总和为1,则容易根据分位条件确定分位权重,例如过滤掉属性值最低的40%(即0.4)的业务数据的情况下,归一化的分位权重为0.4。
进一步地,可以按照有效信息项的候选值排序,通过累加权重达到分位权重的方式,确定各个分位点,直至确定出最后一个分位点结束。作为示例,假设合并项按照有效性标识及候选值大小排序并进行权重归一化为[1:0.4:1, 2:0.4:1,3:0.1:1,4:0.1:1,1:0.1:0,1:0.2:0,1:0.3:0,2:0.1:0,2:0.2:0,2:0.3:0],从第一项开始检测候选值权重是否满足分位权重,分位权重为0.8,则累加第一个候选值权重后,累计权重为0.4,未达到分位权重,累加第二个候选值权重0.4,得到累计权重0.8,达到分位权重,相应的候选值2作为分位点。由于确定出最后一个分位点(没有其他分位权重),可以结束分割。
这种模式下,由于分位操作结束之前,对各项操作一致(如包括累加、判断),并且分位操作结束并不意味着有效信息项的结束,因此后面的各项无操作,是无法通过内存访问模式确定其是否属于无效信息项,或者有多少项属于无效信息项的,尤其在数据量较大的情况下,从而有效保护数据隐私。
可以理解,对于按照大小顺序排列的属性值来说,同一个候选值对应的业务数据不能拆分到两个类别,因此,在遇到累加一个候选值之前未达到目标分位权重,而累加后超过目标分位权重的情况下,当前候选值被确定为分位点,但该分位点分割出的属性值不严格对应分位权重对应的比例。此时,在可选的实现中,还可以按照实际分割比例继续后续的分位操作。例如,划分为3等份的例子中,合并项为9项:[1:2:1,2:2:1,3:1:1,4:3:1,5:1:1,1:1:0,2:1:1,4:1:0,4:2:0],确定的分位权重3、6,第一个目标分位权重为3,第一个候选值权重为2,未达到3,累加第2个第二个候选值权重2,得到累加权重4,超过3,则将第二个候选值权重对应的候选值2作为分位点。也就是说,相应业务属性值为候选值1、2的业务数据划分到第一类。则确定下一类的分位点时,可以从第三个候选值权重重新确定目标权重为7。当然,在一些实施例中,仍可以按照原目标权重6进行分位操作,本说明书对此并不限定。
值得说明的是,图3示出的第一节点和第二节点执行的操作仅为示例性的,在实际的实现中,第一节点也可能执行与第二节点相似的操作,第二节点也可能执行与第一节点相似的操作。例如结合图2,在节点A和节点B中的合并权重项进行合并时,节点A实际上执行的相当于图3示出的第二节点的操作,然而,在节点A和节点C中的合并权重项进行合并时,节点A相当于执行的是第一节点的操作,节点C相当于执行的图3中的第二节点的操作,进一步地,在节点C和节点F中的合并权重项进行合并时,节点C相当于执行图3示出的第一节点的操作,节点F相当于执行图3示出的第二节点的操作。当节点F为第二节点时,其还可以执行图3示出的第二节点对应的步骤3025,确定最终的分位点。
由此可见,一方面,分布式系统中,必然存在两个节点,分别作为图3示出的第一节点和第二节点;另一方面,图3示出的流程仅为示例性的,实践中,第一节点和第二节点在传递数据之前,还可能包含更多的执行步骤。例如,第一节点在步骤3013中确定第一数量的合并项,还可以是基于第一合并结果,与其他节点发送来的其他数量的合并项执行权重合并操作后的合并项确定的,例如第三节点发送来的基于针对m3个属性值执行权重合并操作得到的第三合并结果,确定的第三数量合并项。也就是说,第一节点在3013中,还可以执行包含类似图3中示出的第二节点的执行步骤的其他步骤。
回顾以上过程,本说明书实施例提供的方法,在利用分布式系统确定属性值的分位点的情况下,各个节点对分配到的属性值执行相同候选值的合并权重操作,并且在传递给其他节点进行进一步合并权重的合并结果项中,既包括有效信息项,又包括无效信息项,有效信息项和无效信息项的总项数为预定的候选项数之一,从而,可以在减少信息传输项数的基础上,降低通过合并结果项数泄露候选值的风险,有效保护通过分布式系统确定属性值的分位点时的数据隐私。
根据另一方面的实施例,还提供一种实现隐私保护的分布式数据处理的装置。图4示出该数据处理装置的一个实施例的示例性框图。该装置可以用于针对给定的M条业务数据,为业务数据中的第一业务属性的N个候选值确定分位点。其中,M、N均为正整数。可以理解的是,N可以是根据M条业务数据确定的值,预先未知。
如图4所示,实现隐私保护的分布式数据处理的装置400包括:获取单元401、合并单元402和通信单元403。可以理解的是,分布式系统中,各个节点执行的任务具有一定的可互换性。因此,假设分布式系统包括第一节点和第二节点,图4示出的装置400可以通用表示设置于第一节点的实现隐私保护的分布式数据处理的装置,或者设置于第二节点的实现隐私保护的分布式数据处理的装置。在第一节点和第二节点当前执行的任务不同时,相应装置的作用有所区别。
当装置400设置于第一节点时:
获取单元41,配置为获取M个属性值中的m1个属性值,以及各个属性值分别对应的各个初始权重;
合并单元42,配置为针对m1个属性值执行合并权重操作,得到第一合并结果,其中,合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;
通信单元43,配置为根据第一合并结果,向第二节点发送包括第一数量合并项,以供第二节点将第一数量合并项,与基于第二节点对m2个属性值执行合并权重操作得到的第二合并结果,进行进一步的合并权重操作,进而对M个属性值完成最终权重合并,从而根据N个候选值分别对应的各个最终候选值权重确定基于第一业务属性的至少一个分位点,第一数量是按照预定规则确定的若干候选项数之一,且大于第一合并结果中的有效信息项,有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项。
当装置400设置于第二节点时:
获取单元41,配置为获取M个属性值中的m2个属性值,以及各个属性值分别对应的各个初始权重;
合并单元42,配置为针对m2个属性值执行合并权重操作,得到第二合并结果,其中,合并权重操作用于将各个属性值中的相同属性值的进行权重叠加,以得到相应候选值的候选值权重;
通信单元43,配置为接收第一节点基于第一合并结果确定的第一数量合并项,其中,第一合并结果由第一节点基于对M个属性值中的m1个属性值执行的合并权重操作得到,第一数量是按照预定规则确定的若干候选项数之一,且大于第一合并结果中的有效信息项,有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项;
合并单元42还配置为,将第一数量合并项与第二合并结果进行进一步的合并权重操作,以对M个属性值完成权重合并,从而根据N个候选值分别对应的各个最终合并权重确定基于第一业务属性的至少一个分位点。
值得说明的是,图4所示的装置400是与图2示出的方法实施例相对应的装置实施例,图2示出的方法实施例中的相应第一节点和第二节点的描述分别适用于装置400设于第一节点、第二节点的情形,在此不再赘述。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图3中关于第一节点或第二节点所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图3中关于第一节点或第二节点所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本说明书实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本说明书的技术构思的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的技术构思的具体实施方式而已,并不用于限定本说明书的技术构思的保护范围,凡在本说明书实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的技术构思的保护范围之内。

Claims (14)

1.一种实现隐私保护的分布式数据处理的方法,所述方法用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述方法由所述第一节点执行,包括:
获取所述M个属性值中的m1个属性值,以及各个属性值分别对应的各个初始权重;
针对所述m1个属性值执行合并权重操作,得到第一合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;
根据所述第一合并结果,向第二节点发送第一数量合并项,以供第二节点将第一数量合并项,与基于第二节点对m2个属性值执行合并权重操作得到的第二合并结果,进行进一步的合并权重操作,进而对所述M个属性值完成最终权重合并,从而根据所述N个候选值分别对应的各个最终候选值权重确定基于第一业务属性的至少一个分位点,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项。
2.根据权利要求1所述的方法,其中,所述合并权重操作包括:
按照大小顺序排列各个属性值;
针对排序后的各个属性值,依次对相同候选值进行权重叠加,得到与各个属性值一一对应的各个合并项,其中,单个合并项对应有单个候选值、候选值权重、有效性标识,所述有效性标识基于对所述单个合并项对应的单个属性值是否为相应候选值对应的最后一个属性值的检测确定,用于描述所述单个合并项是否为有效信息项。
3.根据权利要求2所述的方法,其中,所述单个合并项对应的候选值权重通过以下方式确定:
根据所述单个合并项对应的单个属性值与前一个属性值是否相同,确定所述单个合并项对应的基准权重;
在所述基准权重上叠加所述单个合并项对应的单个属性值的初始权重,得到所述单个合并项对应的候选值权重。
4.根据权利要求3所述的方法,其中,所述基准权重通过以下方式确定:
在所述单个属性值是相应候选值的第一个属性值的情况下,确定所述基准权重为预定值;
在所述单个属性值不是相应候选值的第一个属性值的情况下,确定所述基准权重为所述单个合并项的前一个合并项对应的候选值权重。
5.根据权利要求2所述的方法,其中,所述单个合并项对应的有效性标识通过以下方式确定:
在所述单个合并项对应的单个属性值与所述单个属性值的下一个属性值相同,确定所述单个合并项为无效信息项的情况下,设置所述单个合并项对应的有效性标识为第一预设值;
在所述单个合并项对应的单个属性值与所述单个属性值的下一个属性值不相同,或者所述单个合并项对应所述M个属性值的最后一个属性值,确定所述单个合并项为有效信息项的情况下,设置所述单个合并项对应的有效性标识为第二预设值。
6.根据权利要求1所述的方法,其中,所述第一数量合并项通过以下方式确定:
根据所述第一合并结果中的有效信息项的数量,确定所述若干候选项数中大于所述有效信息项的数量的最小候选项数;
将所述大于所述有效信息项的数量的最小候选项数,作为所述第一数量;
确定以下项为所述第一数量合并项:所述第一合并结果中的各个合并项中的有效信息项,以及若干无效信息项;所述若干无效信息项是从第一合并结果的无效信息项中选取,或者随机生成。
7.根据权利要求1所述的方法,其中,所述分布式系统还包括第三节点,所述根据所述第一合并结果,向第二节点发送包括第一数量合并项包括:
获取所述第三节点发送来的第三数量合并项,其中,所述第三数量合并项由所述第三节点基于对所述M个属性值中的m3个属性值执行的合并权重操作得到的第三合并结果确定;
对所述第一合并结果与所述第三数量合并项执行所述合并权重操作,得到第四合并结果;
根据所述第四合并结果确定所述第一数量合并项,以发送给第二节点。
8.根据权利要求1所述的方法,其中,所述预定规则为:2的整数次幂,或者10的整数倍。
9.一种实现隐私保护的分布式数据处理的方法,所述方法用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据分别在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述方法由所述第二节点执行,包括:
获取所述M个属性值中的m2个属性值,以及各个属性值分别对应的各个初始权重;
针对所述m2个属性值执行合并权重操作,得到第二合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;
接收所述第一节点基于第一合并结果确定的第一数量合并项,其中,所述第一合并结果由所述第一节点基于对所述M个属性值中的m1个属性值执行的合并权重操作得到,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项;
将所述第一数量合并项与所述第二合并结果进行进一步的合并权重操作,进而对所述M个属性值完成最终权重合并,从而根据所述N个候选值分别对应的各个最终候选值权重确定基于第一业务属性的至少一个分位点。
10.根据权利要求9所述的方法,其中,所述方法还包括:
基于对所述第一数量合并项与所述第二合并结果进行进一步的合并权重操作得到的合并结果,得到对所述M个属性值的最终合并结果;
根据预设的分位条件,确定用于分割所述M个属性值的至少一个分位权重;
按照对所述最终合并结果中的各个有效信息项中各个候选值的大小顺序,依次累加相应的候选值权重,从而将累加的候选值权重,分别达到各个分位权重时的相应候选值,确定为各个分位点。
11.一种实现隐私保护的分布式数据处理的装置,所述装置用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据分别在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述装置设于所述第一节点,包括:
获取单元,配置为获取所述M个属性值中的m1个属性值,以及各个属性值分别对应的各个初始权重;
合并单元,配置为针对所述m1个属性值执行合并权重操作,得到第一合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;
通信单元,配置为根据所述第一合并结果,向第二节点发送包括第一数量合并项,以供第二节点将第一数量合并项,与基于第二节点对m2个属性值执行合并权重操作得到的第二合并结果,进行进一步的合并权重操作,进而对所述M个属性值完成最终权重合并,从而根据所述N个候选值分别对应的各个最终候选值权重确定基于第一业务属性的至少一个分位点,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项。
12.一种实现隐私保护的分布式数据处理的装置,所述装置用于针对给定的M条业务数据,通过分布式系统确定业务数据中的第一业务属性的N个候选值的分位点,其中,所述N个候选值由所述M条业务数据分别在所述第一业务属性上的M个属性值提供;所述分布式系统包括第一节点和第二节点,所述装置设于所述第二节点,包括:
获取单元,配置为获取所述M个属性值中的m2个属性值,以及各个属性值分别对应的各个初始权重;
合并单元,配置为针对所述m2个属性值执行合并权重操作,得到第二合并结果,其中,所述合并权重操作用于将各个属性值中的相同属性值进行权重叠加,以得到相应候选值的候选值权重;
通信单元,配置为接收所述第一节点基于第一合并结果确定的第一数量合并项,其中,所述第一合并结果由所述第一节点基于对所述M个属性值中的m1个属性值执行的合并权重操作得到,所述第一数量是按照预定规则确定的若干候选项数之一,且大于所述第一合并结果中的有效信息项,所述有效信息项是在合并操作中对单个候选值,完全合并相应的若干属性值的初始权重得到的合并项;
所述合并单元还配置为,将所述第一数量合并项与所述第二合并结果进行进一步的合并权重操作,以对所述M个属性值完成权重合并,从而根据所述N个候选值分别对应的各个最终合并权重确定基于第一业务属性的至少一个分位点。
13.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-10中任一项的所述的方法。
14.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项所述的方法。
CN202010693667.XA 2020-07-17 2020-07-17 实现隐私保护的分布式数据处理的方法及装置 Active CN111737751B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010693667.XA CN111737751B (zh) 2020-07-17 2020-07-17 实现隐私保护的分布式数据处理的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010693667.XA CN111737751B (zh) 2020-07-17 2020-07-17 实现隐私保护的分布式数据处理的方法及装置

Publications (2)

Publication Number Publication Date
CN111737751A true CN111737751A (zh) 2020-10-02
CN111737751B CN111737751B (zh) 2020-11-17

Family

ID=72654992

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010693667.XA Active CN111737751B (zh) 2020-07-17 2020-07-17 实现隐私保护的分布式数据处理的方法及装置

Country Status (1)

Country Link
CN (1) CN111737751B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113221161A (zh) * 2021-04-22 2021-08-06 朱洪东 在线教育大数据场景下的信息防护方法及可读存储介质
WO2023138379A1 (zh) * 2022-01-20 2023-07-27 支付宝(杭州)信息技术有限公司 基于隐私保护的联合数据查询方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105099653A (zh) * 2014-05-20 2015-11-25 华为技术有限公司 分布式数据处理方法、装置及系统
CN107547608A (zh) * 2016-06-29 2018-01-05 华为技术有限公司 分布式任务处理方法和装置
CN108259158A (zh) * 2018-01-11 2018-07-06 西安电子科技大学 一种云计算环境下高效和隐私保护的单层感知机学习方法
CN110334548A (zh) * 2019-07-16 2019-10-15 桂林电子科技大学 一种基于差分隐私的数据异常检测方法
CN110990871A (zh) * 2019-11-29 2020-04-10 腾讯云计算(北京)有限责任公司 基于人工智能的机器学习模型训练方法、预测方法及装置
CN111046429A (zh) * 2019-12-13 2020-04-21 支付宝(杭州)信息技术有限公司 基于隐私保护的关系网络构建方法及装置
CN111104434A (zh) * 2019-11-25 2020-05-05 北京理工大学 一种基于隐私保护多级属性相似度的电子医疗推荐方法
CN111176840A (zh) * 2019-12-20 2020-05-19 青岛海尔科技有限公司 分布式任务的分配优化方法和装置、存储介质及电子装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105099653A (zh) * 2014-05-20 2015-11-25 华为技术有限公司 分布式数据处理方法、装置及系统
CN107547608A (zh) * 2016-06-29 2018-01-05 华为技术有限公司 分布式任务处理方法和装置
CN108259158A (zh) * 2018-01-11 2018-07-06 西安电子科技大学 一种云计算环境下高效和隐私保护的单层感知机学习方法
CN110334548A (zh) * 2019-07-16 2019-10-15 桂林电子科技大学 一种基于差分隐私的数据异常检测方法
CN111104434A (zh) * 2019-11-25 2020-05-05 北京理工大学 一种基于隐私保护多级属性相似度的电子医疗推荐方法
CN110990871A (zh) * 2019-11-29 2020-04-10 腾讯云计算(北京)有限责任公司 基于人工智能的机器学习模型训练方法、预测方法及装置
CN111046429A (zh) * 2019-12-13 2020-04-21 支付宝(杭州)信息技术有限公司 基于隐私保护的关系网络构建方法及装置
CN111176840A (zh) * 2019-12-20 2020-05-19 青岛海尔科技有限公司 分布式任务的分配优化方法和装置、存储介质及电子装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113221161A (zh) * 2021-04-22 2021-08-06 朱洪东 在线教育大数据场景下的信息防护方法及可读存储介质
CN113221161B (zh) * 2021-04-22 2022-01-18 深圳十方融海科技有限公司 在线教育大数据场景下的信息防护方法及可读存储介质
WO2023138379A1 (zh) * 2022-01-20 2023-07-27 支付宝(杭州)信息技术有限公司 基于隐私保护的联合数据查询方法及装置

Also Published As

Publication number Publication date
CN111737751B (zh) 2020-11-17

Similar Documents

Publication Publication Date Title
CN108681565B (zh) 区块链数据并行处理方法、装置、设备和存储介质
CN111046429B (zh) 基于隐私保护的关系网络构建方法及装置
CN110401720B (zh) 信息处理方法、装置、系统、应用服务器和介质
CN108769146B (zh) 一种基于区块链的数据传输方法、装置及区块链系统
CN110033302B (zh) 恶意账户识别方法及装置
CN111737751B (zh) 实现隐私保护的分布式数据处理的方法及装置
CN112003920B (zh) 一种信息共享系统
CN111597548B (zh) 实现隐私保护的数据处理方法及装置
CN110505228B (zh) 基于边缘云架构的大数据处理方法、系统、介质及装置
CN107819891A (zh) 数据处理方法、装置、计算机设备和存储介质
US11394527B2 (en) Blockchain program and blockchain method
CN111464525B (zh) 一种会话识别方法、装置、控制设备及存储介质
CN112671932B (zh) 一种基于大数据和云计算的数据处理方法及云计算节点
US20210144451A1 (en) Control method, content management system, recording medium, and data structure
US10572486B2 (en) Data communication in a distributed data grid
Pan et al. TrajGuard: a comprehensive trajectory copyright protection scheme
CN115002211A (zh) 基于云原生的售后微服务实现方法、装置、设备及介质
CN109558744B (zh) 一种数据处理方法和系统
CN108964904A (zh) 群密钥安全管理方法、装置、电子设备及存储介质
CN111488490B (zh) 视频聚类方法、装置、服务器及存储介质
CN109919767B (zh) 交易风险管理方法、装置及设备
CN109657447B (zh) 一种设备指纹生成方法及装置
US6978368B1 (en) Method for detecting invalid electronic storage media and card system using the method
CN112288528A (zh) 恶意社群发现方法、装置、计算机设备和可读存储介质
CN106339376B (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