Slide 16
Slide 16 text
Copyright © 2019 OPT Inc. All Rights Reserved.
❶ Data Lake からschedule queryで ID Mapping Tableを作成
・login_idとそれに紐づくID(idfaやcookieなど)をマッピングしたテーブル
→ イベントログをlogin_id単位で見れるようにするために作成
・前日分だけの集計値とすでにある集計済みテーブルをfull joinしていくような処理をする。
→ adidは配列にアペンド, 広告IDはadidに対しての最新値を配列にアペンドするようにする
※ adidはadjustが発番しているIDで端末ユニークになる
【App】Data Lake → DWH → Data Mart
login_id adid
aa [aaa,bbb]
処理前日までの状態
login_id adid
aa [bbb,ccc]
処理当日のデータを集計
login_id bf_adid af_adid
aa [aaa,bbb] [bbb,ccc]
full join
login_id adid
aa [aaa,bbb,ccc]
2つの配列をくっつけてユニークにする。
以下サンプル (※ どちらかの配列が nullの場合はエラーになるのでケアが必要 )
SELECT
login_id,
(SELECT ARRAY_AGG(DISTINCT adid_array IGNORE NULLS) FROM
UNNEST(ARRAY_CONCAT(bf_adid, af_adid)) adid_array) adid
FROM
table
処理のイメージ