Google Analyticsは、Googleが提供するウェブ解析サービスで、Google Marketing内のプラットフォームとしてウェブサイトのトラフィックを追跡・レポートします。Google Analytics import integrationを使用すると、Google Analyticsレポートをインポートできます。
多くのインテグレーションのサンプルワークフローは、Treasure Boxes on Githubで利用できます。
この機能はUniversal Analytics(UA)のみを使用しており、2023年7月1日に廃止されました。詳細については、このページをご覧ください。サービスを中断することなく継続するには、Google Analytics Data API Import IntegrationでGoogle Analytics 4 (GA4)の使用を検討してください。
- Treasure Dataの基本的な知識
- Google Analysisの基本的な知識
- ディメンションとメトリクスが指定されたGoogle Analyticsアカウント
Google Analyticsでレポートデータを取得するには、サービスアカウントに「Read & Analyze」以上のレベルの権限が必要です。
通常、TDは時間でデータをパーティション分割します。パーティション化時間として、longまたはtimestampカラムを選択します。デフォルトでは、Partition key seedはtimeカラムを使用し、具体的にはadd_timeフィルターを通じてupload_timeカラムを使用します。Google Analyticsでは、partition key seedはtime_seriesセクションで指定された「ga: date」または「date_hour」になります。
データコネクタの作成の一環として、Google API Consoleを使用してTreasure Dataを登録します。
Treasure DataをGoogle Analyticsで認証する方法により、データコネクタがGoogle Analyticsからインポートするために必要な手順が異なります。
| 認証方法 | |
|---|---|
| Google User Account: OAuth | OAuthの使用が最も一般的な方法です。この方法では、セットアップ手順が少なくて済みます。このセクションの残りをスキップして、TD Consoleに直接移動できます。 |
| Google Service Account—JSON | JSONの使用は、実装に必要な場合があります。この方法では、Google APIを使用したセットアップ手順が必要です。 |
Google Analytics data connectorは、APIコネクタを使用してGoogle Analyticsデータにアクセスします。
クリックして展開
Google API Consoleを開きます: https://console.developers.google.com/
APIを通じてアクセスしたいGoogle Analyticsアカウントにログインします。
APIサービスにアクセスする権限を持つように、Google Analyticsアカウントにログインします。
- Libraryに移動します。

- Create projectを選択します。

- 組織を選択します。

- New Projectを選択します。

- プロジェクトに名前を付けます。

- Createを選択します。
新しいService Accountの作成
新しいアカウントを作成するためにService Accountにアクセスします。service accountは、APIがGoogle Analyticsアカウントにアクセスすることを許可します。service accountはプロジェクト内で作成され、Google APIサービスにアクセスするためにログインしたGoogleアカウントから作成されます。
APIs & Servicesを選択します。

Service Accountsを選択します。
Create Service Accountを選択します。


- フィールドを入力して、「treasure-data」という名前のservice accountを作成します。

オプションパラメータをスキップします。
Done を選択します。
Actionsメニューを選択します。

- Manage keys を選択します。

- Add key を選択します。

- Create new key を選択します。

- Create を選択します。
JSONファイルが使用しているマシンにダウンロードされます。

