BigQueryのデータをmixpanelに直接連携させてみた #Warehouse Events
ミックスパネラーの國崎です。
今回はBigQueryにあるデータをmixpanelに直接投入することができる機能Warehouse Eventsを使ってみたので、その所感をお伝えします。
本記事でわかること
- BigQuery→mixpanelの連携をWarehouse Eventsを使ってやる方法
「Warehouse Eventsとは?」について知りたい方は以下記事をご覧ください。
mixpanelにデータウェアハウスを直接つなぐWarehouse Events機能の紹介
BigQueryでmixpanel連携用のテーブルを用意する
BigQueryからmixpanelの連携にあたってですが、まずBigQueryでmixpanelに連携するようのテーブルを用意する必要があります。
具体的には以下カラムは必須です。
- Event Name
- Event Time
- Distinct ID
- Insert Time
- Insert ID
注意点としてはEvent Timeはイベントが発生した時間で、Insert Timeはレコードに追加された時間になります。
同じ時間でも定義が違うことに注意しましょう。
今回テストで使うテーブルで以下を用意しました。
Event_Name | Event_Time | Distinct_ID | Insert_Time | Insert_ID |
---|---|---|---|---|
シェアする | 2023/7/15 16:00:00 | 43922a76-8c2f-59fa-9e24-a5662a0b1581 | 2023/7/15 18:00:00 | 43922a76-8c2f-59fa-9e24-a5662a0b1581-1680318000007 |
QRを読み取る | 2023/7/15 18:00:00 | 43922a76-8c2f-59fa-9e24-a5662a0b1581 | 2023/7/15 20:00:00 | count-1680318000009 |
LINE登録をする | 2023/4/1 12:00:00 | 52336ef6-dd78-582a-8185-a099e0bcf269 | 2023/4/1 14:00:00 | 52336ef6-dd78-582a-8185-a099e0bcf269-1680318000002 |
クーポンを使う | 2023/4/1 14:00:00 | 8daaffc1-e947-53d8-b302-afb02202931d | 2023/4/1 16:00:00 | 8daaffc1-e947-53d8-b302-afb02202931d-1680318000004 |
QRを読み取る | 2023/4/1 15:00:00 | 863c803d-328d-5de7-97d3-cc20536d7e1a | 2023/4/1 17:00:00 | 863c803d-328d-5de7-97d3-cc20536d7e1a-1680318000005 |
LINE登録をする | 2023/4/1 16:00:00 | 43922a76-8c2f-59fa-9e24-a5662a0b1581 | 2023/4/1 18:00:00 | 43922a76-8c2f-59fa-9e24-a5662a0b1581-1680318000006 |
クーポンを使う | 2023/4/1 17:00:00 | testid123 | 2023/4/1 19:00:00 | testid123-1680318000007 |
QRを読み取る | 2023/4/1 18:00:00 | testid999 | 2023/4/1 20:00:00 | count-1680318000008 |
早速検証をしてみます。
mixpanelでの操作
mixpanelでは「Warehouse Sources」で連携するデータウェアハウスの設定を行い、「Warehouse Data」で連携するデータの設定を行います。
Warehouse Sourcesでデータウェアハウスを設定
Project Settings > Warehouse Data でAdd Warehouse > BigQueryをクリック。
今回投入するBigQueryのGCPプロジェクトIDを入力すると以下コードが表示されます。
Cloud Shellで上記で表示されたコードを入力するか、BigQuery に直接アクセスしてデータセットとテーブルへの特定のアクセス権限を付与する作業を求められます。
今回はCloud Shellの方法を選択します。
Cloud Shellを起動して、ターミナルにコードを流し込みます。
再度mixpanelに戻ってCreate Sourceをクリック。
Warehouse Dataで連携するデータの設定
Project Settings > Warehouse Data でAdd Warehouse Eventをクリック。
表示された画面左側で読み込むBigQueryのSource・Dataset・Tableを選択し、必須カラムのEvent Name・Event Time・Distinct ID・Insert Time・Insert IDがそれぞれどのカラムにあたるかを指定します。
Create EventをクリックしたらStatusがActiveになっていることを確認します。
レポート画面で確認してみると、BigQueryで入れたイベントが反映されているのが確認できました!
連携における注意点
今回検証をして気づきましたが、Event_Timeを2023/4/1にしていて、それ以降計測がないイベントデータは反映がされていませんでした。
なぜこれが反映されないのか、調査したところmixpanelのドキュメントに「Mixpanel のレポート ドロップダウン メニューでは、過去 30 日以内に発生しなかったイベントが非表示になります。」と記載がありました。
30日以上計測がないイベントデータについてはレポート画面で表示されないみたいですので、そのようなデータの連携はできないと踏まえて使ったが良さそうです。
どうしても見たい場合は、All Events>Insert IDでフィルター指定すれば確認はできました。
以上、BigQueryのデータをmixpanelに連携する検証記事でした。
mixpanelのデータをBigQueryに書き出す検証記事は以下をご覧ください。