LoginSignup
6
6

More than 5 years have passed since last update.

Firebase analyticsのBigQueryへExportされる新旧Schemaの対応表

Last updated at Posted at 2018-07-11

Firebase analyticsをBigQueryに連携することで、すべての行動ログデータを解析できるようになりますが、2018年7月上旬ぐらいから(正確な日時は不明)BigQueryに保存されるデータのSchemaが変更されました。新規のものも、既存のものも新しいデータは、新しいSchemaで保存されるようになっています。また、過去のデータの自動変換は行われていません。
現時点(2018/07/11)では、英語のドキュメントのみの変更となっており、日本語サイトの方はまだ更新されていません。
英語ドキュメント
日本語ドキュメント(魚拓)

データセット名、テーブル名、フィールド名がすべて刷新されており、既存のクエリは全滅します。ただし、なくなっている情報はほぼ無いので、フィールド名等を置き換えるだけで大体移行が可能です。

データセット名

補足
{organization}{appName}{platform} analytics_{random number?} 旧はプラットフォーム毎(iOS,Android等)にデータセットが分けられていたが、新では統合。新の名前の末尾につく謎の数値の情報求む。

テーブル名

補足
app_events_{yyyyMMdd} events_{yyyyMMdd}

Table Schema

ユーザー情報

基本的にuser_dimの階層がなくなり、user_のプレフィクスがつくようになっています

補足
user_dim none 消滅
user_dim.user_id user_id
user_dim.first_open_timestamp_micros user_first_touch_timestamp micro秒のまま
user_dim.user_properties user_properties Record
user_dim.user_properties.key user_properties.key
user_dim.user_properties.value.value user_properties.value 中間のvalueが省略されるようになった
user_dim.user_properties.value.value.{type}_value user_properties.value.{type}_value 同上
user_dim.user_properties.value.set_timestamp_usec user_properties.value.set_timestamp_micros

デバイス情報

resettable_device_idがadvertising_idに変わっているのが一番の注意点になるかと思います。

補足
user_dim.device_info device
user_dim.device_info.device_category device.category
user_dim.device_info.mobile_brand_name device.mobile_brand_name
user_dim.device_info.mobile_model_name device.mobile_model_name
user_dim.device_info.mobile_marketing_name device.mobile_marketing_name
user_dim.device_info.device_model device.mobile_os_hardware_model
(user_dim.app_info.app_platform) device.operating_system 元はapp_infoにあった
user_dim.device_info.platform_version device.operating_system_version
user_dim.device_info.device_id device.vendor_id
user_dim.device_info.resettable_device_id device.advertising_id
user_dim.device_info.user_default_language device.language
user_dim.device_info.device_time_zone_offset_seconds device.time_zone_offset_seconds
user_dim.device_info.limited_ad_tracking device.is_limited_ad_tracking

Geo情報

補足
user_dim.geo_info geo
user_dim.geo_info.{prop} geo.{prop}

App情報

結構変わっています。特に旧app_instance_idを使っている場合は、フォーマットが変わっているので注意が必要です。

補足
user_dim.app_info app_info
user_dim.app_info.app_version app_info.version
user_dim.app_info.app_instance_id none
none app_info.fireabase_app_id 旧app_instance_idに近いがフォーマットが全く違う
user_dim.app_info.app_id app_info.id
user_dim.app_info.app_store app_info.install_source
user_dim.app_info.app_platform platform or device.operating_system どちらかで取得可能

Trafic情報

補足
user_dim.traffic_source trafic_source
user_dim.traffic_source.user_acquired_campaign traffic_source.name
user_dim.traffic_source.user_acquired_medium traffic_source.medium
user_dim.traffic_source.user_acquired_source traffic_source.source

Bundle info

補足
user_dim.bundle_info.bundle_sequence_id event_bundle_sequence_id
user_dim.bundle_info.server_timestamp_offset_micros event_server_timestamp_offset

LTV 情報

補足
user_dim.ltv_info user_ltv
user_dim.ltv_info.{prop} user_ltv.{prop}

イベント情報

event_dimがRecord(配列みたいなもの)だったのがFlatな構造になったので、フィールドアクセスにUNNESTする必要がなくなりました。

補足
event_dim none event_プレフィクスになっています
event_dim.date event_date
event_dim.name event_name
event_dim.params event_params Record
event_dim.params.{props} event_params.{props}
event_dim.timestamp_micros event_timestamp 時間の単位はmicroで変わらず
event_dim.previous_timestamp_micros event_previous_timestamp 時間の単位はmicroで変わらず
event_dim.value_in_usd event_value_in_usd

新しく追加された情報

補足
none stream_id
none platform "IOS"などが取れる
6
6
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6