サンプルユースケース - 変更データキャプチャ

このページは機械翻訳により提供されています。翻訳内容と英語版に相違がある場合は、英語版が優先されます。

ソースシステムでは毎日新しいデータが利用可能になり、そのデータを取得して宛先システムにロードする必要があります。 多くの場合、ソースアプリケーションは、新規または更新されたデータだけを抽出として提供するのではなく、データの完全な抽出しか提供できません。 そのため、受信データを履歴データと照合し、比較して2つの差分のみを抽出する必要があるため、新規/更新データの取得と取り込みが困難になります。

SQL Transformationsを使用すると、ユーザーは1つのアクションで履歴データと受信抽出を簡単に比較し、差分のみを取得できます。 履歴データはWorkato FileStorage内に永続的に保存できるため、外部データベースへの依存関係を軽減でき、抽出ごとに更新できます。 受信データは、任意のビジネスアプリケーション、データベース、またはファイルシステムから取得できます。

SQL Transformationsは抽出を取得し、永続化された履歴データと比較して、変更されたデータを出力として生成します。 このユーティリティは、数百万行規模のデータ量を簡単に処理できるほど強力です。

サンプルレシピ:オンプレミスシステムから抽出を取得し、変更されたデータを見つけてS3にロード

次のビジネスプロセスを持つ会社のシナリオを考えてみます。

その会社は毎日すべての連絡先を抽出し、オンプレミスシステム上でCSVデータファイルとしてレコードを利用できるようにします。 会社は、この抽出から新しく追加された連絡先のみを取得し、S3などのクラウドストレージ宛先に送信したいと考えています。 その後、別のWorkatoレシピがここからこの情報を取得して、ターゲットマーケティングを実行します。

連絡先の量が非常に多いため(約150万レコード)、この会社の一般的なワークフローは多数のステップで構成されます。 Workatoレシピがソースからデータを抽出し、会社はすべての連絡先を履歴データとして外部データベースに保存し、新しい抽出を別のテーブルにロードして、変更されたデータを取得するために2つのテーブルの差分を見つける必要があります。 その後、さらに処理するためにデータをWorkatoにロードし直す必要があります。

このプロセスは非常に煩雑で、外部データベースシステムへの依存関係が生じます。

SQL Transformationsを使用すると、同じワークフローを3つの簡単なステップで実現できます。

レシピワークフローレシピワークフロー

1

レシピトリガーで、データを抽出する予定のソース(オンプレミスシステム)を設定し、新しい受信抽出を探すように設定します。

2

SQL TransformationsコネクターのQuery CSVアクションを設定します。このアクションは、抽出を履歴データと比較し、変更されたデータを出力として生成できます。

3

データをS3などのクラウドストレージ宛先に送信します。

変更データキャプチャにSQL Transformationsを活用する方法

このセクションでは、Query CSVアクションのさまざまなセクションを設定し、変更データキャプチャにSQL Transformationsを活用する方法について説明します。

一緒に進める

このレシピリンクを参照して、サンプルレシピを確認し、自分のワークフローに合わせて変更してください。

データソースのセットアップ

SQL Transformationsがクエリを実行するさまざまなデータソースを接続します。

1

ソース#1を接続するには、次のフィールドに入力します。 この例では、ソース#1はオンプレミスシステムからの受信抽出データです。

  • データソース名

  • Data source nameにわかりやすい名前を付けます。例:contacts_extract

  • データソースタイプ

  • データソースタイプを選択します。 この例では、CSVデータが上流のオンプレミスシステムから送られてくるため、これはCSVコンテンツストリームです。

  • CSVストリーム入力

  • データソースをCSVコンテンツストリームとして設定したら、CSVストリーム入力を設定できます。 ここで、オンブレミスファイルトリガーから送られてくるファイルコンテンツを渡します。

  • データスキーマ

  • データスキーマを設定します。 これは、いくつかのサンプル連絡先データを含むCSVファイルをインポートすることで簡単に実行できます。

