Embulkで任意の列をHash化するFilter Pluginを書いたのでご紹介
用途
というか自分たちが使いたくなった経緯です。
本当はメールアドレスや電話番号といった個人情報を除去した状態でExportしたいけど、Export先のDBでJOINのキーとしてそういう情報を使いたいのでマスキングをしつつデータを一意にしたい、という要件があったので作りました。
使い方
詳しくはREADME読んで、と言うとそれまでなんですが、簡単に設定方法をご紹介します。
filters:
- type: hash
columns:
- { name: username }
- { name: email, algorithm: SHA-512, new_name: hashed_email }
-
columns
: Hash化したい列を配列で指定します-
name
: inputの列名です。 -
algorithm
: Hashアルゴリズムを指定します。MessageDigestを内部的には使ってて、そこで指定可能なアルゴリズムを記述します。(デフォルトはSHA-256
) -
new_name
: ハッシュ化した列に新しい名前を付けたい場合に記述します。デフォルトはinputの列名です。
-