データ変換
データ変換とは、特定の要件や目的を満たすために、データをある形式、構造、または表現から別の形式、構造、または表現へ変換するプロセスです。 これには、データを操作、エンリッチメント、クレンジング、または再構成して、分析、保存、表示、または交換に適した状態にすることが含まれます。
データ変換は、(ETL)の抽出ステップとロードステップの間で実行することも、データが宛先にロードされた後に変換することもできます(ELT)。
WorkatoはELTとETLの両方のパターンをサポートしています。
ELT
データベースまたはデータウェアハウスのコネクターでカスタムSQLクエリアクションを使用し、宛先システムにすでにロードされているデータに対して変換を実行します。 WorkatoはSQLクエリを宛先システムに渡すことでこのプロセスをOrchestrateし、宛先システムがクエリを実行して結果を返します。
ETL
Workatoのデータオーケストレーション機能を活用し、SQL TransformationsまたはSQL Collectionを使用してプラットフォーム内で直接変換を実行します。 Workatoのサービスはデータに対して変換を実行し、レシピ内で出力を提供します。この出力はさまざまなダウンストリームの宛先へ転送できます。
ビジネスユースケースの例:
正規化: データを標準形式または標準構造に整理することで、データの一貫性を確保し、冗長性を排除します。
集計: 分析やレポート作成の目的で特定の宛先へ送信する前に、ファイルシステム、アプリケーション、データベースなど、複数のソースからのデータを結合します。
エンリッチメント: 外部ソースから追加情報、属性、または派生値を追加してデータを強化します。
変換: テキストから数値、CSVからJSONなど、データをあるデータ型、形式、またはエンコーディングから別のものに変換します。
検証とクレンジング: データの整合性、正確性、完全性を確認し、エラー、不整合、または外れ値を削除または修正して、データが事前定義された標準や基準を満たすようにします。
Reverse ETL: データ標準化の変換を適用した後、データウェアハウスからソースアプリケーションへデータを再同期します。
Workatoは、次のデータ変換オプションを提供します。
シンプルな変換のための組み込みFormula
Workatoは、シンプルなデータ変換の実行に適した幅広い組み込みFormulaを提供します。
サポートされているデータ型は次のとおりです:
カスタムコード変換
Workatoは、Ruby、Python、JavaScriptなど、カスタムコード変換のサポートを提供しています。
SQLベースの変換
Workatoでは、社内アプリケーションのSQL TransformationsおよびSQL Collectionを使用して、データに対してSQLベースの変換を実行し、データベースコネクターと連携できます。
SQL Transformations
SQL Transformationsは、SQL(structured query language)クエリを使用してバルクデータに変換を適用できる強力なツールです。
SQL Transformationsは、複数の異なるソースから抽出されたデータに対して大容量かつ複雑な変換を実行するためのツールを提供します。 SQL Transformationsはストリーミングメカニズムを使用して、さまざまなソースからデータを取得します。 これにより、シンプルなSQLクエリを使用してデータを操作できます。 SQL TransformationはFileStorageとネイティブに統合されているため、出力データをファイルとして保存し、ジョブ間または異なるレシピ間で使用できます。
レシピ例: SQL Transformationsを使用してSalesforceアカウントを抽出し、データを変換してSnowflakeにロードする
このレシピでは、Salesforceから新規または更新されたアカウントを抽出し、特定の金額を下回るすべてのアカウントを除外して、フィルター済みのレコードをSnowflakeテーブルにロードします。
Salesforceからデータを抽出し、変換してSnowflakeにロードする
レシピのウォークスルー
Export new/updated accountsトリガーを使用して、新規/更新済みアカウントをSalesforceから一括でエクスポートします。
SQL TransformationsのQuery dataアクションを使用して、バルクCSVデータをクエリします。 カスタムSQLクエリを指定して、データに対して変換を実行します。
Upload file to internal stageアクションを使用して、変換済みデータをSnowflakeの内部ステージに直接渡します。
ストリーミング
上記のすべてのレシピステップでは、ストリーミングを使用してワークフローに大容量データを渡します。
機能
SQL Transformationsは次の操作をサポートしています:
- 同じアクション内で複数のソースのデータをクエリします。
- さまざまなバルクソースに接続して、数百万件のレコードを取得し、変換します。
- クエリの実行と出力データセットの生成で高いパフォーマンスを発揮し、変換を数秒で完了できます。
- 結合やその他のSQL関数を含む複雑なselectクエリを使用します。
SQL Transformationsの詳細を確認してください。
SQL Collection by Workato
SQL Collection by Workatoは、データをバッチで操作するためのツールを提供します。 SQL Collectionを使用すると、データベース、アプリケーション、Webサービスなど、複数のシステムにまたがる関連データを集約してクエリできます。
SQL Collectionは、バッチ増分を使用し、データ量が少ない受信データに効果的なツールです。 SQL collectionsを使用すると、各ソースから送られるデータに対してリスト(テーブルに類似)を作成できます。 その後、別のアクションでクエリを実行して、これらのソースにまたがるデータを操作できます。
制限事項
SQL Collection by Workatoを使用して作成したリストと関連するクエリ出力は、ジョブの期間内にのみ存在し、ジョブまたはレシピをまたいで使用することはできません。
レシピ例: SQL Collectionを使用してSalesforceアカウントを抽出、変換し、Snowflakeにロードする
このレシピでは、Salesforceから新規または更新されたアカウントを抽出し、特定の金額を下回るすべてのアカウントを除外して、フィルター済みのレコードをSnowflakeテーブルにロードする方法を示します。
Salesforceアカウントを抽出し、データを変換してSnowflakeにロードする
レシピのウォークスルー
SalesforceバッチトリガーのNew/updated accountsを使用して、新規/更新済みアカウントをSalesforceからバッチで取得します。
Create accounts listアクションを使用して、SQL Collectionsでアカウントレコードのリストを作成します。
Query lists SQL Collectionsアクションを使用してSQLクエリを定義し、アカウントリストを操作します。
Upsert batch of rowsアクションを使用して、出力配列をSnowflakeのテーブルにロードします。
詳しくは、SQL Collection by Workatoを参照してください。
Last updated: