【BigQuery】 プライバシーポリシーとは (短め)
BigQueryには個人情報を保護するためのプライバシーポリシーというものがあります。
Analytics Hub の Data Clean Roomという新しい機能が使えるようになっていますが、そのData Clean Roomでもまさにこの「プライバシーポリシー」が使えるようになっているのです。
しかし、、、、
このプライバシーポリシーなるものが意外と良くわからん。。。
ということで、自分なりに納得したことがあったので、備忘録的にサクッとここでまとめておきます。
BigQueryプライバシーポリシーとは
要はデータの集計値から個人を特定できないようにしようというポリシーと考えてもらって結構です。
マニュアルには個人情報を保護するということは書かれているものの、、、、どうやって?Howの部分が少し分かりにくいので、その部分を少し解説します。
プライバシーポリシーに適用できる集計関数とは
集計関数とはみなさんご存知の通り
sumやavgやcountなどの集計関数がそうだと思います。
この集計関数に対して閾値を設けることによって、プライバシーを保護しようとしています。
ここまで聞いても頭の中は、ハテナが渦巻くと思います。
集計関数から個人情報が漏洩するケースを具体例で考えてみよう
それでは具体例を少し示すことで、集計関数から個人の情報が漏れるケースを簡単に説明してみます。
例えば、
国語、数学、英語の試験を受けた受験者グループをAグループ
国語、数学、理科の試験を受けた受験者グループをBグループ
国語、社会、倫理の試験を受けた受験者グループをCグループ
として、各グループごとの平均点をAVG関数を用いて算出したとしましょう。
Aグループの平均スコアは80点、Bグループの平均スコアは70点、Cグループの平均スコアは40点でした。
この情報からは個人に関する情報が漏れなさそうな感じはしますよね?
しかし、Aグループの人数は50人、Bグループの人数は15人、Cグループの人数は2人だった場合
どうなるでしょうか。
Aグループに属する人はおそらく何も思わないかもしれませんがCグループに属する人が特定された暁には、Cグループに属する個人のスコアがかなりわかってきてしまいますよね?
仮に太郎くんと花子ちゃんがCグループに属していた場合、太郎くんのスコアが発覚すると同時に花子ちゃんの情報が漏洩してしまう危機にあります。
ということで、意外にも集計関数から漏れるケースはあるよね?というのがこのプライバシーポリシーというものが出てくる背景になってくるのです。
プライバシーポリシーで何を制御する?
プライバシーポリシーでは集計しきい値というものを用いて制御します。
複雑そうに見えて簡単です。
さっきの例で言うと、グループに所属する人が50人を超える場合には平均スコアの結果を返す。
といったルールを設けるのです。
そのためこのルールに基づくと、先ほどの集計関数で結果が返ってくるのはグループAのみになります。
このようにプライバシーポリシーを用いて個人情報の漏洩を防ぐということを行っています。
まとめ
プライバシーポリシーは集計関数から意外と漏洩してしまった!みたいなケースをなくすためのルールのこと。
BigQueryの標準機能であり、Analytics Hubだと、Data Clean Roomで使えるようになっている。
その他制約事項はこちら
Discussion