Klaviyo でのデータウェアハウス同期について理解する
このページで学べること
Klaviyo からデータウェアハウスにデータを同期し、SFTP を介してデータウェアハウスのデータを Klaviyo にインポートする方法をご覧ください。顧客のプロファイルとイベントデータを同期できるため、Klaviyo 外で顧客に関する重要な情報を保存して分析できます。
アドバンストKDP は Klaviyo の標準マーケティングアプリケーションには含まれておらず、関連機能にアクセスするにはサブスクリプションが必要です。このプランの購入方法については、請求ガイドをご覧ください。
始める前に
Klaviyoからデータをエクスポートする前に、データウェアハウスを宛先として設定してください:
- Klaviyo に提供するユーザーに適切な権限があることを確認してください。
- テーブルを使用する宛先の場合は、以下の設定手順に記載されている名前でテーブルを作成してください。
また、Klaviyo の送信データウェアハウストラフィックの IP アドレスを許可リストに追加してください。これにより、Klaviyo のリクエストがセキュリティレイヤーによってブロックされないようになります。これらのアドレスは、次の CIDR 範囲で示されます:
184.72.183.187/3252.206.71.52/323.227.146.32/3244.198.39.11/3235.172.58.121/323.228.37.244/3254.88.219.8/323.214.211.176/32
データウェアハウスに接続します
- [データ管理] > [同期]に移動します。すでに接続がある場合は、[同期を作成]をクリックします。
- データをデータウェアハウスにエクスポートを選択します。
- 倉庫を選択し、次にその設定ページで[warehouse name]に接続をクリックしてください。
Klaviyoによって別のエクスポート先を追加できない場合は、別のエクスポート先を設定する前に、既存のエクスポート先を削除してください。
または、[外部連携] > [アプリを探す] に移動し、プラットフォームを検索して、Klaviyo のアプリマーケットプレイスからデータウェアハウスを選択することもできます。
データウェアハウスからデータをインポートオプションでは、ウェアハウスからの直接インポートを設定します。SFTPでCSVファイルをアップロードするには、次のセクションに従ってください。

SFTP 経由でデータをインポート
データウェアハウスからKlaviyoにデータをインポートする場合は、SFTPを介して行うことができます。ウェアハウスへの直接接続については、Klaviyoのデータウェアハウスのインポートについてを参照してください。
外部連携に移動し、データの管理>SFTPデータ転送を開いてから、SFTP設定タブを選択してください。
Klaviyo に倉庫データをインポートする手順は次のとおりです:
- データウェアハウスから必要なデータをエクスポートしてください。
- ローカル マシンで SSH キーを生成します。
- SFTP クライアントの設定とインポート。
これは Snowflake を使用して示していますが、インポートプロセスはウェアハウスの外部連携に関係なく同様です。
データベースをエクスポートする
まず、ウェアハウスからデータをエクスポートする必要があります。ウェアハウスにログインし、Klaviyo にインポートしたいデータを CSV ファイルにエクスポートします。
エクスポートしたデータは、CSV 形式とサイズの制限に基づいて形式を整えてください。
ローカル マシンで SSH キーを生成する
ローカルマシンで新しいSSH キーペアを生成します。SFTPクライアント用に秘密鍵を保管してください。
- SFTPの設定で、SSH キーを追加をクリックしてください。キーのタイトルを入力し、公開鍵をSSH キーに貼り付けてください。
- キーを追加をクリックしてください。
キーを追加する際は、以下のいずれか 1 つで始まっていることを確認してください。
- ssh-rsa
- ecdsa-sha2
- SSH接続済み
- sk-ecdsa
- sk-ssh
SFTP クライアントの設定とインポート
公開鍵をKlaviyoに追加した後、SFTPクライアントを設定し、CSVファイルをアップロードしてください。
- SFTPの認証情報の下にSFTPのセットアップで表示されるサーバー、ポート、ユーザー名を使用して、SFTPクライアントで接続を作成します。一致する秘密鍵で認証します。
- アップロードする前に、CSVファイルが上記リンク先の推奨フォーマットガイドラインに従っていることをご確認ください。
- SFTPクライアントを使用してCSVファイルをアップロードしてください。

