Skip to main content
データウェアハウス連携は、Kameleoon の Web Experimentation および Feature Experimentation モジュールのプレミアムアドオンとしてご利用いただけます。詳細については、カスタマーサクセスマネージャーまでお問い合わせください。
Kameleoon は、次のプロバイダーからのデータウェアハウス連携をサポートしています。
  • BigQuery
  • Snowflake
  • Redshift
  • Databricks

ターゲティング方法を選択する

ターゲットにしたい対象に合ったアプローチを選択します。 Kameleoon の構成に応じて、カスタムデータの取得方法を選択します。
  • Kameleoon SDK method: Feature Experimentation のみを使用する場合。
  • Custom JavaScript code: Web Experimentation を使用する場合、または Web Experimentation と Feature Experimentation を併用する場合。
カスタムデータ取得方法で、両方の方法を説明しています。

Kameleoon実験でインポートしたオーディエンスをターゲティングする

この標準的な例では、Kameleoon 実験でインポートしたオーディエンスをターゲティングする基本的な方法を示します。ウェアハウスに user テーブルがあり、そのサンプルが次のようになっているとします。
データウェアハウス内のユーザーテーブルのサンプル。id、place_of_birth、subscription_plan の列があります。複数の行で place_of_birth が LONDON になっています。
この例では、ロンドン生まれのすべてのユーザーをターゲットにします。このオーディエンスには、前述のとおり設定できるインジェスチョンタスクが必要です。このインジェスチョンタスクに「The Londoners」という名前を付けます。このタスクの SQL クエリは次のとおりです。 SELECT id FROM user WHERE place_of_birth="LONDON" このタスク(およびその他すべてのインジェスチョンタスク)がポーリングしたオーディエンスをターゲティングするには、次のセットアップを行う必要があります。

カスタムデータの作成のエントリを設定する

Kameleoon のナビゲーションメニュー。Configure セクションが展開され、Custom data 項目が赤い矢印で強調表示されています。
  1. 左側のメニューで、Configure > Custom data をクリックします。
カスタムデータのページ。New custom data ボタンが赤い矢印で強調表示されています。
  1. New custom data をクリックします。
  2. カスタムデータの名前を入力します。
  3. データインジェスチョンタスクを設定したプロジェクトを選択します。
  4. 取得方法として Kameleoon SDK method または Custom JavaScript code を選択します。
  5. タイプには List、フォーマットには String を選択します。
  6. Scope には Visit を選択します。
  7. Next をクリックします。
カスタムデータフォームのオプションステップ。ターゲティング条件の値を保存するオプションがオンになっており、JavaScript テーブルエディターは空です。
  1. 作成するセグメントのターゲティング条件に表示される値を設定できます。Save the values for the targeting condition associated with the custom data point をクリックします。
  1. Create をクリックします。

カスタムデータ取得方法

カスタムデータ取得方法は、カスタムデータの値を設定するコードと、そのコードが実行される場所を指定します。Kameleoon の構成に応じて、いくつかの取得方法があります。 Feature Experimentation のみを使用している場合は、Kameleoon SDK method を選択できます。この方法を使用すると、取得コードは、Kameleoon SDK メソッドを組み込んだ箇所で実行されます。これらの Kameleoon メソッドは、訪問者が所属するウェアハウスオーディエンスを取得し、その情報をカスタムデータセクションに保存します。正確なコードスニペットは、使用する SDK によって異なります。以下は、Kameleoon の JavaScript SDK で記述した例です。
YOUR_WAREHOUSE_VISITOR_ID を置き換えて、warehouseVisitorId 変数に、組織がウェアハウス内でこの訪問者を識別するために使用している訪問者 ID が入るようにします。この値は、組織の訪問者識別システムによって異なります(訪問者識別を参照)。訪問者識別システムがない場合は、Kameleoon Visitor Code を使用できますが、その場合はウェアハウスでも Kameleoon Visitor Code を使用する必要があります。 customDataIndex の値を、カスタムデータのインデックスに置き換えます。インデックスはダッシュボードで確認できます。
カスタムデータの一覧。Index 列が強調表示されています。Subscription plan のカスタムデータのインデックスは 4 です。
Web Experimentation を使用している場合(または Web Experimentation and Feature Experimentation の両方を使用している場合)は、Custom JavaScript code を選択できます。この場合、Kameleoon のアプリケーションファイルがコードスニペットを実行します。次のスニペットは、プロジェクトのグローバルカスタムスクリプトに追加できます(Admin > Projects をクリックし、プロジェクトの行で Edit をクリックしてから、Scripts タブをクリックします)。
この場合、前述の SDK の例のようにインデックスではなく、カスタムデータの名前を使用する必要があります。 または、カスタムデータを設定する際に、次のスニペットを該当するフィールドに入力することもできます。
この 1 回のセットアップは、すべてのインジェスチョンタスクで機能します。
たとえば、3 月生まれの訪問者をポーリングする 2 つ目のインジェスチョンタスクがあり、それを「Born in March」と呼ぶとします。3 月生まれandロンドン生まれの訪問者のカスタムデータの値には、両方のオーディエンス(「The Londoners」、「Born in March」)が含まれます。 したがって、この単一のカスタムデータを、ウェアハウスオーディエンスをターゲットとするすべての Kameleoon セグメントで使用できます。 その後、このカスタムデータを Kameleoon キャンペーン(実験、フィーチャー実験、パーソナライゼーション)で使用し、ウェアハウス内の特定のオーディエンスへの所属に基づいてユーザーをターゲットにできます。 このようなセグメントを作成するには、次の手順に従います。
  1. 専用ドキュメントの説明に従って、セグメントを作成する。
  2. セグメントで、カスタムデータ条件を使用します。
  3. is among the values 演算子を選択すると、作成したデータインジェスチョンタスクに関連付けられたオーディエンスの一覧(たとえば、The Londoners、Born in March)が表示されます。

