レッスン 1: SQL Server Integration Services (SSIS) による Project と基本パッケージの作成

適用対象:SQL Server Azure Data Factory の SSIS Integration Runtime

このレッスンでは、シンプルな抽出、変換、読み込み (ETL) パッケージを作成します。 このパッケージは、1 つのフラット ファイル ソースからデータを抽出し、2 つの LOOKUP 変換を使用してそのデータを変換します。さらに、変換したデータを AdventureWorksDW2022 サンプル データベースの FactCurrencyRate ファクト テーブルのコピーに書き込みます。 ここでは、新しいパッケージを作成する方法、データの変換元と変換先の接続を追加、構成する方法、新しい制御フロー コンポーネントとデータ フロー コンポーネントを操作する方法を学習します。

パッケージを作成する前に、ソース データの形式と変換先データの形式を理解する必要があります。 理解することで、ソース データを目的地に地図で表示するための変換を定義できます。

前提条件

このチュートリアルでは、Microsoft SQL Server Data Tools、一連のサンプル パッケージ、サンプル データベースを使用します。

ソース データを表示する

このチュートリアルで使用するソース データは、SampleCurrencyData.txt という名前のフラット ファイルに含まれている一連の通貨履歴データです。 ソース データには、通貨の平均相場、通貨キー、日付キー、1 日の最終相場の 4 つの列があります。

SampleCurrencyData.txt ファイルのソース データの例:

1.00070049USD9/3/05 0:001.001201442  
1.00020004USD9/4/05 0:001  
1.00020004USD9/5/05 0:001.001201442  
1.00020004USD9/6/05 0:001  
1.00020004USD9/7/05 0:001.00070049  
1.00070049USD9/8/05 0:000.99980004  
1.00070049USD9/9/05 0:001.001502253  
1.00070049USD9/10/05 0:000.99990001  
1.00020004USD9/11/05 0:001.001101211  
1.00020004USD9/12/05 0:000.99970009

フラット ファイル ソース データを操作する前に、フラット ファイル接続マネージャーがフラット ファイル データをどのように解釈するのかを理解しておく必要があります。 フラット ファイル ソースが Unicode の場合、すべての列が [DT_WSTR] として定義され、既定の列幅 50 が設定されます。 フラット ファイル ソースが ANSI エンコードの場合は、列が [DT_STR] として定義され、列幅が既定の 50 になります。 これらの既定値を変更し、自分のデータにより適した文字列型にしなければならない場合があります。 変換先のデータ型を見て、フラット ファイル接続マネージャー内でその型を選択する必要があります。

変換先データを見る

ソース データの変換先は、AdventureWorksDW2022FactCurrencyRate ファクト テーブルのコピーです。 次の表に示すように、FactCurrencyRate ファクト テーブルには 4 つの列があり、さらに 2 つのディメンション テーブルへのリレーションシップがあります。

列名 データ型 参照テーブル 参照列
AverageRate float なし なし
CurrencyKey int (FK) DimCurrency CurrencyKey (PK)
DateKey int (FK) DimDate DateKey (PK)
EndOfDayRate float なし なし

変換先にソース データをマップする

変換元と変換先のデータ形式を調べてみると、CurrencyKeyDateKey の値については参照が必要であることがわかります。 これらの参照を実行する変換では、DimCurrency ディメンション テーブルと DimDate ディメンション テーブルの代替キーを使用することにより、それらの値を取得します。

フラット ファイルの列 テーブル名 列名 データ型
0 FactCurrencyRate AverageRate float
1 DimCurrency CurrencyAlternateKey nchar(3)
2 DimDate FullDateAlternateKey date
3 FactCurrencyRate EndOfDayRate float

このレッスンの作業

このレッスンの内容は次のとおりです。

レッスンの開始

ステップ 1:新しい Integration Services プロジェクトを作成する