インポートを確認するには、[SFTPデータ転送]の[データのインポート]タブを開きます。最近のインポートには、以下が表示されます。
- ステータス
キュー済み、処理中、完了、失敗、またはキャンセル。完了したインポートにもエラーが含まれている場合があります。 - 処理済みの行
これまでに処理されたファイルの割合です。インポートを展開して、処理済みおよびスキップ済みの行数を確認します。 - インポート日
インポート日。 - インポート元
データをインポートしたユーザー。

データをウェアハウスにエクスポート
データウェアハウスを宛先として設定するには、各データウェアハウスについて、次の情報と認証情報のセットが必要です。
Amazon Redshift
Amazon Redshiftを送信先として設定するには、次のスクリプトを実行してklaviyo_event、klaviyo_profile、klaviyo_metricテーブルを作成してください。
実行する前に、データベース管理者にこの例を調整してもらってください。プレースホルダーを置き換え、冒頭付近にある対応していない*/を修正し、テーブルを作成した後にテーブル固有のGRANTステートメントを実行してください。
送信先として設定したら、次の一連の認証情報を使用してウェアハウスを Klaviyo に接続します:
- 名前:この接続を識別するための名前です。Redshiftのデータベースと同じ名前を使用できます。
- ホスト URL: Amazon Redshift サーバーのエンドポイント(Redshift では接続 URL と呼ばれます)
- データベース:Klaviyoが接続するRedshiftデータベースの名前
- Port: Redshift で使用されるポート番号
- スキーマ: データベーススキーマ
- ユーザー名: Redshift へのログインに使用されるユーザー名
- データベース パスワード: Redshift へのログインに使用するパスワード

Amazon S3
Amazon S3を宛先として設定するには、バケット名、バケットリージョン、AWSアクセス認証情報を用意してください。
送信先として設定したら、次の一連の認証情報を使用してウェアハウスを Klaviyo に接続します:
- 名前:この接続を識別するための名前です。
- バケット:バケットの名前です。
- バケットの場所:ストレージ バケット作成時に選択されたリージョン名です。
- アクセスキー ID: AWS アクセスキー ID です。
- シークレット アクセスキー:AWS シークレット アクセスキーです。

Google BigQuery
Google BigQueryを送信先として設定するには、次のスクリプトを実行して、klaviyo_profile、klaviyo_event、およびklaviyo_metricテーブルを設定してください。接続プロセスを正常に完了するには、Google BigQueryアカウントに支払いプロファイルが必要です。
このスクリプトでは、プレースホルダー「SERVICE ACCOUNT EMAIL」をBigQueryサービスアカウントのメールアドレスに置き換える必要があります。
送信先として設定したら、次の一連の認証情報を使用してウェアハウスを Klaviyo に接続します:
- 名前:この宛先を識別するための名前です。
- プロジェクト ID: これはプロジェクト ID と呼ばれ、API コンソールで確認できます。
- データセット:スキーマとも呼ばれます。これは、セットアップのために実行すべきスクリプトで使用した名前と同じです。
- サービス アカウント キー: BigQuery でサービス アカウントを作成した際にダウンロードした JSON ファイルの内容全体を貼り付けます。

Microsoft Azure Synapse Analytics
Microsoft Azureを宛先として設定するには、次のスクリプトを実行してklaviyo_profile、klaviyo_event、およびklaviyo_metricテーブルを作成します。実行する前に、データベース管理者にこの例を調整してもらってください。DROP TABLEステートメントから始まり、重複するDROP TABLE klaviyo_profileも含まれています。新しいテーブルを作成する場合、または既存のデータを保持する必要がある場合は、DROP TABLEステートメントを削除してください。
送信先として設定したら、次の一連の認証情報を使用してウェアハウスを Klaviyo に接続します:
- 名前: Azure のデータベースと同じ名前を使用することをお勧めします。
- ワークスペース:Azure Synapse ワークスペース名。
- データベース名: 専用 SQL プール データベースを識別します。
- ユーザー名:専用 SQL プール データベースのログイン ユーザー名です。
- データベースのパスワード:専用 SQL プール データベースのログイン パスワードです。
- アカウント名:Windows Azure ストレージ アカウント、または作成した DNS プレフィックス。
- アクセス署名:Blob Storage コンテナへのアクセスを証明する共有アクセス署名(SAS)文字列。
- コンテナ名: データ転送の一時的なステージング領域として使用する Azure Blob コンテナ名です。

