Share via


レッスン 1: プロジェクトと基本パッケージの作成

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

ms170419.note(ja-jp,SQL.90).gif重要 :
このチュートリアルでは、AdventureWorksDW サンプル データベースを使用します。AdventureWorksDW のインストールと配置の詳細については、「セットアップの実行による AdventureWorks のサンプル データベースとサンプルのインストール」を参照してください。

パッケージ要件について

パッケージを作成する前に、ソース データの形式と変換先データの形式をよく理解する必要があります。両方のデータ形式を理解しておけば、ソース データを変換先にマップするための変換を定義できます。

ソース データの確認

このチュートリアルで使用するソース データは、フラット ファイル (SampleCurrencyData.txt) に保存されている通貨履歴データのセットです。ソース データには、通貨の平均レート、通貨キー、日付キー、および終値レートに関する 4 つの列があります。

以下は、SampleCurrencyData.txt ファイルに保存されているソース データの例です。

1.00010001   ARS   9/3/2001 0:00    0.99960016

1.00010001   ARS   9/4/2001 0:00    1.001001001

1.00020004   ARS   9/5/2001 0:00    0.99990001

1.00020004   ARS   9/6/2001 0:00    1.00040016

1.00050025   ARS   9/7/2001 0:00    0.99990001

1.00050025   ARS   9/8/2001 0:00    1.001001001

1.00050025   ARS   9/9/2001 0:00    1

1.00010001   ARS   9/10/2001 0:00   1.00040016

1.00020004   ARS   9/11/2001 0:00   0.99990001

1.00020004   ARS   9/12/2001 0:00   1.001101211

 

フラット ファイル ソース データを操作する前に、フラット ファイル接続マネージャがフラット ファイル データをどのように解釈するのかを理解しておく必要があります。フラット ファイル ソースが Unicode の場合、すべての列が [DT_WSTR] として定義され、既定の列幅 50 が設定されます。フラット ファイル ソースが ANSI エンコードの場合は、列が [DT_STR] として定義され、列幅が 50 になります。これらの既定値を、使用中のデータに適した文字列型の列に変更する必要があります。既定値を変更するには、データの書き込み先 (変換先) のデータ型を確認し、フラット ファイル接続マネージャで適切なデータ型を指定します。

変換先の確認

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

列名 データ型 参照テーブル 参照列

AverageRate

float

なし

なし

CurrencyKey

int (FK)

DimCurrency

CurrencyKey (PK)

TimeKey

Int (FK)

DimTime

TimeKey (PK)

EndOfDayRate

float

なし

なし

ソース データと変換先データのマッピング

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

フラット ファイルの列 テーブル名 列名 データ型

0

FactCurrencyRate

AverageRate

Float

1

DimCurrency

CurrencyAlternateKey

nchar(3)

2

DimTime

FullDateAlternateKey

Datetime

3

FactCurrencyRate

EndOfDayRate

Float

このレッスンの作業

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

レッスンの開始

新しい Integration Services プロジェクトの作成