Skip to main content
お客様のコンバージョンが Amazon Redshift にある場合は、サイト上でそのコンバージョンを追跡せずに測定できます。Amazon Redshift ゴールは、定義したクエリをそのデータに対して実行し、結果をResults ページのコンバージョンとして使用します。
データウェアハウス統合は、Web Experimentation および Feature Experimentation モジュールのプレミアムアドオンとして提供されています。詳細については、カスタマーサクセスマネージャーにお問い合わせください。
Amazon Redshift のデータを使用するゴールを作成するには、まずAmazon Redshift をセットアップするで、特定のプロジェクトの Amazon Redshift を有効化します。 Amazon Redshift を使用してゴールを作成するには、ゴールの作成に記載されている Data warehouse tracking のフローに従い、Datawarehouse integration ドロップダウンから Redshift を選択します。ステップ 1 で、Redshift 固有の次のフィールドが求められます:
  • Redshift cluster type: 使用する Redshift のソースが Provisioned クラスターか Serverless ワークグループかを選択します。
  • Redshift cluster ID: Provisioned クラスターの場合は、そのクラスター ID を入力します。
  • Redshift serverless workgroup: Serverless ソースの場合は、Redshift Serverless ワークグループの名前を入力します。
  • Region: Redshift クラスターが存在するリージョンコードを入力します。
  • Database: コンバージョンデータを含むデータベースを入力します。
  • Frequency: Kameleoon がゴールデータを更新する頻度を選択します。
  • Query: Amazon Redshift からコンバージョンデータを取得する SQL クエリを記述します。
ステップ 1 を完了します。必要に応じてステップ 2 の Advanced settings を構成し、ゴールを保存します。

クエリ形式

クエリは次の特定の形式に従う必要があります: SELECT visitor_id, conversion_timestamp FROM your_events_table ここで、visitor_id は訪問者の一意の ID を表す列で、conversion_timestamp はコンバージョンが発生した正確な時刻を表す列です。Amazon Redshift では、conversion_timestamp 列は Timestamp 型の列である必要があります。 各コンバージョンに収益を関連付ける場合は、クエリを次の代替形式に従わせる必要があります: SELECT visitor_id, conversion_timestamp, revenue FROM your_events_table ここで、revenue は各コンバージョンの収益を含む列です。 より複雑なクエリでは、次のようにサブクエリを作成して、この形式に従うことができます: SELECT visitor_id, conversion_timestamp, revenue FROM ( {your_original_query} ) AS subquery

Kameleoon がコンバージョンデータをポーリングする仕組み

Kameleoon は、ゴールの背後にある Amazon Redshift のコンバージョンデータを、選択した Frequency に従ってポーリングし、タイムスタンプでフィルタリングする WITH 句をクエリに追加します。実行のたびにイベント履歴全体を再読み込みするのではなく、Kameleoon は増分でポーリングします。各ポーリングジョブは最後に成功したポーリング時点を記録し、次回の実行では、その時点以降の新しいレコードの時間枠だけをクエリします。この時間枠だけをクエリすることで、Kameleoon がすでにインポートしたデータを再スキャンしないため、各ポーリングが高速になります。Kameleoon はコンバージョンをその頻度で収集しますが、実験結果にマージするのは 1 日に 1 回だけです。 ポーリングは常に前方に進むため、最後に成功したポーリング時間枠よりも前のタイムスタンプで Amazon Redshift に到着したレコードを、Kameleoon が見逃すことがあります。遅延レコードは、データパイプラインがコンバージョンイベントを書き込むのに時間がかかるために発生します。そのため、Kameleoon が所属する時間枠をすでにポーリングした後で、レコードが Amazon Redshift に到着します。見逃しを防ぐには、Customer Success Manager に依頼して、下記のインジェスチョン時間枠をパイプラインの通常の到着遅延に合わせてください。 Kameleoon は、遅延レコードのタイムスタンプが、まだポーリングしていない時間枠に含まれている間だけ、そのレコードをインポートします。ポーリング時点が 1 日を超えると、Kameleoon はその日を再読み込みしないため、その日の遅延行や修正済みの行はインポートしません。