Snowflake
Snowflake を送信先として設定するには、次の手順に従ってください。
1. ターミナルで次のコマンドを実行して秘密鍵を生成します:
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt2. ターミナルで次のコマンドを実行して、秘密鍵を参照する公開鍵を生成します:
openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub3. 次のスクリプトを実行して、KLAVIYO_PROFILE、KLAVIYO_EVENT、およびKLAVIYO_METRICテーブルを設定します。以下のセットアップを完了するには、securityadminおよびsysadmin権限が必要です。自分が持っているロールを確認するには、SHOW GRANTS TO USER <your_username>を実行し、両方のロールが一覧に表示されていることを確認してください。ロールの調整が必要な場合は、システム管理者に問い合わせてください。スクリプトを実行する前に、SET_プレースホルダーを自身の値に置き換え、GENERATE_PUBLIC_KEYを生成した公開鍵に置き換えてください。このスクリプトはCREATE OR REPLACE TABLEを使用するため、同じ名前の既存のテーブルがある場合はそれらが置き換えられます。既存のデータを保持する必要がある場合は、新しいデータベースを使用するか、管理者に依頼してそれらのステートメントを調整してもらってください。
送信先として設定したら、次の一連の認証情報を使用してウェアハウスを Klaviyo に接続します:
- 名前: Snowflake のデータベースと同じ名前を使用することをお勧めします。
- ユーザー名:データベースに接続するためのユーザー名です。これはセットアップスクリプトのuser_nameと同じである必要があります。
- 秘密鍵:生成された Snowflake 秘密鍵です。
- Warehouse: Snowflake 内のウェアハウス。
- アカウント: Snowflake のアカウント。
- Database: データベース名です。これはセットアップスクリプト内の database_name と同じである必要があります。
- スキーマ: データベーススキーマです。これはセットアップ スクリプト内の schema_name と同じである必要があります。

Databricks
セットアップスクリプト、必要な権限、接続認証情報など、Databricksを宛先として構成するには、KlaviyoデータをDatabricksにエクスポートする方法の手順に従ってください。
接続フォームにBlob storeセクションが表示される場合は、それを使用してエクスポートのストレージを設定してください。ウェアハウスの宛先の場合、これはデータをウェアハウスに読み込む前に、データを一時的にステージングします。Amazon S3の場合は、エクスポート先です。
- 保存済みのストアを使用するには、表示されている場合はBlob構成を使用を選択し、互換性のあるBlobストアを選択します。Blob構成を使用を選択しない場合は、上記に記載されている接続の詳細を使用して続行します。KlaviyoでBlobストアが必要な場合は、続行する前に選択してください。
- ストアを追加するには、Blobストアのドロップダウンで作成を選択します。求められた場合はプロバイダーを選択し、接続の詳細を入力してから、作成をクリックします。
- ストレージ設定名フィールドが表示された場合は、ウェアハウスで作成したストレージ設定の名前を入力してください。
- Amazon S3の宛先の場合は、該当するコントロールが表示されていれば、ファイル形式と、エクスポートしたファイルを圧縮するかどうかを選択してください。
接続情報を入力したら、[次へ]をクリックします。次に、エクスポートするデータとスケジュールを選択します。
データオブジェクト
データオブジェクトセクションでは、すべてのプロファイルデータ、特定のイベントデータのみ、または両方のデータタイプを、各オプションの横にある該当するチェックボックスをオンにして同期するよう選択できます。
ウェアハウスの送信先の場合、KlaviyoはカスタムプロファイルプロパティとイベントプロパティをネストされたJSONとして送信します。Standardのプロファイルフィールドには、それぞれ専用の列があります。プロファイルデータはklaviyo_profileテーブルを使用し、イベントデータはklaviyo_eventを使用し、メトリックデータはklaviyo_metricを使用します。メトリックデータはイベントに含まれるため、各イベントのメトリック名とソース外部連携を参照できます。イベントタイプごとに個別のテーブルを用意する必要はありません。

