统计型作业的差分隐私保护
本示例作业,以统计各行业的“企业税收总和”与“用电量总和”,进行统计分析:
Select industry, sum(tax_bal), sum(electric_bal) from LEAGUE_CREATOR.tax a join dayu002.power_data b on a.id = b.id group by industry
统计分析型的作业,可能被作业执行方通过增删某个碰撞的id,得到两次作业之间的差值,从而推算出实际taxpay和water_fee。
在返回最终统计结果前,增加了一个差分隐私计算的任务节点,如图3所示。
再执行如下sql,sql中过滤掉了某个企业,试图用差值去计算这个企业的税收值。
Select industry, sum(tax_bal), sum(electric_bal) from LEAGUE_CREATOR.tax a join dayu002.power_data b on a.id = b.id where a.id <> '123400558' group by industry
这个企业的实际tax为274:
得到新的结果如下:
经过计算,66539.583321490225131-66078.857559963717677=461,
通过差分隐私算法保护聚合操作的安全性,使开启算法保护的计算差值与预期得到的实际差值274不同,避免真实数据被窃取。