認証情報を含むファイルは安全な場所に保管してください。JSONファイルのprivate key情報をData Connector設定ファイルで使用します。
例えば、生成されるファイルは次のようになります:
{
"type": "service_account",
"project_id": "central-stream-314923",
"private_key_id": "94d03bf7dd9c05bc122c695d1aa13f2a8a28f88e",
"private_key": "-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w**********************AoIBAQCNhAICLr/dozCQ
TW9ZNMNJ6RF+fVqhd0FUbw0VBIwy6BWu/LuaocJrzl2DHChAl0PNvGCDUAObBTRz
bUT/HOu47q**********7ENGK
Oir9VChG+Qubq25bAtOq/yTVEPJgnj*******AGVjojVnK4f
2YtW6ti7xBPwFBF1RPY56yTDeVQVko+KK3x+LFS+lTj1+jBBjvedWHrpQQfRHqV/
VtXyKyDybQlnfAOucMHzMxjQVLN4f9D7JVxCe52Wp7RaALCIdkKDqN/ffkNMF9QT
CjffudeTAgMBAAECggEAFMQnS0yy6QI2cSZ7zXpZofHqmEYq04DdfFdjcw8cx6eY
7vm1Seas0gcRX9j06y2HTJx1CS/np4rm/H0vX8RNrvCPYXrOJzUG2DOnW9pwi9Hl
Kb1Z0VErenzy/em78BI958fXIJ4vv5pjNUZ94njEBE4tbuWEJyTODMyuCfoXpye4
kCDY6DJFxDKUA7tZOTcK3t0YiVV0O2MwcUhJdr107kw4F1HXY/mlh87ki5z3tMy0
ISBKjvau2aWf0SVLZHtlo88JZGUak7tkuxnWaXQN+dUo1rZWKj867pBT4KWXzAbJ
UVQ7pBrDFri90fNQ5XFsQdS//dO2pFEn+1Aum86Q0QKBgQDB4RHjBWdJ3eMyvWWi
ipdCx4gC6G5Hqjt+icKv9yddyV/WvuMH82xDAHUJJBzaj9I45O5D+07O6TZO8CkZ
6Tqq92N3HEkHZWiUTo91C4qbO4ai5SXxpnWn5gsYc+JYPqNp1b+T1gZjA4Pj8l+t
eJ7VDGxu0tjK17Vj13turImXCQKBgQC629KRpvq9FAIWuA8NAXBSeqNyzktPVdOZ
5GJvwCevVzIapvwZPoZTaJ6xehta1hrR859ZReZx/j7ntoOjAjGw1rS//T5N98Hf
t+JpCemAa5ApcoUBAXmlb80jIHysRBgMUTLcTKnZuFT3RwsD1xtXjRct0doIF8EC
d8RLE7FkuwKBgQCJSuGIuwXWqBtAjiBPxwawUm29aWzWsPTqeZF1XHbzEiwc/RX2
Rmmu1L8MFxebqmb6xRr45xh6q2k64xSn9aIG+aLk8RHB/AzfoPYzs1WW8cM4zT5e
bjs5B01qJn3tcYX051l/zfq92Ppny/X2+Mi5I9ARdpvwoGoh5rDQwbu5SQKBgHx8
aGtKsC75Pm7+TmCevcLlGzEoCHohNqiGw6GphYbF84ZYCwmSYxD8WQTp0YGRtCp9
QILME7uL40KhkE8v7gTe9WoWf8SXs5ykt/y8cshwYImMVtmVrwItWp/1S7nEX7UM
/3JOzLVUnZ5jwQ3c58VLJM8MyFGt6ZMIUUinJP5zAoGAICmOlDqPWR2RXPo+9SkN
ok82AjvsjeUMDsiCkEVsAQMBZkYbND0047BAg7STqVjIaJg0zYFvQ5oow5zgu1lk
46nxtfQm3U58lILErGsmClxcOZR2nO7kvm0PJMUgENADGhP5pqE+8w+e4JC45Ojw
X7X+hhL/a7pu2Un9O/rXZVM=
-----END PRIVATE KEY-----
",
"client_email": "meg-td-service-account@central-stream-314923.iam.gserviceaccount.com",
"client_id": "117460147437348814027",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/meg-td-service-account%40central-stream-314923.iam.gserviceaccount.com"
}- Service accountsに戻り、key IDを確認します。

- service accountを選択します。

Show Domain Wide Delegationを展開します。
Enable Google Workspace Domain-wide Delegation を選択します。
product名として「Treasure Data」と入力します。

- Save を選択します。
作成したservice accountは、service account IDも作成します。このservice account IDには、API アクセス認証が付与されます。
これで、Google API内にprojectとaccount IDが作成されました。次に、このprojectで使用する特定のAPIを有効にします。このステップでは、Google Analyticsに関連する2つのAPIを登録します。
- Google Cloud Platformで、APIs & Services > Libraryに移動します。

- 検索バーを使用して、次を検索します:
Analytics API Reporting

Google Analytics Reporting APIを選択します。
Enableを選択します。

APIを有効にすると、Dashboardメニューから、登録されたすべてのAPIのリストを確認でき、APIの監視が開始されます。
Google API内のproject内の2つのAPIが、データ送信のために有効になります。service account IDは、Google Analyticsデータへのアクセスが許可されます。
Google APIで作成したservice accountに権限を追加します。
Google Analyticsでレポートデータを取得するには、service accountに「Read & Analyze」以上のレベルの権限が必要です。
Googleアカウントで引き続きGoogle Analyticsにログインしていることを確認します。次のURLにアクセスします: https://analytics.google.com/
Adminを選択します。
Account User Managementを選択します。
service accountに「Read & Analyze」以上のレベルの権限を定義します。
これで、service accountはGoogle Analytics APIを通じてGoogle Analyticsを使用するための適切なアクセス権を持つようになりました。
Treasure Dataへの認証を作成するには、view IDが必要です。
各データの一意のviewには、関連付けられたView IDがあります。アクセスしたいデータのView IDを知っている必要があります。
- Google AnalyticsのHomeページに移動します。例:
analytics.google.com/

