Snowflakeデータソースについて
この記事では、SnowflakeデータをTealiumにインポートする方法について説明します。
Snowflakeデータソースは早期アクセス段階にあり、一部のお客様のみが利用可能です。この機能を試してみたい場合は、Tealiumサポート担当者にお問い合わせください。
要件
この機能を利用するには以下が必要です:
- Tealium EventStreamまたはTealium AudienceStream
- Snowflakeアカウント
USAGE
権限を持つSnowflakeロール
仕組み
Snowflakeデータソースを使用して、Snowflakeテーブルまたはビューから大量のデータをほぼリアルタイムでインポートします。データをインポートした後、それをTealiumの属性に変換・マッピングし、ターゲット指向のアクティベーションのためのより良いオーディエンスを構築します。
始めるには、Snowflakeテーブルまたはビューごとに1つのSnowflakeデータソースを作成し、データセットのためのクエリモードとSQLのWHERE
句をカスタマイズします。次に、データベースの列をTealiumの属性にマッピングします。Snowflakeソースからインポートされた各行はTealiumでイベントとして処理されます。
レート制限
Snowflakeからのインポートは通常、アカウントごとに秒あたり50イベントに制限されていますが、これは変動する場合があります。標準の属性サイズ制限は依然として適用されます。詳細については、属性について > サイズ制限を参照してください。
Snowflakeデータソースは、一度に最大1,000行のデータを取得します。
Snowflakeテーブル
各Snowflakeデータソースは、1つのSnowflakeテーブルまたはビューからのデータのインポートをサポートします。複数のSnowflakeテーブルからデータをインポートするには、Snowflakeでビューを作成し、データソース構成でそのビューを選択します。Snowflakeのビューについての詳細は、Snowflake: ビューの概要を参照してください。
データタイプ
Snowflakeデータソースは、すべてのSnowflakeデータタイプをサポートします。データが正しくインポートされるように、以下のガイドラインに従ってSnowflakeのデータタイプをマッピングしてください:
Snowflake | Tealium |
---|---|
数値データタイプ | 数値属性 |
文字列とバイナリデータタイプ | 文字列属性 |
論理データタイプ | ブール属性 |
日付と時間のデータタイプ | 日付属性 |
配列 | 文字列の配列、数値の配列、またはブールの配列 |
オブジェクト、バリアント、地理、幾何、ベクトルデータタイプ | 文字列属性 |
Snowflakeのデータタイプについての詳細は、Snowflake: データタイプの概要を参照してください。
イベント
デフォルトのTealium データ収集の操作順序では、Snowflakeデータソースからのイベントはイベント受信ステップの前に処理され、操作の順序は変わりません。
Snowflakeデータソースからのイベントは、以下の重要な例外を除き、他のデータソースからのイベントと同様にEventStreamとAudienceStreamに送信されます:
- ブラウザ固有の属性:ユーザーエージェントなどのブラウザ固有の属性は入力されません。
- エンリッチメント:AudienceStreamの事前読み込み属性に対するエンリッチメントは実行されません。ただし、
First visit
属性は例外です。 - 関数:データ変換関数は実行されません。
- 単一ページ訪問:受信イベントは単一ページ訪問/訪問の基準から除外されます。他のデータソースからの単一ページ訪問と訪問はAudienceStreamに保存されません。詳細については、AudienceStreamで単一ページ訪問はどのように処理されますか? (Tealiumのログインが必要)を参照してください。
- 訪問の長さ:Snowflakeデータソースイベントによって開始された訪問は60秒間続きます。
- 訪問IDのマッピング:Snowflakeデータソース構成でAudienceStream訪問ID属性をマッピングすると、訪問IDは選択した列の値に直接構成され、追加のエンリッチメントは必要ありません。
構成
クエリモード
Snowflakeデータソースは、Snowflakeテーブルまたはビューからデータをインポートする方法を制御するための3つのクエリモードをサポートしています:
- タイムスタンプ + インクリメント:(推奨)Tealiumは、タイムスタンプ列と自動インクリメント列に基づいて新規または変更された行をインポートします。このモードでは、前回のインポートより新しいタイムスタンプと、最後にインポートされた行より大きな自動インクリメント値を持つ行がインポートされます。これは、すべての行が期待通りにインポートされることを確実にする最も信頼性の高いモードです。
- タイムスタンプ:Tealiumは、タイムスタンプ列に基づいて新規または変更された行をインポートします。このモードでは、前回のインポートより新しいタイムスタンプを持つ行がインポートされます。テーブルにタイムスタンプ列があり、それがすべての更新で構成または更新される場合、このモードを使用します。
- インクリメント:Tealiumは、自動インクリメント列に基づいて行をインポートします。このモードでは、最後にインポートされた行より大きな自動インクリメント値を持つ行がインポートされます。これは既存の行の変更や削除を検出しません。自動インクリメント列のみを持ち、タイムスタンプ列を持っていない場合、このモードを使用します。
Snowflakeデータソースは、一括クエリモードをサポートしていません。
クエリモードの例
以下の例は、行のバッチ処理とクエリモードがどのように連携して動作するかを示しています。以下の表では、modification_time
がタイムスタンプ列で、customer_id
がインクリメント列です。
customer_id |
modification_time |
customer_segment |
---|---|---|
1 | 01Apr 13:00 | A |
2 | 01Apr 13:00 | B |
… | … | … |
1000 | 01Apr 13:00 | D |
1001 | 01Apr 13:00 | E |
1002 | 02Apr 14:00 | A |
Snowflakeデータソースは、一度に最大1,000行のデータを取得し、データのバッチからタイムスタンプと/またはインクリメント列の最大値をマークします。
- タイムスタンプ + インクリメントモードを使用する場合:データソースは行1-1000を取得します。次にデータソースがデータを取得するとき、次のいずれかの行を探します。
modification_time
が01Apr 13:00
で、customer_id
が1000
より大きい
または
modification_time
が01Apr 13:00
より大きい - タイムスタンプモードを使用する場合(例では
modification_time
):データソースは行1-1000を取得し、最大タイムスタンプ01Apr 13:00
をマークします。次にデータソースがデータを取得するとき、01Apr 13:00
より大きいタイムスタンプを探します。この場合、行1001は同じタイムスタンプ値を持つが、異なるデータバッチで取得されたため、スキップされます。 - インクリメントモードを使用する場合:データソースは行1-1000を取得し、最大の自動インクリメント値
1000
をマークしますが、新しいデータと更新されたタイムスタンプ列を持つ行は処理されません。インクリメント列をさらに増加させる新たに追加された行のみが処理されます(例ではcustomer_id
)。
SQLクエリ
Snowflakeデータソースのクエリ構成で、Tealiumにインポートしたい列を選択します。処理の追加条件を構成するには、SQLのWHERE
句を使用します。このオプションは、クエリにWHERE
文を追加します。WHERE
文は基本的なSQL構文をサポートします。
WHERE
句は、複数のテーブルからのサブクエリをサポートしていません。複数のSnowflakeテーブルからデータをインポートするには、Snowflakeでビューを作成し、データソース構成でそのビューを選択します。詳細については、Snowflake: ビューの概要を参照してください。
列マッピング
列マッピング構成は、Snowflakeテーブルの各列に対応するイベント属性を決定します。
カラム名は、Customer Data Hubの属性名とはしばしば異なるため、このマッピングによりデータが適切にインポートされます。例えば、テーブルにはpostalCode
という名前のカラムがあるかもしれませんが、対応するイベント属性はcustomer_zip
と名付けられているため、それらを関連付けるマッピングが必要です。
Snowflakeのデータ型をTealiumのデータ型にマッピングする方法については、データ型セクションを参照してください。
ビジターIDのマッピング
インポートされたデータがウェブ、モバイル、HTTP APIなどの他のソースとステッチされることを確認するために、Snowflakeテーブルの各行には一意のビジターIDを持つカラムがあることを確認してください。その後、ビジターIDカラムと対応するイベント属性をビジターID属性(AudienceStreamでのビジター識別のための一意の属性タイプ)にマッピングできます。マッピングされたイベント属性の値は、tealium_visitor_id
属性に割り当てられ、既存のビジタープロファイルに直接マッチします。
AudienceStreamでのビジターIDマッピングについての詳細は、Tealiumデータソースを使用したビジター識別を参照してください。
許可するIPアドレス
あなたのSnowflakeアカウントがどのシステムからのリクエストを受け入れるかについて厳格なルールがある場合は、TealiumのIPアドレスをSnowflakeの許可リストに追加してください。
最終更新日 :: 2024年November月8日