BigQuery の日付パーティション分割テーブルに接続する

データポータルは、DATE、DATETIME、TIMESTAMP フィールドでパーティション分割された BigQuery テーブルからデータを取得できます。パーティション分割テーブルは、パーティションと呼ばれるセグメントに分割され、データの管理とクエリをより簡単に行うことができます。大きなテーブルを小さなパーティションに分割すると、クエリが読み取るバイト数を減らして、クエリのパフォーマンスを向上させ、費用を管理できます。詳細については、パーティション分割テーブルの概要をご覧ください。

データポータルで BigQuery の日付パーティション フィールドを使用する方法

データポータルを日付でパーティション分割された BigQuery テーブルに接続すると、このデータソースを使用するレポートの管理日付ディメンションとしてパーティション フィールドを割り当てることができます。詳しくは、レポートの期間を設定するをご覧ください。

データポータルのデータソースを日付パーティション分割テーブルに接続する

日付パーティション分割テーブルに接続する手順は次のとおりです。

  1. 新しい BigQuery データソースを作成するか、既存のデータソースの接続を編集します。
  2. 日付パーティション分割テーブルの接続の詳細を入力します。
  3. データソース接続ページの [設定] 列で、[(フィールド名)を期間ディメンションとして使用] チェックボックスをオンにします(ここで、フィールド名は BigQuery テーブルのパーティション フィールドの名前です)。

たとえば、BigQuery に order_date と ship_date の 2 つの日付フィールドを持つテーブルがあるとします。テーブルは order_date でパーティション分割されます。データポータルでこのテーブルに接続すると、このフィールドをこのデータソースに基づくグラフの期間ディメンションとして割り当てるオプションが表示されます。

BigQuery パーティション分割テーブルの Looker Studio データソースの構成。order_date パーティション フィールドには、[order_date を期間ディメンションとして使用] チェックボックス オプションがあります。

必須パーティション フィルタの効果

BigQuery テーブルでは、パーティション フィールドをデータのフィルタとして使用する必要があります。この要件により、[(フィールド名)を期間ディメンションとして使用] オプションを編集できるかどうかが決まります。

BigQuery テーブルでパーティション フィルタは不要

BigQuery テーブルのテーブルにパーティション フィルタが必要ない場合、[(フィールド名)を期間ディメンションとして使用] オプションはデフォルトでオフになっています。

[(フィールド名)を期間ディメンションとして使用] チェックボックスをオンにすると、次の影響があります。

  • データポータルでは、このデータソースに基づくグラフの期間ディメンションとして、パーティション フィールドが自動的に使用されます。
  • グラフを構成する際に、日付範囲ディメンションとして使用する別のフィールドを選択することはできません。
  • このデータソースを使用するグラフには、常にデフォルトの期間フィルタが適用されます。カスタム期間を適用することも、[自動] オプションを使用して過去 28 日間のデータをフィルタすることもできます。

[fieldname を期間ディメンションとして使用] オプションが有効になっていない場合:

  • このデータソースに基づくグラフを構成する際に、期間ディメンションとして使用するフィールドを選択できます。
  • このデータソースを使用するグラフの日付範囲は、フィルタなし(自動の日付範囲)にすることも、カスタムの日付範囲を適用することもできます。

BigQuery テーブルでパーティション フィルタが必要

BigQuery テーブルにパーティション フィルタが必要な場合、[(フィールド名)を期間ディメンションとして使用] チェックボックスは自動的にオンになり、オフにすることはできません。このデータソースに基づくグラフへの影響は、チェックボックスがオンになっている場合、前のセクションで説明したとおりです。

パーティション分割テーブルへの接続に関する上限

日付パーティション機能はグラフの期間ディメンションを設定するため、データポータルでは DATE、DATETIME、TIMESTAMP フィールドに基づくパーティションのみを使用して、レポートで日付フィルタリングを行うことができます。

データポータルは、BigQuery の [パーティション分割] オプションが [日] に設定されている場合にのみ、日付パーティションをサポートします。

BigQuery テーブルの詳細。テーブルが order_date フィールドで DAY ごとにパーティション分割されていることが示されています。

BigQuery テーブルに INTEGER などの他のデータ型に基づくパーティションがあり、パーティション フィルタが必要な場合は、カスタムクエリでそのフィールドを明示的にフィルタする必要があります。そうしないと、データポータルにエラーが表示されます。必須フィルタの詳細をご覧ください。