KARTEレコメンドを活用して、サイト上に商品軸のレコメンドを表示する方法について説明します。

  • 商品マスタがDatahubにインポートされていることが前提になります。

設定全体像

null

クエリの設定を行う

  • Datahub管理画面→「クエリ」画面に遷移します。
  • 左上の「作成」→「コレクションから作成」を押下
  • やりたいことから探す→「レコメンドを表示したい」から「商品軸での商品レコメンド」を選択
  • パラメータ設定から以下を設定する
    • 抽出期間(デフォルトは60日間)
      • ※期間を伸ばすとその分クエリの実行時間が長くなる可能性があるので、基本的には変更しないことを推奨しております。
    • アクションテーブル連携時のレコード生存期間(h)(デフォルトは24時間)
  • クエリの中で商品マスタ用テーブルを参照している箇所を、実際のテーブルのデータセット名やテーブル名で書き換えます
, item_master AS (
  SELECT *
  FROM `prd-karte-per-client.item_master_{{api_key|safe_param}}.item_master` --データセット名およびテーブル名は必要に応じて書き換えて下さい
  WHERE recommend_f = 1
  AND item_id IS NOT NULL
)
  • クエリを実行し、結果が返ってくることを確認します。
クエリの結果が20万レコード以内になっていることを確認してください。(アクションテーブルのレコード数上限が20万レコードとなってるので、20万レコードを超えている場合はアクションテーブルにデータをエクスポートできません。)

クエリの結果が返ってこない場合のチェックポイント

  • KARTEのタグで送っているイベント名、スキーマが正しく設定されているか?
    • レコメンドを実現するにあたり、view_itembuy イベントがKARTEに正しく送られている必要がございます。
      • グローバルメニュー > すべてのプロダクト > Insight > イベントをクリックし、イベントが正しく送られているかご確認ください。
  • 商品マスタのフォーマットに従っているか?
    • フィールド名やデータ型がフォーマット通りに連携できているかご確認ください。
      • 商品マスタのフォーマットはこちら
  • 連携したデータの値が合っているか?
    • データセット→取り込んだテーブルの「プレビュー」「テーブル情報」などから取り込んだデータを確認することができます。

アクションテーブルを作成する

  • グローバルメニュー > すべてのプロダクト > Action > 接客 > 作成をクリックします
  • 以下の設定を行います。
項目 内容
テーブル名 任意ですが、今回は itembase_recommend と指定
スキーマ指定 クエリ結果のカラムを指定します(以下「アクションテーブルのスキーマ指定」を参照)
権限 今回は参照のみなので「ウィジェットからの参照」にチェック

null

アクションテーブルのスキーマ指定

フィールド名
key(主キー) 文字列
target 文字列
related 文字列
name 文字列
price 数値
display_price 文字列
image 文字列
url 文字列
l_category_cd 文字列
s_category_cd 文字列
brand_cd 文字列
sex_cd 文字列
brand_name 文字列
expired_at タイムスタンプ

アクションテーブルにクエリ結果をエクスポートする

  • グローバルメニューのジョブフロー画面右上の「作成」をクリック
  • ジョブ設定画面から以下を設定し、右上の「保存して完了」をクリック

ジョブの設定

項目 内容
ジョブ名 商品軸のレコメンド結果をアクションテーブルへ
ジョブタイプ データテーブルからエクスポート
エクスポート元 先ほど作成したクエリ結果
エクスポート先 先ほど作成したアクションテーブルを選択

実行方法を選択

  • 「スケジュール実行を有効にする」にチェック
  • 「繰り返し実行を有効にする」にチェック
  • 実行頻度の設定を行う
    • 連携頻度は毎日を推奨しています。

null

ジョブフローの設定

  • 「ジョブ実行終了後にアーカイブ」チェックなし
  • ジョブフロー名:任意
    • ジョブが一つの場合は「先頭のジョブ名を流用」するのを推奨しています。
  • 右上の「今すぐ実行」をクリックするとジョブが実行されます。
    • ※ジョブの終了までに5分ほど時間がかかります。
  • ジョブが「実行済み」になっていることを確認します。

アクションテーブルクエリを作成する

  • 作成したアクションテーブルを選択し、画面右の「作成」をクリック
  • 以下の設定を行う
    • クエリ名:任意ですが、今回はrelated_itemsと設定
    • 抽出条件:
      • Limit:20
      • Filter:
        • target = #{target}
      • Sort:key, 昇順

null

これでアクションテーブルクエリの作成は完了です。

接客サービスを設定する

  • 接客サービス作成画面に遷移して、レコメンド用のテンプレートを選択します。

    • テンプレート(3種類)
      null
      ※テンプレートが表示されない場合は、営業担当へお問い合わせください。

      • KARTEレコメンド(商品軸)prod-mr

        • 一定数商品を表示後、「more」ボタンにて下部にさらに商品を表示します
      • KARTEレコメンド(商品軸)prod-slk

        • 一定数商品を表示後、スライド(カルーセル)にてさらに商品を表示します
      • KARTEレコメンド(商品軸)prod-mdl

        • モーダルにて商品を表示します。
  • 接客サービス詳細画面の「ベーシック」から以下を設定します。

    • アクションテーブル:

      • フィルタリング:

        • フィルタリングしたい条件にチェックを入れる

        • チェックしたフィルタリング条件の枠に値を直接入力するかユーザー情報変数で設定した変数を入力する

          • 例:ブランドの値:brand12345で絞り込む場合
            null

          • 例:view_itemイベントのbrand_cdで絞り込む場合

            • ユーザー情報変数
              null

            • フィルター
              null

      • データ管理:

        • ユーザー情報変数

          • 購入商品(変数名:boughtItems):購入された商品をレコメンド内に表示しない設定

            • 全ての期間>購入>商品ID>直近30件
            • デフォルト値:"[]"
            • JSONで出力:ON
              null
          • カート商品(変数名:cartItems):カート内の商品をレコメンド内に表示しない設定

            • 最新のセッション>カート>item_ids>直近30件
            • デフォルト値:"[]"
            • JSONで出力:ON
              null
          • 閲覧商品(変数名:viewItemId):閲覧している商品を取得する設定

            • 全ての期間> view_item>item_ids>最新の値
            • デフォルト値:任意
            • JSONで出力:OFF
              null
      • 補完(ランキング)機能を利用する場合:

主な設定は以上で完了になります。

テンプレートの種類によって、表示する数(最大表示数、最小表示数など)が設定可能となります。また、他接客サービス同様にカスタマイズすることにより、自由にデザインを変更するこが可能です。

あとは従来の接客サービスと同じフローで配信設定を行ってください。