リソースベースの割り当て

このドキュメントでは、Google アナリティクス Reporting API v4 のリソースベースの割り当てについて説明します。この機能は、アナリティクス 360 でのみお使いいただけます。この API に適用される制限について詳しくは、制限と割り当てをご覧ください。

はじめに

共有リソースの可用性と信頼性を維持するため、アナリティクス Reporting API にアクセスするすべてのプロジェクトに制限と割り当てが適用されます。 大規模なデータセットに対してクエリを実行すると、アナリティクス Reporting API によってサンプリングが行われる場合があります。サンプリングはデータの結果に影響を与えます。

リソースベースの割り当ては、アナリティクス Reporting API を使用する際、アナリティクス 360 アカウントのサンプリングしきい値を引き上げることができる新しい割り当て機能です。リソースベースの割り当ては任意で、ビューとプロジェクトに対する既存の制限(Google API Console の割り当てページに表示される制限など)とは別に適用されます。

リソースベースの割り当て

すべてのリクエストが同じ条件で作成されるわけではありません。必要となる計算コストはリクエストによって大きく異なります。リソースベースの割り当ては、アナリティクス レポートのインフラストラクチャを保護しつつ、サンプリングしきい値の引き上げを可能にするための機能です。

各プロパティには、一定数のクエリリソース トークンが割り当てられます。API クライアントは、そのクエリリソース トークンと引き換えにオプションのフィールドを API リクエストに追加し、サンプリングしきい値を引き上げることができます。計算コストが大きいリクエストほど、より多くのトークンが必要になります。

サンプリングしきい値

Google アナリティクス API v4 を使用してデータをリクエストする場合、対象期間のセッション数(プロパティ単位)に基づいて、以下の一般的なサンプリングしきい値が適用されます。

  • アナリティクス スタンダード: 50 万セッション
  • アナリティクス 360: 100 万セッション
  • アナリティクス 360(リソースベースの割り当てを使用): 1 億セッション

リソースベースの割り当てを有効にする

特定のリクエストでリソースベースの割り当てを有効にするには、API 呼び出しを行う際、batchGet メソッドにオプションの useResourceQuotas フィールドを追加する必要があります。

{
  "reportRequests": [{object(ReportRequest)}],
  "useResourceQuotas": boolean,
}

例:

{
  "reportRequests":[
  {
    "viewId":"XXXX",
    "dateRanges":[
      {
        "startDate":"2017-06-15",
        "endDate":"2017-06-30"
      }],
    "metrics":[
      {
        "expression":"ga:sessions"
      }],
    "dimensions": [
      {
        "name":"ga:browser"
      }]
    }],
  "useResourceQuotas": true
}

クエリ リソースコストのレスポンス フィールド

batchGet メソッドを呼び出すと、そのレスポンスには必ず queryCost フィールドが含まれます。

{
  "reports": [{ object(Report) }],
  "queryCost": number
}

queryCost フィールドは、batchGet リクエストに含まれるすべての ReportRequests の合計リソースコストを表す整数です。 以下に例を示します。

{
  "reports": [
    {
      "columnHeader": {...},
      "data": {
        "rows": [...]
      }
    }
  ],
  "queryCost": 1337
}

割り当て

アナリティクス 360 プロパティの割り当て

  • 1 プロパティにつき、1 日あたり 100,000 クエリコスト単位
  • 1 プロパティにつき、1 時間あたり 25,000 クエリコスト単位

割り当ての上限を超えると RESOURCE_EXHAUSTED が返されます。詳しくは、エラー レスポンスをご覧ください。

コスト計算

リクエストのコストは以下に比例します。

  • 期間の長さ
  • ビュー内のヒット数
  • リクエストされたディメンションの基数
  • リクエストされたディメンションと指標の数
  • セグメントとフィルタ定義の複雑さ
  • リクエストされた情報の処理状態(昨日のデータより、今日のデータをリクエストする方がコストが大きくなります)
  • クエリタイム インポートのディメンションと指標の存在

API の制限と使用法

リソースベースの割り当てに加え、アナリティクス API v4 に適用される制限と割り当てがあります。

備考

  • queryCost レスポンス フィールドはリクエストの計算コストを表します。金銭的コストではありません。この API は無料で使用できます。
  • 当日および過去のデータ(1 年以上前)のレポートには、useResourceQuotas 設定にかかわらずサンプリングが適用されます。
  • リクエストのサンプリングしきい値を引き上げることができなかった場合、リソース割り当てトークンは差し引かれません(サンプリングされたレスポンスは、常にリソース割り当てコストがゼロです)。
  • レスポンスに samplesReadCounts フィールドと samplingSpaceSizes フィールドがある場合、そのレポートではサンプリング データが使用されます。

プロジェクトの割り当ての上限を表示、変更する場合や、割り当ての追加をリクエストする場合は、次の手順を行ってください。

  1. プロジェクトの請求先アカウントが まだない場合は作成します。
  2. API コンソールで API ライブラリの 有効な API ページにアクセスし、一覧から API を選択 します。
  3. 割り当て関連の設定を表示および変更するには、[割り当て] を選択します。割り当ての使用状況を確認するには、[使用状況] を選択します。