Klaviyo からすべてのデータを同期すると、データウェアハウスで追加料金が発生する場合があります。
除外する外部連携
除外する外部連携 フィールドで、データウェアハウス同期から除外する特定の外部連携を選択できます。これは、Klaviyo にすでに接続している特定の外部連携のデータが同期されないように削除したい場合に役立ちます。
特定の外部連携データの除外はイベントデータにのみ適用され、プロファイルデータは除外されません。

選択的同期
Selective sync フィールドでは、Klaviyo からデータウェアハウスに同期する特定のイベントを選択します。デフォルトでは、すべてのイベントが含まれます。このフィールドで同期する特定のイベントを設定すると、選択したイベントのみが同期されます。
このフィールドは、Events データオブジェクトを選択した場合にのみ表示されます。

データの同期頻度を選択
データの同期頻度を選択で、間隔から次のいずれかを選択します:1、2、4、6、12、または24時間。スケジュールの開始日、開始時刻、タイムゾーンを設定します。
デフォルトの間隔は1時間です。ウェアハウスを接続する前に変更できます。

同期する履歴データの量の選択
同期する履歴データの量を選択セクションでは、初回接続時に Klaviyo からデータウェアハウスへ同期する履歴データの量を定義できます。次から選択できます:
- 30 日
- 90 日
- 1 年
- 全期間

一度に大量のデータを同期すると、データウェアハウスで追加コストが発生する可能性があります。
レビューを同期する
次へをクリックしてレビューを開きます。接続の詳細とエクスポート設定(次を含む)を確認してください:
- 設定した同期の詳細
- どのデータが共有されているか(プロファイル、イベント、またはその両方)
- 除外された外部連携
接続をクリックして接続を保存し、スケジュールに従って同期を開始します。

Klaviyoに接続できませんと表示された場合は、認証情報を編集をクリックして接続情報を修正し、その後確認に戻って、もう一度接続をクリックしてください。
接続が保存されると、Klaviyoはデータ同期に戻ります。接続テーブルには次が表示されます:
- ウェアハウス
- タイプ:インポートまたはエクスポート
- 作成日

エクスポート先と直接インポート接続は、同じテーブルに表示されます。区別するには種類を確認してください。
データ同期ダッシュボード
接続に成功したら、データ同期 リストページから外部連携をクリックします。ここから、実行されたデータ同期に関する過去と現在の情報を提供するデータ同期ダッシュボードに移動します。

ここでは、同期情報が 2 つのタブに分かれて表示されます:
- 履歴
- 定期的
履歴
履歴 タブには、履歴データ同期のステータスを示すログがあります。履歴同期とは、接続を確立した際に既存のデータを Klaviyo からデータウェアハウスに同期することを指します。
各同期について、次の情報が表示されます:
- 名前
同期に含まれるデータ。 - ステータス
ステータスと同期の予測進捗(推定パーセンテージ)、または注記された潜在的なエラー。これらのステータスには、次のようなものが含まれます。- 完了
この 1 回限りの同期のデータ同期が完了しました。自動的に再同期されることはありません。 - スケジュール済み
次の同期が自動的に実行されるようにスケジュールされている場合。 - 同期中
データはデータウェアハウスにアクティブに同期されており、完了予定の割合が表示されています。 - エラー
エラーが発生しましたが、Klaviyo は接続の再確立を試行し続けます。外部連携によっては、このタイミングがわずかに異なる場合があります。 - 失敗
接続の再確立を試みた後も、同期は完全に失敗しました。つまり、設定構成、またはデータウェアハウスのセットアップを確認する必要があります。問題を解決した後、同期の再有効化をクリックしてください。 - 一時停止
同期を手動で一時停止しました。 - キャンセル済み
同期はキャンセルされ、今後はスケジュールされません。
- 完了
- 開始日時
同期の開始時刻。 - 終了日
同期の終了時刻です。
定期的
定期タブには、進行中の同期のステータスが表示されます。顧客が引き続きブランドとやり取りし、新しいデータが作成されると、選択したスケジュールに従ってデータウェアハウスに送信されます。各実行が完了すると、Klaviyoは次の実行をスケジュールします。
各同期について、次の情報が表示されます:
- 名前
同期に含まれるデータ。 - ステータス
同期の現在のステータスと、発生したエラーです。これらのステータスには、次のようなものがあります:- スケジュール済み
同期は次回のスケジュール実行を待機しています。 - 同期中
データはデータウェアハウスに同期しています。 - エラー
エラーが発生しましたが、Klaviyo は接続の再確立を試行し続けます。外部連携によっては、このタイミングがわずかに異なる場合があります。 - 失敗
接続の再確立を試みても、同期は完全に失敗しました。これは、設定の構成を確認するか、データウェアハウスのセットアップまで見直す必要があることを意味します。問題を解決したら、同期の再有効化をクリックしてください。 - 一時停止
同期を手動で一時停止しました。 - キャンセル済み
同期はキャンセルされ、今後はスケジュールされません。
- スケジュール済み
- データの鮮度
データの鮮度とは、データがどの程度最新であるかを指します。たとえば、鮮度が2分の場合、同期はおおよそ2分前までのデータを処理したことを示します。より新しいデータは、まだ同期を待っている場合があります。 - [一時停止]、[再開]、および個別の同期の再有効化のボタン。
データウェアハウス接続の削除
- 外部連携に移動します。
- データウェアハウス外部連携の横にあるメニューを開き、[外部連携を削除]を選択します。確認ダイアログで、もう一度[外部連携を削除]をクリックします。

エラーログを表示
Klaviyo とデータウェアハウス間のデータ同期に問題が発生している場合、関連するエラー ログを確認すると、問題の原因に関する追加情報を得られます。
エラーを確認するには、同期中ページでウェアハウスの宛先をクリックします。履歴と定期同期タブの両方に、エクスポートとそのステータスの一覧、およびアクティブなエラーがあるかどうかを示すインジケーターが表示されます。

特定のエラーの詳細を確認するには、失敗が発生しているエクスポートをクリックします。
ここでは、送信方向の同期のタイムラインと、同期のステータスに基づくエラーまたは成功メッセージを確認できます。

特定のエラーをクリックすると、以下の情報を含むドロワーが開きます。
- 説明
データウェアハウスから返されたエラーの簡単な説明 - コード
エラーのエラーコード - External message
データウェアハウスから返された実際のエラーメッセージです。 - 日付
エラーが発生した日時

その他のリソース
- Klaviyo とアプリ間の情報のやり取りを理解する
API(アプリケーション プログラミング インターフェース)を介して、Klaviyo とサードパーティアプリ間で情報がどのように同期されるかについて説明します。Klaviyo の外部連携を介して交換されるほとんどのデータは一方向です。データは Klaviyo アカウントに取り込まれ、顧客データの幅広い範囲を活用できます。
- Klaviyo とアプリ間でやり取りされる情報の種類を理解する
Klaviyo と外部アプリの間でどのような種類のデータがやり取りされるのか、またそのデータが Klaviyo アカウントのどこで確認できるのかについて説明します。Klaviyo にサードパーティアプリケーションを連携すると、両プラットフォーム間で情報がやり取りされます。Klaviyo とのデータ交換の多くは一方向で、データは Klaviyo アカウントに取り込まれるため、Klaviyo でお客様の顧客データを幅広く活用できます。