データソース#1Source #1、受信データ抽出の設定

2

CSV固有のオプションを構成します。 これには次のフィールドが含まれます。

  • CSVヘッダー行を無視

  • これによりユーザーは、受信データに、無視してデータの一部として扱わない見出し列があるかどうかを指定できます。

  • 列区切り文字

  • CSVファイルで列を区切るために使用する区切り文字を選択します。 使用可能なオプションには、,(カンマ)、;(セミコロン)などがあります。

3

Source 2に接続するには、次のフィールドに入力します。 この例では、このソースは履歴データを指します。 Workatoの内部永続ファイルストレージシステムであるFileStorageを使用すると、このデータを簡単に保存および処理できます。

  • データソース名

  • Data source nameには、contacts_historicalなどのわかりやすい名前を付けます。

  • データソースタイプ

  • データソースタイプを選択します。 この例では、これはFileStorageファイルです。

  • FileStorageファイルパス

  • 履歴データファイルが利用可能なFileStorage内のパスを指定します。

  • データスキーマ

  • データスキーマを設定します。 これは、いくつかのサンプル連絡先データを含むCSVファイルをインポートすることで簡単に実行できます。 スキーマは、ソースから渡される列の順序に左から右へ一致します。

データソース#2Source #2、履歴データの設定

4

CSV固有のオプションを構成します。 これには次のフィールドが含まれます。

  • CSVヘッダー行を無視

  • これによりユーザーは、受信データに、無視してデータの一部として扱わない見出し列があるかどうかを指定できます。

  • 列区切り文字

  • CSVファイルで列を区切るために使用する区切り文字を選択します。 使用可能なオプションには、,(カンマ)、;(セミコロン)などがあります。

クエリのセットアップ

次に、データソースに対して動作し、変換済みの出力を生成するクエリを設定します。

この例の目的は、連絡先抽出から新しいレコードのみを取得することです。 そのため、このクエリは2つのデータソース(contacts_extractcontacts_historical)間でContacts_Idを比較し、Contacts_Idcontacts_extractには存在するがcontacts_historicalには存在しないレコードを返します。 これは、履歴データに存在しない新しく作成された連絡先をWorkatoが返すことを意味します。

クエリ設定

出力のセットアップ

最後に、次のフィールドを設定して出力形式を定義します。

この例では、さらに処理するために新しいレコードデータをS3に送信します。

1

以下のフィールドに入力します:

  • 出力タイプ

  • 出力のタイプを選択します。 CSVコンテンツストリームを使用して、コンテンツをダウンストリームアクションにストリーミング可能なデータピルとして共有します。

  • ヘッダー行を含める

  • データの列名をファイルにヘッダー行として追加する必要がある場合は、はいに設定します。 これは、ファイルを使用してレポートを生成する予定がある場合に便利です。 デフォルト値はいいえです。

  • 列区切り文字

  • CSVファイルで列を区切るために使用する区切り文字を選択します。 使用可能なオプションには、,(カンマ)、;(セミコロン)などがあります。

出力設定

2

Upload file in Amazon S3アクションを選択します。

3

次のフィールドを設定します。

  • バケット名

  • バケットの正確な名前。大文字と小文字は区別されます。

  • オブジェクト名

  • オブジェクト/ファイルの正確な名前。大文字と小文字は区別されます。

  • 地域

  • リージョンを見つけるには、S3でBucket > Properties > Static website hostingに移動し、Endpoint URLでリージョンを確認します。 例: us-west-2

  • 内容

  • アップロードする予定のファイルコンテンツ。 Step 2 Query CSV dataアクションからCSV contentsデータピルを渡します。

  • Use accelerated endpoint

  • デフォルトはfalseです。 高速化エンドポイントを使用するには、trueに設定します。 S3でBucket > Properties > Transfer accelerationに移動し、高速化エンドポイントが有効になっているかどうかを確認します。

S3アップロードアクションの設定

サンプルユースケース

その他のサンプルユースケースを確認するには、次のガイドをお読みください。

Last updated: