# Amplitude Import Integration

[Amplitude Export Integrationについて詳しく見る](/ja/int/amplitude-export-integration)。

Amplitudeを Treasure Data と統合することで、データを強化し、より多くのデータポイントを追加し、Amplitudeが収集するデータをマーケティングスタックの他のすべての部分と統合することができます。

Amplitudeからデータをインポートするサンプルワークフローを表示するには、[Treasure Boxes](https://github.com/treasure-data/treasure-boxes/tree/master/td_load/amplitude)をご覧ください。

この同じコネクタを使用して、Amplitude Eventsを作成およびエクスポートできます。[Amplitude Export Integration](/ja/int/amplitude-export-integration)を参照してください。

AmplitudeとTreasure Dataを統合することで、次のことが簡単にできます:

- **Amplitudeに新しい機能を追加する。** 例えば、Treasure Dataを使用して、Amplitudeの行動データとSalesforceの顧客データを統合し、クロスデバイスの行動追跡を含む個人識別可能なレコードを作成できます。
- **Amplitudeから収集したデータを使用して、マーケティングスタックの残りの部分をよりスマートにする。** 例えば、Treasure DataとAmplitudeを使用して、使用状況に基づいてセグメントを作成する自動トリガーを設定し、それらをMarketoのカスタムナーチャーファネルに供給することで、チャーンを削減できます。


Treasure アカウントをお持ちでない場合は、[お問い合わせ](https://www.treasuredata.com/contact-us/)ください。

# Treasure コンソールを使用してAmplitudeに接続する方法

Treasure コンソールを使用してAmplitudeに接続するのは迅速で簡単です。または、CLIを使用して接続を作成することもできます。

## Amplitudeでの手順

Settings -> Projectsに移動し、次のステップに必要な**API Key**と**Secret Key**を取得します。

![](/assets/image-20191014-225323.a0daca87243ec3f0dda257f1afb126ed69fdfad52572525989a70281efb76279.14dc7fad.png)

## Treasure コンソールでの手順

1. **Treasure コンソール**を開きます。
2. **Integrations Hub > Catalog**に移動します。
3. Catalog画面の右端にある検索アイコンをクリックし、**Amplitude**と入力します。
4. Amplitudeコネクタにカーソルを合わせて、**Create Authentication**を選択します。


![](/assets/amplitude.60ba1250f28d59e3e47bed75f8b00fe24869e353a15d2d94182cc5de1034c40b.14dc7fad.png)
5. 必要な認証情報を入力し、**Continue**を選択します。

![](/assets/screenshot-2025-05-27-at-17.21.18.ad8583bb91407a472a29830596437ffc6a621d5b2a0c0e1b2a6f41b9456e3db0.14dc7fad.png)

1. 接続に名前を付けて、**Done**をクリックします。


![](/assets/amplitude_name.f136c590ede8015f53cbf23fa42dbc18b4c7b47ec8f4ea1402e0d7ad08a2b9c5.14dc7fad.png)

Region: EUと米国(デフォルト)の各地域のデータセンターをサポート

# AmplitudeデータをTreasure Dataに転送する方法

Connections -> My Connectionsで作成したAmplitude接続を選択します。

![](/assets/image-20191014-230206.1693cedb629cfab3698e09b3d8947378daf381c778b0c476ca58e1500f94083f.14dc7fad.png)

**New Transfer**を選択します。

![](/assets/image-20191014-230234.592b0a51995663b58b1be5377b01964493e8daa28edcb2e9724462fc1bf4d731.14dc7fad.png)

YYYYMMDDTHHの形式で開始時間を入力します。

オプションで、同じ形式を使用して終了時間を指定できます。終了時間が指定されていない場合、デフォルトはブラウザのタイムゾーンの現在時刻になります。

**Next**を選択してデータをプレビューします。

![](/assets/image-20191014-231151.ea2aecb9f5a6bcfa5468c6d0a3fd31967e2ba89d85e265e3738e03d2293ae444.14dc7fad.png)

データのプレビューが表示されます。**Next**を選択します。

![](/assets/image-20191014-230935.e0012dd41712cb0137d49b6725555f5e0ee9a32b0575c178f9e75ca76a1415fc.14dc7fad.png)

新しいデータベースを作成する場合は、**Create new database**をチェックし、データベースに名前を付けます。**Create new table**についても同様に行います。

既存のテーブルにレコードを**追加**するか、既存のテーブルを**置き換える**かを選択します。

デフォルトキーとは異なる**パーティションキーシード**を設定したい場合は、ポップアップメニューを使用してキーを指定できます。

![](/assets/image-20191014-231309.6161122ce7526848c6dac1edf81be2fccf85c456d0d126a7e17f1321352d81b8.14dc7fad.png)

**When**タブでは、1回限りの転送を指定するか、自動化された定期転送をスケジュールできます。**Once now**を選択した場合は、**Start Transfer**を選択します。**Repeat…**を選択した場合は、スケジュールオプションを指定してから、**Schedule Transfer**を選択します。

転送が実行された後、Databasesタブで転送の結果を確認できます。

![](/assets/image-20191014-231337.51985452884655d831cdfbe39254365e338136cd6bec25ec323e09e67b665f34.14dc7fad.png)

# コマンドラインを使用してAmplitudeに接続する方法

コマンドラインを使用してコネクターを設定する前に、Treasure Data Toolbeltをインストールする必要があります。

## Treasure Data Toolbeltのインストール

最新の[Treasure Data Toolbelt](https://toolbelt.treasuredata.com/)をインストールします。


```
$ td --version
0.15.3
```

## シードファイルの作成

まず、以下の例に示すように、認証情報を含むseed.ymlというファイルを作成します。


```yaml
in:
  type: amplitude
  api_key: "YOUR_API_KEY"
  secret_key: "YOUR_SECRET_KEY"
  start_time: "20160901T03" # UTC Timezone. The format is yyyymmddThh. "T" is a static character.
```

## Guess Fieldsコマンドの実行

ターミナルで次のコマンドを実行します:


```yaml
td connector:guess seed.yml -o load.yml
```

Connector:guessは、対象データを自動的に読み取り、データフォーマットをインテリジェントに推測します。

load.ymlファイルを開くと、推測されたファイルフォーマット定義が表示されます。これには、場合によってはファイルフォーマット、エンコーディング、カラム名、およびタイプが含まれます。


```yaml
in: {type: amplitude, api_key: API_KEY, secret_key: SECRET_KEY,
  start_time: 20160901T03}
out: {}
exec: {}
filters:
- type: rename
  rules:
  - rule: upper_to_lower
  - rule: character_types
 pass_types: ["a-z", "0-9"]
 pass_characters: "_"
 replace: "_"
  - rule: first_character_types
 pass_types: ["a-z"]
 pass_characters: "_"
 prefix: "_"
  - rule: unique_number_suffix
 max_length: 128
- type: add_time
  to_column: {name: time}
  from_value: {mode: upload_time}
```

rename filterの詳細については、Data Connector用のrenameフィルタープラグインを参照してください（リンクが必要です）。

previewコマンドを使用して、システムがファイルをどのように解析するかをプレビューできます。


```bash
td connector:preview load.yml
```

## ロードジョブの実行

最後に、ロードジョブを送信します。データのサイズによっては、数時間かかる場合があります。

Amplitudeコネクタは自動的にtimeカラムを提供しますが、--time-column server_upload_timeのような任意のタイムスタンプカラムとして指定することもできます。


```bash
td connector:issue load.yml --database td_sample_db --table td_sample_table
```

## スケジュール実行

コマンドラインから増分的で定期的なData Connectorの実行をスケジュールすることもでき、ローカルデータセンターでcronデーモンを使用する必要がなくなります。

最初のスケジュールインポートでは、Data Connector for Amplitudeはすべてのデータをインポートします。2回目以降の実行では、新しく追加されたファイルのみがインポートされます。

## スケジュールの作成

新しいスケジュールは、td connector:createコマンドを使用して作成できます。

スケジュールの名前、cron形式のスケジュール、データが保存されるデータベースとテーブル、およびData Connector設定ファイルが必要です。


```bash
td connector:create \
 daily_import \
daily_import \
"10 0 * * *" \
td_sample_db \
td_sample_table \
load.yml
```

`cron` パラメータは、3つの特別なオプション `@hourly`、`@daily`、`@monthly` も受け付けます。| デフォルトでは、スケジュールは UTC タイムゾーンで設定されます。`-t` または `--timezone` オプションを使用して、タイムゾーンでスケジュールを設定できます。`--timezone` オプションは、'Asia/Tokyo'、'America/Los_Angeles' などの拡張タイムゾーン形式のみをサポートします。PST、CST などのタイムゾーン略語は*サポートされておらず*、予期しない結果につながる可能性があります。

## スケジュールの一覧表示

`td connector:list` コマンドを実行することで、スケジュールエントリの一覧を表示できます。


```bash
$ td connector:list
```

## 設定とスケジュール履歴の表示

`td connector:show` は、スケジュールエントリの実行設定を表示します。


```bash
td connector:show daily_import
```

`td connector:history` は、スケジュールエントリの実行履歴を表示します。個々の実行結果を調査するには、`td job jobid` を使用します。


```bash
td connector:history daily_import
```

## スケジュールの削除

`td connector:delete` は、スケジュールを削除します。


```
td connector:delete daily_import
```

# 設定

利用可能なモードの詳細については、次の表を参照してください。

| **オプション名** | **説明** | **タイプ** | **必須?** | **デフォルト値** |
|  --- | --- | --- | --- | --- |
| api_key | API キー | string | yes | N/A |
| secret_key | API シークレットキー | string | yes | N/A |
| start_time | データシリーズに含まれる最初の時間、YYYYMMDDTHH 形式（例: '20150201T05'）。これは UTC タイムゾーンです。 | string | yes | N/A |
| end_time | データシリーズに含まれる最後の時間、YYYYMMDDTHH 形式（例: '20150203T20'）。これは UTC タイムゾーンです。 | string | no | 処理時間 |
| incremental | "mode: append" の場合は true、"mode: replace" の場合は false（下記参照）。 | bool | no | true |


# 付録

## Out Plugin のモード

seed.yml の out セクションでファイルインポートモードを指定できます。

#### append（デフォルト）


```
in:
  ...
out:
  mode: append
```

#### replace (td 0.11.10以降)

このモードは、ターゲットテーブルのデータを置き換えます。このモードでは、ターゲットテーブルに対して手動で行われたスキーマ変更はそのまま保持されます。


```
in:
  ...
out:
  mode: replace
```