Adminを選択します。
View Settingsを選択します。例:

- ページ上のView IDフィールドを見つけます。

- View IDをキャプチャまたはコピーします。これは、Treasure Data認証の作成に必要です。
Treasure Dataでは、クエリを実行する前に、データ接続を作成して設定する必要があります。データ接続の一部として、統合にアクセスするための認証を提供します。
TD Consoleを開きます。
Integrations Hub > Catalogに移動します。
Google Analyticsを検索して選択します。

- Create Authenticationを選択します。

- 以下の認証方法のいずれかを選択してください:
View IDとJSON keyの情報を入力します。
サービスアカウントのprivate keyが含まれていることを確認してください。JSON key情報全体が中括弧{…}で囲まれていることを確認してください。
- Google Cloud PlatformからダウンロードしたJSONファイルを、お好きなテキストエディタで探して開きます。例:

- View IDを入力します。例: 179999562
- Continueを選択します。
- 接続の名前を入力します。
- Doneを選択します。
認証接続を作成すると、自動的にAuthenticationsに移動します。
Google AnalyticsからDimensionとMetricの情報を入力する必要があります。
作成した接続を検索します。
New Sourceを選択します。
Data TransferフィールドにSourceの名前を入力します。
Nextを選択します。
Source Tableダイアログが開きます。DimensionとMetricの情報を入力する必要があります。Google Analyticsに移動して情報を取得し、Treasure Data Transfer data from Google Analyticsダイアログに情報を入力します。

以下のパラメータを編集します:
| Parameters | Description |
|---|---|
| Time Series | Time Seriesフィールドでは、日付と時刻を追跡するか、日付のみを追跡するかを指定します。 |
| Dimensions | Dimensionsはデータカテゴリです。Dimension値(dimensionに含まれるデータ)は、カテゴリの名前、説明、またはその他の特性です。例: - ga:pagePath - ga:referralPath |
| Metrics | Metricsはdimensionsに含まれるものを測定し、チャートの数値スケールとデータ系列を提供します。例: - ga:pageviews - ga:sessions - ga:users |
| Incremental | 繰り返し実行される場合、最後のインポート以降の新しいデータのみをインポートしようとします |
- Nextを選択します。
Data Settingsページは必要に応じて変更することも、ページをスキップすることもできます。 
オプションで、Data Settingsページのパラメータを編集します。
- Nextを選択します。
インポートを実行する前に、Generate Preview を選択してデータのプレビューを表示できます。Data preview はオプションであり、選択した場合はダイアログの次のページに安全にスキップできます。
- Next を選択します。Data Preview ページが開きます。
- データをプレビューする場合は、Generate Preview を選択します。
- データを確認します。
データの配置について、データを配置したいターゲット database と table を選択し、インポートを実行する頻度を指定します。
Next を選択します。Storage の下で、インポートされたデータを配置する新しい database を作成するか、既存の database を選択し、新しい table を作成するか、既存の table を選択します。
Database を選択 > Select an existing または Create New Database を選択します。
オプションで、database 名を入力します。
Table を選択 > Select an existing または Create New Table を選択します。
オプションで、table 名を入力します。
データをインポートする方法を選択します。
- Append (デフォルト) - データインポートの結果は table に追加されます。 table が存在しない場合は作成されます。
- Always Replace - 既存の table の全体の内容をクエリの結果出力で置き換えます。table が存在しない場合は、新しい table が作成されます。
- Replace on New Data - 新しいデータがある場合のみ、既存の table の全体の内容をクエリの結果出力で置き換えます。
Timestamp-based Partition Key 列を選択します。 デフォルトキーとは異なるパーティションキーシードを設定したい場合は、long または timestamp 列をパーティショニング時刻として指定できます。デフォルトの時刻列として、add_time フィルターで upload_time を使用します。
データストレージの Timezone を選択します。
Schedule の下で、このクエリを実行するタイミングと頻度を選択できます。
- Off を選択します。
- Scheduling Timezone を選択します。
- Create & Run Now を選択します。
- On を選択します。
- Schedule を選択します。UI では、@hourly、@daily、@monthly、またはカスタム cron の 4 つのオプションが提供されます。
- Delay Transfer を選択して、実行時間の遅延を追加することもできます。
- Scheduling Timezone を選択します。
- Create & Run Now を選択します。
転送が実行された後、Data Workbench > Databases で転送の結果を確認できます。
Treasure Workflow内で、ワークフローの一部としてこのデータコネクタの使用を指定できます。
詳細については、Using Workflows to Export Data with the TD Toolbeltを参照してください。