はじめに
Amazon Redshift は、高速かつ強力なフルマネージド型のペタバイト規模のデータウェアハウスサービスで、クラウドコンピューティングプラットフォームである Amazon Web Services の一部です。MoEngage × Redshift
MoEngage と Redshift の連携により、キャンペーンインタラクションイベントのデータを Amazon Redshift クラスターに直接エクスポートできます。連携
- Redshift クラスター、ロール、ポリシーを作成・編集する権限を持つ Amazon Web Services アカウントがあることを確認してください。
- 任意:新しいユーザーを作成するには、Redshift クラスターで新しいユーザーを作成するアクセス権が必要です。
- Redshift へのエクスポートは Streams アドオンの一部です。お使いのアカウントで有効にするには、担当の MoEngage CSM(カスタマーサクセスマネージャー)にお問い合わせください。
ステップ 1:Redshift クラスターがパブリックにアクセス可能であることを確認する
Redshift クラスターで “Publicly Accessible” 設定がオンになっていることを確認してください。- 新しい Redshift クラスターを作成する場合は、“Network and Security” セクションで “Turn on Publicly accessible” オプションを選択します。

- すでに Redshift クラスターがある場合は、Properties タブで Network and Security セクションを探します。“Edit” ボタンをクリックします。

ステップ 2:MoEngage 用の新しいデータベースユーザーを作成する
MoEngage は、お客様が提供した認証情報を使用して Redshift クラスターに接続します。MoEngage 専用に、権限を制限した新しいユーザーを作成することをおすすめします。既存のユーザーの認証情報を提供することもできます。新しい専用ユーザーを作成するには、Redshift クラスターで以下のコマンドを実行します。ステップ 3:MoEngage の IP がクラスターにアクセスできるようにする
新しいセキュリティグループを作成するか、既存のセキュリティグループを編集できます。新しいセキュリティグループを作成する
EC2 コンソールの “Network & Security” で、Security Groups ページを開きます。“Create security group” ボタンをクリックします。- セキュリティグループに名前と、任意で説明を付けます。
- VPC を選択します(デフォルトでは選択済みです)。
- 以下の詳細で新しいインバウンドルールを追加します。
“source” フィールドに入力する正しい IP アドレスは、MoEngage のデータセンターのリージョンによって異なります。
追加する必要があるインバウンドルールは 1 つだけです。たとえば、MoEngage の DC-01 サーバーを使用している場合は、最初の CIDR ブロックのみを追加します。

- アウトバウンドルールは空のままにします。
- 完了したら “Create security group” をクリックします。
既存のセキュリティグループを編集する
EC2 コンソールの “Network & Security” で、Security Groups ページを開きます。セキュリティグループの一覧から、編集するものを開きます。- セキュリティグループのページで “Actions” ボタンをクリックし、“Edit inbound rules” を選択します。
- 上記の表に従って、新しいインバウンドルールを追加します。
- 完了したら “Save rules” をクリックします。
セキュリティグループを Redshift クラスターにアタッチする
- Redshift コンソールで、Redshift クラスターを開きます。Properties タブに移動します。
- “Network & Security settings” セクションで、“Edit” ボタンをクリックします。
- VPC security groups で、作成または編集したセキュリティグループを選択します。
- 完了したら “Save changes” をクリックします。
ステップ 4:新しい IAM ポリシーを作成する
MoEngage が S3 から Redshift クラスターにデータを転送できるようにする、新しい IAM ポリシーを作成する必要があります。
- IAM コンソールの Access Management で、Policies に移動します。“Create policy” ボタンをクリックします。
- Create Policy ページで JSON タブに切り替え、以下のポリシーを貼り付けます。
<bucket-arn> の値は、MoEngage のデータセンターのリージョンによって異なります。
<bucket-arn> を、お使いの MoEngage データセンターのリージョンに対応するものに置き換えるだけです。
“Next” をクリックし、任意でタグを追加します。次に “Next: Review” をクリックします。
- ポリシーに名前と、任意で説明を付けます。準備ができたら “Create policy” をクリックします。