属性によるインポートしたオーディエンスのターゲティング

このセクションでは、ウェアハウスからインポートしたオーディエンスをターゲティングする別の方法を説明します。この方法は、同じ訪問者属性の異なる値をターゲットにした別々の実験を実行する場合に特に役立ちます。このセクションでは、前の例と同じデータとユースケースを使用しますが、今回はロンドン生まれの訪問者だけでなく、多くの異なる出身都市をターゲットにします。このターゲティングは、前述のセットアップでも可能です。ターゲットにしたい出生地ごとにインジェスチョンタスクを作成します。ただし、50 都市をターゲットにしたい場合は、手間がかかる可能性があります。 Kameleoon では、ウェアハウスオーディエンスの訪問者の属性をインポートできます。インポートするには、次のように、visitor id フィールドのafterに追加フィールドを SQL クエリに追加します。 SELECT id, place_of_birth FROM user その後、今回は属性 place_of_birth の値を保持するカスタムデータを作成できます。JavaScript SDK で実装する場合のコードは次のとおりです。
または、取得方法 Custom JavaScript code でカスタムデータを設定する際は、次のスニペットを使用します。
その後、カスタムデータの値に含まれる都市名をターゲットにする Kameleoon セグメントを作成できます。1 つのセグメントで複数の都市をターゲットにしたい場合は、セグメントを作成する際に、同じカスタムデータに複数の Or 条件を追加できます。 このスニペットは、attributeName と taskId から名付けられた window プロパティに結果を保存します。window プロパティを共有する 2 つのカスタムデータスクリプトは互いの値を上書きするため、作成するカスタムデータごとにこの名前を一意に保ってください。 taskId は、インジェスチョンタスク ID です。Kameleoon がタスクに割り当てる一意の番号です。データインジェスチョンタスクの一覧では、各タスクが ID の後に名前を続けた形式で表示されます(例:543 Attributes)。ID は数字(543)のみで、名前は含まれません。taskId には、この数字を設定します。 SQL リクエストには、訪問者の属性を必要な数だけ追加でき、これらの属性を Kameleoon の SDK でさまざまな方法で使用できます。

インポートした値のデータ型

カスタムデータフォームで Type と Format のどちらを選択しても、Kameleoon はインポートされたすべての値を、Kameleoon 側でテキスト(文字列)に変換します。Type ドロップダウンには Single、List、Count List があります。Format ドロップダウンには Boolean、Number、String があります。Kameleoon は String を推奨しています。

Databricks の Boolean 値を使用する

Databricks の Boolean 列は、Kameleoon にテキストとして届きます(例:{"is_premium": "true"})。この列をターゲティングするには、独自のカスタムコードでテキストを解析し、カスタムデータの値として 1 または 0 を保存します。セグメントでは、その値を TRUE や FALSE ではなく、1 または 0 と比較します。

訪問者識別

最新のアプリやウェブサイトは、多くの外部ツールを使用しており、訪問者識別子も複数使われることがよくあります。この機能が動作するには、コードで JSON オブジェクトを取得するために使用する訪問者識別子が、ウェアハウスから抽出された識別子と同じである必要があります。 この訪問者識別子をどのように生成するかはお客様次第です。方法は多数あります。メールアドレスなど、ユーザーがソリューションにログインした後にのみ取得できる識別子を使用できます。ビジネス上ログインを必要としない、またはサポートしない場合は、匿名の識別子を使用できます。ログインしているかどうかにかかわらずユーザーをターゲットにしたい場合は、両方を組み合わせて使用することもできます。 データウェアハウスと、Kameleoon がクエリを実行するテーブルの管理はお客様が行います。そのため、識別子がいずれかの時点でトラッキングに利用可能であることを除き、制限はありません。 Kameleoon カスタマーサクセスチームは、お客様の具体的な構成、外部ツール、ビジネス要件に基づいた識別子の選択について、アドバイスを提供できます。