インジェスチョン時間枠

既定では、Kameleoon は、ゴールのコンバージョンイベントが発生してから Amazon Redshift のウェアハウスで利用可能になるまでの間に、最大 1 時間を許容します。ポーリング時間枠は、この遅延を自動的に考慮します。パイプラインで Amazon Redshift へのイベント書き込みに 1 時間を超える時間がかかる場合(例:バッチ処理や夜間の ETL ジョブが原因の場合)、その遅延レコードはポーリング時間枠の外に落ち、取りこぼされます。Customer Success Manager に連絡し、遅延をパイプラインの実際の到着遅延に一致するように延長してください。

失敗したポーリングとスキーマの変更

ポーリングが失敗すると、ポーリング時点は元の位置のままになります。ポーリング時点とは、Kameleoon がレコードのインポートを完了した時刻のことです。そのため、次の定期ポーリングは同じ時点から開始し、同じ時間枠を再試行します。クエリが再び成功すると、Kameleoon はその時間枠のレコードをインポートします。 スキーマの変更は、何が変わったかによって、結果に次の 2 通りのどちらかの影響を与えます:
  • クエリが想定する列がない、または名前が変更された: ポーリングは失敗し、Kameleoon は失敗を記録します。ポーリング時点は進まないため、クエリがテーブルに再び一致するまで、後続の実行で時間枠を再試行します。
  • 列名は変わらないが、意味が変わった: ポーリングは成功し、ポーリング時点は進みます。Kameleoon は、同じ名前の列が想定どおりの訪問者識別子、タイムスタンプ、収益を保持しているかを確認しないため、エラーがなくても結果が誤る可能性があります。
クエリが読み取るテーブルまたはビューの名前を変更したり、構造を変更したりした後は、クエリを再実行して、想定した列が返されることを確認してください。

訪問者識別子

Kameleoon は visitor_id の値を使用して、各コンバージョンのクレジットを受け取る訪問者を識別します。そのため、この値は、Kameleoon がその訪問者について既に持っている識別子と一致する必要があります。既定では、この値は Kameleoon の訪問者コードです。デバイス間の履歴照合を設定すると、Kameleoon は訪問者コードではなく、デバイス間照合のカスタムデータ内の識別子と visitor_id を照合します。

インジェスチョン前にクエリを実行する

ゴールを保存する前に、Run Query をクリックして、Kameleoon でクエリを直接テストできます。テストでは次のことができます:
  • リアルタイムで接続を確認する。
  • 認証情報とアクセス権が正しいことを確認する。これにより、最初のデータインポートを待たずに問題をすぐに検出できます。
  • データの構造とアクセス性を検証する。
簡単なクエリを実行して、Kameleoon が正しいデータベースとテーブルにアクセスできることを確認できます。また、データセットの小さなサンプルをダウンロードして、スキーマ、権限、内容が想定どおりであることを確認することもできます。
Redshift 用のデータウェアハウスゴールフォーム。cluster type、cluster ID、region、database、frequency、query のフィールドが入力され、クエリ形式が検証されています。

Amazon Redshift ゴールの使用

ゴールを使用するには、実験またはパーソナライゼーションを設定するときに、設定ステップでゴールを選択して、Amazon Redshift データベースの特定のコンバージョンを追跡・分析します。Kameleoon は、これらのコンバージョンを 1 日 1 回、実験結果とマージします。 ゴールを実験で設定する方法については、キャンペーンでゴールを設定するを参照してください。

データ保持

Amazon Redshift からインポートされたコンバージョンデータは、Kameleoon では訪問データになり、Kameleoon の標準のデータ保持ポリシーに従います。保持期間については、データ保持ポリシーを参照してください。

訪問者データの削除

認証が必要な Data API エンドポイント POST /visit/forget を使用して、Kameleoon に保存されている訪問者データのコピーを削除できます。リクエストの形式については、Remove data for several visitorsを参照してください。このエンドポイントは、Amazon Redshift データベースのテーブルを削除しません。