ステップ 5:新しい Redshift IAM ロールを作成する
このロールにより、MoEngage のサーバーが Redshift クラスターにデータを書き込めるようになります。- IAM コンソールの Access Management で、Roles に移動します。“Create role” ボタンをクリックします。
- Trusted entity type として “AWS service” を選択します。Use Case で、“Use cases for other AWS services” から “Redshift ” を選択します。Redshift のユースケースの種類で、“Redshift - Customizable ” を選択します。準備ができたら “Next” をクリックします。

- 次のステップで、ステップ 4 で作成したポリシーを選択します。完了したら Next をクリックします。

- ロールに名前を付け、先ほど作成した正しいポリシーがアタッチされているかを確認します。準備ができたら Create Role をクリックします。

ステップ 6:このロールを Redshift クラスターにアタッチする
Redshift コンソールで、Redshift クラスターを開きます。- Properties タブで、“Associated IAM roles” セクションに移動します。
- “Manage IAM roles” ボタンをクリックし、“Associate IAM roles” オプションを選択します。
- ポップアップのモーダルから、ステップ 5 で作成したロールを選択します。

- “Associate IAM roles” をクリックして、このロールを Redshift クラスターにアタッチします。
ステップ 7:MoEngage App Marketplace で Redshift 連携を有効にする
- MoEngage ダッシュボードで、App Marketplace に移動します。
- “Redshift” を検索します。
- “Integrate” タブに移動し、”+ Add Integration” をクリックします。

- Redshift クラスターの接続の詳細を入力します。


- 任意で、接続をテストできます。MoEngage は入力された詳細が正しいかどうかを検証します。問題がある場合はエラーが表示されるので、修正できます。
- 接続テストが成功したら、接続の詳細を保存できます。MoEngage は間もなく Redshift クラスターへのイベントのエクスポートを開始します。
データを正しく受信しているかを確認する
MoEngage はスキーマに以下の 2 つのテーブルを作成します。test_connection_moengage- このテーブルは、接続の詳細が有効かどうかを定期的に確認するために使用します。moengage_events- すべてのイベントをこのテーブルにダンプ(追加)します。

moengage_events テーブルをクエリすることで、データがウェアハウスに正しく流れているかを確認できます。

サポートされている日時形式
テーブル構造のサンプル
最終的なテーブル定義は、エクスポートの具体的な構成によって異なります。エクスポートの頻度
データは 1 時間ごとにダンプされます。よくある質問
データの受信はいつから開始されますか?
データの受信はいつから開始されますか?
通常、アカウントの自動データエクスポートが設定され、データが表示され始めるまでに最大 30 分かかります。
後から追加のイベントをエクスポートできますか?
後から追加のイベントをエクスポートできますか?
はい。後から新しいイベントをエクスポートする必要がある場合は、いつでも App Marketplace で構成を編集し、新しいイベントをエクスポートに追加できます。
自動データエクスポートを使用して履歴データをエクスポートできますか?
自動データエクスポートを使用して履歴データをエクスポートできますか?
現時点では、自動データエクスポートを使用して履歴データをエクスポートすることはできません。構成が完了すると、エクスポートを有効にした時点からの各イベントのデータが表示され始めます。
自動データエクスポートには料金がかかりますか?
自動データエクスポートには料金がかかりますか?
お使いの料金プランにこの機能がまだ含まれておらず、後から有効にする必要がある場合は、カスタマーサクセスマネージャーと協力して料金プランに含める必要があります。MoEngage が毎月データウェアハウス/パートナー/API に送信するデータ量に応じて、追加料金が発生する場合があります。
データエクスポートでは最新のユーザー属性が保証されますか?
データエクスポートでは最新のユーザー属性が保証されますか?
いいえ。データエクスポートは主にイベントをほぼリアルタイムでエクスポートするために構築されており、MoEngage のユーザー属性は非同期で更新されるため、現時点ではエクスポートにおけるユーザー属性の最新値を保証することはできません。


