# Google Analytics Import Integration Google Analyticsは、Googleが提供するウェブ解析サービスで、Google Marketing内のプラットフォームとしてウェブサイトのトラフィックを追跡・レポートします。Google Analytics import integrationを使用すると、Google Analyticsレポートをインポートできます。 多くのインテグレーションのサンプルワークフローは、[Treasure Boxes on Github](https://github.com/treasure-data/treasure-boxes)で利用できます。 この機能はUniversal Analytics(UA)のみを使用しており、2023年7月1日に廃止されました。詳細については、[このページ](https://support.google.com/analytics/answer/11583528)をご覧ください。サービスを中断することなく継続するには、[Google Analytics Data API Import Integration](https://docs.treasuredata.com/display/public/INT/Google+Analytics+Data+API+Import+Integration)でGoogle Analytics 4 (GA4)の使用を検討してください。 ## 前提条件 - Treasure Dataの基本的な知識 - Google Analysisの基本的な知識 - ディメンションとメトリクスが指定されたGoogle Analyticsアカウント ## 要件 Google Analyticsでレポートデータを取得するには、サービスアカウントに「Read & Analyze」以上のレベルの権限が必要です。 ## Partition Key Seedについて 通常、TDは時間でデータをパーティション分割します。パーティション化時間として、longまたはtimestampカラムを選択します。デフォルトでは、Partition key seedはtimeカラムを使用し、具体的にはadd_timeフィルターを通じてupload_timeカラムを使用します。Google Analyticsでは、partition key seedはtime_seriesセクションで指定された「ga: date」または「date_hour」になります。 ## Google APIセットアップオプション データコネクタの作成の一環として、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を使用したセットアップ手順が必要です。 | ## JSON認証用のGoogle APIの設定 Google Analytics data connectorは、APIコネクタを使用してGoogle Analyticsデータにアクセスします。 クリックして展開 1. Google API Consoleを開きます: [https://console.developers.google.com/](https://console.developers.google.com/) 2. APIを通じてアクセスしたいGoogle Analyticsアカウントにログインします。 APIサービスにアクセスする権限を持つように、Google Analyticsアカウントにログインします。 1. **Library**に移動します。 ![](/assets/image2021-5-25_16-6-44.668f6414bd74b6bd24c0276c5e0a5bb23409909087303ccb3c65b809bec65c47.5a48ad91.png) 1. **Create project**を選択します。 ![](/assets/image2021-5-25_16-8-21.74338e99bcc8367db2630085fe46cc25af9bafb3442ee69843e1e066a00e2729.5a48ad91.png) 1. 組織を選択します。 ![](/assets/image2021-5-25_16-9-52.fe4e64a5029fa3216d53871203505da5c457f61c4b079a391a8e54f8a03b8e2d.5a48ad91.png) 1. **New Project**を選択します。 ![](/assets/image2021-5-25_16-10-24.f5ee7508b3d52954cc872ddb605716585aaa44d0f941fbdb5478e5875d25c03f.5a48ad91.png) 1. プロジェクトに名前を付けます。 ![](/assets/image2021-5-25_16-14-48.b277cc70b88e6cca1cf43c8b6277e2ad38c87f7861b31ff3f50724e5474a74a7.5a48ad91.png) 1. **Create**を選択します。 新しいService Accountの作成 1. 新しいアカウントを作成するためにService Accountにアクセスします。service accountは、APIがGoogle Analyticsアカウントにアクセスすることを許可します。service accountはプロジェクト内で作成され、Google APIサービスにアクセスするためにログインしたGoogleアカウントから作成されます。 2. **APIs & Services**を選択します。 ![](/assets/image2021-5-25_16-41-27.a559b5a2a6871572d74c6ed73bc6f6a456abb1f50b2e5330a9f43204d29db329.5a48ad91.png) 1. **Service Accounts**を選択します。 2. **Create Service Account**を選択します。 ![](/assets/image2021-5-25_16-42-58.24dff8ed9eb0a54b30cf23b9424c02cc876695cba2e78d68a2a64c9286d5461a.5a48ad91.png) ![](/assets/image2021-5-25_16-43-50.574957bca95fecfe7ef96ab009ca69316fe0535704e91959a9210d256efd8c34.5a48ad91.png) 1. フィールドを入力して、「treasure-data」という名前のservice accountを作成します。 ![](/assets/image2021-5-25_16-48-2.adc86d9b60d5f2641860256b8d704ad5138ed21ee1a80a78f541beaa22498b25.5a48ad91.png) 1. オプションパラメータをスキップします。 2. **Done** を選択します。 3. Actionsメニューを選択します。 ![](/assets/image2021-5-25_16-51-41.4b8f0dc8cd93d274f022a59ed545e18352a68f9941d97ceaea954252837e48b7.5a48ad91.png) 1. **Manage keys** を選択します。 ![](/assets/image2021-5-25_16-52-18.2b10ae21626168ccdc1c23da9c0396c3bb4946b8063e24e410a3a180b6f50534.5a48ad91.png) 1. **Add key** を選択します。 ![](/assets/image2021-5-25_16-53-15.52025b8089dcd1c2c9134556c42fd3223bcc22df770a3fc678f0a48f57c01fb7.5a48ad91.png) 1. **Create new key** を選択します。 ![](/assets/image2021-5-25_16-53-0.3f20e0e81ec0d84fd9780fd45a93c2155b2e55bada3a3c66778b6017b0413d38.5a48ad91.png) 1. **Create** を選択します。 JSONファイルが使用しているマシンにダウンロードされます。 ![](/assets/image2021-5-25_16-55-24.36e587cb336613c205f95729aae7fa9c86927e847a118a8f28a09631885b87c9.5a48ad91.png) 認証情報を含むファイルは安全な場所に保管してください。JSONファイルのprivate key情報をData Connector設定ファイルで使用します。 例えば、生成されるファイルは次のようになります: ```json { "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" } ``` 1. Service accountsに戻り、key IDを確認します。 ![](/assets/image2021-5-25_17-23-43.fa72064a4351bbd3af78c578642033810d7dfd472810095a29b4106115f2a5c5.5a48ad91.png) 1. service accountを選択します。 ![](/assets/image2021-6-2_16-15-41.44fd1d22c9a14c7e1993e0b93ad4d754f344178924725d3c53f40035a3d0a1d1.5a48ad91.png) 1. Show Domain Wide Delegationを展開します。 2. **Enable Google Workspace Domain-wide Delegation** を選択します。 3. product名として「Treasure Data」と入力します。 ![](/assets/image2021-6-2_16-18-35.29171077d1a7f536edd7d32a30376afd3d59d6fb87c00e3f4d0ec6401e1e839e.5a48ad91.png) 1. **Save** を選択します。 作成したservice accountは、service account IDも作成します。このservice account IDには、API アクセス認証が付与されます。 ## JSONのためのAnalytics APIの設定 これで、Google API内にprojectとaccount IDが作成されました。次に、このprojectで使用する特定のAPIを有効にします。このステップでは、Google Analyticsに関連する2つのAPIを登録します。 ### Analytics APIの検索と有効化 1. Google Cloud Platformで、APIs & Services > Libraryに移動します。 ![](/assets/image2021-6-2_16-27-4.a85148ba72ecd1882b2e4b23250b1b3fae235bae6146df650964c90befef763e.5a48ad91.png) 1. 検索バーを使用して、次を検索します: Analytics API Reporting ![](/assets/image2021-6-2_16-30-2.43acc8f2e0eedfc36c49922b1d685ab90dafcbbacb9dadfd3d6d41c159f10642.5a48ad91.png) 1. Google Analytics Reporting APIを選択します。 2. **Enable**を選択します。 ![](/assets/image2021-6-2_16-31-45.04492d87c2cf4f23fb9ce53fae88a80388c34bd256791cd4619d897f3777a547.5a48ad91.png) APIを有効にすると、Dashboardメニューから、登録されたすべてのAPIのリストを確認でき、APIの監視が開始されます。 ![](/assets/image2021-6-2_16-40-49.a7cd868901f2f937287122d6be5c3c9e4b6fe38d6374521ec49c3b7b895ee204.5a48ad91.png)Google API内のproject内の2つのAPIが、データ送信のために有効になります。service account IDは、Google Analyticsデータへのアクセスが許可されます。 ## JSONのためのGoogle APIとService AccountをGoogle Analyticsに関連付ける ### JSONのためのGoogle APIへのアクセスのためのService Account IDに権限を追加 Google APIで作成したservice accountに権限を追加します。 Google Analyticsでレポートデータを取得するには、service accountに「Read & Analyze」以上のレベルの権限が必要です。 1. Googleアカウントで引き続きGoogle Analyticsにログインしていることを確認します。次のURLにアクセスします: https://analytics.google.com/ 2. Adminを選択します。 3. **Account** **User Management**を選択します。 4. service accountに「Read & Analyze」以上のレベルの権限を定義します。 これで、service accountはGoogle Analytics APIを通じてGoogle Analyticsを使用するための適切なアクセス権を持つようになりました。 ## Google AnalyticsからView IDを取得 Treasure Dataへの認証を作成するには、view IDが必要です。 各データの一意のviewには、関連付けられたView IDがあります。アクセスしたいデータのView IDを知っている必要があります。 1. Google AnalyticsのHomeページに移動します。例: analytics.google.com/ ![](/assets/image2021-6-3_13-13-40.4e6cb13c0ddc85695cba1df1ea5295423cd9260ea1ccc4604828d54f936a68b3.5a48ad91.png) 1. Adminを選択します。 2. View Settingsを選択します。例: ![](/assets/image-20191015-193003.2e78337fd91e767a5f6b2632780f997668a8df030b8bb7cce246dece45ee0852.5a48ad91.png) 1. ページ上のView IDフィールドを見つけます。 ![](/assets/image-20191015-193026.bcf3e36358d4fd72967031a243583756a24fb7938074c44759c7ce3d9153f948.5a48ad91.png) 1. View IDをキャプチャまたはコピーします。これは、Treasure Data認証の作成に必要です。 ## TD Consoleからのデータコネクターの作成 ### 新しい接続の作成 Treasure Dataでは、クエリを実行する前に、データ接続を作成して設定する必要があります。データ接続の一部として、統合にアクセスするための認証を提供します。 1. **TD Console**を開きます。 2. **Integrations Hub** > **Catalog**に移動します。 3. Google Analyticsを検索して選択します。 ![](/assets/image2021-6-3_9-34-31.aecad98abe16bd81abc6adf96d90493c95cdcb34c7864036830971c3e5d31bf4.5a48ad91.png) 1. **Create Authentication**を選択します。 ![](/assets/image2021-6-3_9-40-8.88aa7ff86852dc436deeaa582842fdf89d400b2afcd14949ebb78e6462339b66.5a48ad91.png) 1. 以下の認証方法のいずれかを選択してください: JSON Key View IDとJSON keyの情報を入力します。 サービスアカウントのprivate keyが含まれていることを確認してください。JSON key情報全体が中括弧{…}で囲まれていることを確認してください。 1. Google Cloud PlatformからダウンロードしたJSONファイルを、お好きなテキストエディタで探して開きます。例: ![](/assets/image2021-6-3_9-45-59.7ade25ea5d865bb97e721985bd653ee35d1628a5632c2a834438e3cdd3b55642.5a48ad91.png) 2. **View ID**を入力します。例: 179999562 3. **Continue**を選択します。 4. 接続の名前を入力します。 5. **Done**を選択します。 OAuth ![](/assets/image2021-6-4_11-11-8.27122d7fffdf497d6583f13ad1978d0bcc597b97f460b14c266a20505b289e2a.5a48ad91.png) 1. **OAuth**を選択します。 2. OAuth接続がわかっている場合は入力し、それ以外の場合は新しいアカウントを接続する選択を行うことができます。 3. 新しいアカウントの接続を選択した場合、リンクするアカウントを選択し、Treasure Dataによるそのアカウントへのアクセスを許可することに同意する一連の画面が表示されます。 その後、TD ConsoleのAuthenticationsに戻ります。 4. **Google Analytics**を検索して選択します。![](/assets/image2021-6-3_9-34-31.aecad98abe16bd81abc6adf96d90493c95cdcb34c7864036830971c3e5d31bf4.5a48ad91.png) 5. OAuthを選択します。 アカウントがAuthentication connectionフィールドに表示されるはずです。例: ![](/assets/image2022-6-28_14-11-16.29f0e754731eea6590d8c43d83451dd7844a975a5ce01fe7d6d9ee09da84bb0c.5a48ad91.png) 6. **View ID**を入力します。例: 179999562 7. **Continue**を選択します。 8. 接続の名前を入力します。 9. **Done**を選択します。 ### Treasure Dataへのデータ転送 認証接続を作成すると、自動的にAuthenticationsに移動します。 Google AnalyticsからDimensionとMetricの情報を入力する必要があります。 1. 作成した接続を検索します。 2. **New Source**を選択します。 3. Data Transferフィールドに**Source**の名前を入力します。 **Next**を選択します。 Source Tableダイアログが開きます。DimensionとMetricの情報を入力する必要があります。Google Analyticsに移動して情報を取得し、Treasure Data Transfer data from Google Analyticsダイアログに情報を入力します。 ![](/assets/image2021-6-3_13-47-28.402443af93d83839910770caefd0dae1ba7f9bbedff26a3fb903f608c3aa7890.5a48ad91.png) 以下のパラメータを編集します: | Parameters | Description | | --- | --- | | Time Series | Time Seriesフィールドでは、日付と時刻を追跡するか、日付のみを追跡するかを指定します。 | | Dimensions | Dimensionsはデータカテゴリです。Dimension値(dimensionに含まれるデータ)は、カテゴリの名前、説明、またはその他の特性です。例: - ga:pagePath - ga:referralPath | | Metrics | Metricsはdimensionsに含まれるものを測定し、チャートの数値スケールとデータ系列を提供します。例: - ga:pageviews - ga:sessions - ga:users | | Incremental | 繰り返し実行される場合、最後のインポート以降の新しいデータのみをインポートしようとします | 1. **Next**を選択します。 Data Settingsページは必要に応じて変更することも、ページをスキップすることもできます。 ![](/assets/image2021-6-10_9-24-12.213554458bafff100344979ba180f585c8e5fbd300c1dbc54a25bda2176b7737.5a48ad91.png) オプションで、Data Settingsページのパラメータを編集します。 1. **Next**を選択します。 ### Data Preview インポートを実行する前に、Generate Preview を選択してデータの[プレビュー](/products/customer-data-platform/integration-hub/batch/import/previewing-your-source-data)を表示できます。Data preview はオプションであり、選択した場合はダイアログの次のページに安全にスキップできます。 1. **Next** を選択します。Data Preview ページが開きます。 2. データをプレビューする場合は、**Generate Preview** を選択します。 3. データを確認します。 ### Data Placement データの配置について、データを配置したいターゲット database と table を選択し、インポートを実行する頻度を指定します。 1. **Next** を選択します。Storage の下で、インポートされたデータを配置する新しい database を作成するか、既存の database を選択し、新しい table を作成するか、既存の table を選択します。 2. **Database** を選択 > **Select an existing** または **Create New Database** を選択します。 3. オプションで、database 名を入力します。 4. **Table** を選択 > **Select an existing** または **Create New Table** を選択します。 5. オプションで、table 名を入力します。 6. データをインポートする方法を選択します。 - **Append** (デフォルト) - データインポートの結果は table に追加されます。 table が存在しない場合は作成されます。 - **Always Replace** - 既存の table の全体の内容をクエリの結果出力で置き換えます。table が存在しない場合は、新しい table が作成されます。 - **Replace on New Data** - 新しいデータがある場合のみ、既存の table の全体の内容をクエリの結果出力で置き換えます。 7. **Timestamp-based Partition Key** 列を選択します。 デフォルトキーとは異なるパーティションキーシードを設定したい場合は、long または timestamp 列をパーティショニング時刻として指定できます。デフォルトの時刻列として、add_time フィルターで upload_time を使用します。 8. データストレージの **Timezone** を選択します。 9. **Schedule** の下で、このクエリを実行するタイミングと頻度を選択できます。 #### 一度だけ実行 1. **Off** を選択します。 2. **Scheduling Timezone** を選択します。 3. **Create & Run Now** を選択します。 #### 定期的に繰り返す 1. **On** を選択します。 2. **Schedule** を選択します。UI では、*@hourly*、*@daily*、*@monthly*、またはカスタム *cron* の 4 つのオプションが提供されます。 3. **Delay Transfer** を選択して、実行時間の遅延を追加することもできます。 4. **Scheduling Timezone** を選択します。 5. **Create & Run Now** を選択します。 転送が実行された後、**Data Workbench** > **Databases** で転送の結果を確認できます。 # オプションでWorkflowを設定 Treasure Workflow内で、ワークフローの一部としてこのデータコネクタの使用を指定できます。 詳細については、[Using Workflows to Export Data with the TD Toolbelt](https://api-docs.treasuredata.com/en/tools/cli/api/#workflow-commands)を参照してください。