プロジェクト データを BigQuery にエクスポートする

Firebase では、プロジェクトの履歴データを調べたり分析したりするためのツールが Firebase コンソールに用意されています。これらのツールで、アプリの利用状況のさまざまな疑問に対する回答を得られます。とはいえ、自分独自の疑問に対する回答を得るために独自のクエリを作成したい場合もあります。

独自のクエリを作成するには、プロジェクト データを Firebase から BigQuery にエクスポートします。BigQuery を使用すると、BigQuery SQL でデータを分析したり、データをエクスポートして独自のツールで使用したりできます。

Firebase を構成して、次の Firebase プロダクトから BigQuery にデータをエクスポートできます。

必要な権限と推奨されるロール

BigQuery へのデータ エクスポートの設定を表示または管理するには、それに対応するレベルのアクセス権が必要です。

必要な Firebase アクセス権がない場合は、Firebase プロジェクトのオーナーに、Firebase コンソールの IAM 設定を介して該当するロールを割り当ててもらうよう依頼してください。オーナーの確認や割り当てなど、Firebase プロジェクトへのアクセスについてご不明な点がある場合は、Firebase プロジェクトの権限とアクセスに関するよくある質問をご覧ください。

次の表は、Firebase プロジェクトから BigQuery へのトップレベルのリンクに関するものです。

Firebase コンソールでの操作 必要な IAM 権限 必要な権限をデフォルトで含む IAM ロール その他の必要なロール
Firebase プロジェクトと BigQuery をリンクする firebase.links.create なし
Firebase プロジェクトと BigQuery のリンクを解除する firebase.links.delete なし
BigQuery の既存のリンクを表示する firebase.links.list なし

次の表は、Google Analytics のデータを BigQuery にエクスポートすることに関するものです。

Firebase コンソールでの操作 必要な IAM 権限 必要な権限をデフォルトで含む IAM ロール その他の必要なロール
Google Analytics データの BigQuery へのエクスポートを有効にする firebase.links.update
かつ
serviceusage.services.enable
かつ
resourcemanager.projects.getIamPolicy
かつ
resourcemanager.projects.setIamPolicy
特定の Firebase アプリのエクスポートを有効にする firebase.links.update
特定の Firebase アプリのエクスポートを無効にする firebase.links.update

次の表は、CrashlyticsPerformance Monitoring など、BigQuery にデータをエクスポートできる Firebase プロダクトに適用されます。

Firebase コンソールでの操作 必要な IAM 権限 必要な権限をデフォルトで含む IAM ロール その他の必要なロール
プロダクトのデータの BigQuery へのエクスポートを有効にする firebase.links.update なし
特定の Firebase アプリのエクスポートを有効にする firebase.links.update なし
特定の Firebase アプリのエクスポートを無効にする firebase.links.update なし

BigQuery へのエクスポートを有効にする

  1. Firebase コンソールで、[統合] ページに移動します。

  2. [BigQuery] カードで [リンク] をクリックします。

  3. 画面上の指示に従って、BigQuery へのエクスポートを有効にします。

エクスポートを有効にした場合の影響

  • データセットのロケーションを選択します。データセットの作成後はロケーションを変更できませんが、データセットを別のロケーションにコピーするか、データセットを別のロケーションに手動で移動(再作成)することはできます。詳細については、既存のエクスポートのロケーションを変更するをご覧ください。

    このロケーションは、BigQuery にエクスポートされたデータにのみ適用され、Firebase コンソールで使用するために保存されたデータのロケーションには影響しません。

  • デフォルトでは、プロジェクト内のすべてのアプリが BigQuery にリンクされ、後からプロジェクトに追加するアプリもすべて BigQuery に自動的にリンクされます。データを送信するアプリを管理することもできます。

  • Firebase は BigQuery に既存データのコピーをエクスポートします。 エクスポートするデータの初回の読み込みには、最長で 48 時間かかる場合があります。

  • Firebase は、BigQuery へのデータの毎日の同期を設定します。

    • 通常、プロジェクトをリンクした後、最初のデータセットが BigQuery にエクスポートされる翌日の同期まで待つ必要があります。

    • 毎日の同期は、BigQuery でスケジュール設定したエクスポートに関係なく、1 日 1 回行われます。同期ジョブのタイミングと所要時間は変更される可能性があるため、エクスポートの特定のタイミングに基づいてダウンストリーム オペレーションやジョブをスケジュールすることはおすすめしません。

BigQuery へのエクスポートを無効にするには、Firebase コンソールでプロジェクトのリンクを解除します。

既存のエクスポートのロケーションを変更する

プロダクトで BigQuery エクスポートを有効にしてデータセットを作成した後は、そのデータセットのロケーションを変更できません。ただし、既存のデータセットを別のロケーションの新しいデータセットにコピーし、その新しいロケーションにデータ エクスポートをリセットすることはできます。BigQuery データセットのロケーションについて学習する。

データ エクスポートのロケーションを変更するプロダクトを選択する

料金と BigQuery サンドボックス

Firebase プロジェクトを料金のかからない Spark プランで利用している場合は、CrashlyticsCloud MessagingGoogle AnalyticsPerformance MonitoringBigQuery サンドボックスにリンクできます。これにより、コストをかけずに BigQuery にアクセスできます。BigQuery サンドボックスの機能については、BigQuery サンドボックスの使用をご覧ください。

Firebase プロジェクトを有料プランで使用している場合は、A/B TestingCrashlyticsCloud MessagingGoogle AnalyticsPerformance MonitoringBigQuery にリンクできます。BigQuery の使用には通常の BigQuery の料金が適用されますが、これには上限のある無料の使用も含まれます。