2016-04-07 42 views
0

現在、フラットファイルをSQLデータベーステーブルにインポートするSSISパッケージを作成しようとしています。複数の形式ファイルを含むSSISでフラットファイルをインポートする

約30種類のフラットファイルがあり、それぞれ独自のフォーマットファイルがあり、関連するすべてのデータを含むテーブルを作成する必要があります。 フラットファイルの最初の行には列見出しが含まれていません。 I.E。 1つのファイルはPostalAddress1と別のPostalAddressLine1を持つことができ、それらはデータベースの2つの列になり、null可能です。 フラットファイルの中にはさらに多くのデータが含まれている場合があります。

私はむしろSSISに慣れていないので、フラットファイルを解析して行と列の区切り記号とすべての列名を取得するスクリプトを使用すると思いました。 私は、フラットファイルのソース(変数)を設定し、列と各レコードがテキストファイルの行になるように設定し、後でスクリプト変換を使用して各行を解析し、関連する列に設定します。 I.値5は、その後のみのみのPostalAddressフィールドを持っていると言うでしょう、別の表に、一般的なステージング表からすべてのデータをプッシュすることができ、ファイル全体をsqlタスクはそれを実行することができます処理された後、私はRow.FirstName = Value[4];

に設定したいのFirstName です指定された各フォーマットファイルに対応するために3と言うのではなく、

これらのファイルの中には、最大2.5GBのものもあります。

私の質問は以下のとおりです。

が、これはこれを行うには正しい方法でしょうか?
もっと速く/より良い/簡単な方法がありますか?

答えて

0

これは、BiMLの優れた候補であり、メタデータに基づいてパッケージを動的に構築します。 BiMLScriptの導入から

:さらに良い

、自動化ロジックはBimlScriptコードナゲットを使用してBIML コードに直接埋め込むことができます。これらのC#またはVBコードのスニペット を使用すると、外部メタデータにアクセスして、大量のBimlコードを自動的に大量に作成することができます。たとえば、 ステージング環境を自動的に作成したり、列のメタデータに基づいてSCDパターンを適用することができます。

+0

BiML [BIDS helper plugin]を調べました。しかし、メタデータに基づいてパッケージを動的に構築する方法がわかりません。私が知る限りでは、パッケージにオブジェクトをドラッグ・アンド・ドロップする必要はなく、xmlを使用してパッケージ全体をコーディングするだけです。その後、それを構築する。 また、ソートを作成しているSSISシステムは1つのパッケージでなければならないことに注意してください。このパッケージは、インポートするフラットファイルのテーブルをポーリングし、フラットファイルのIDに基づいてフォーマットを取得しますそれのためのファイル。 テーブルに挿入します。 – xFrenzy47x

+0

BiMLScriptを調べましたか? http://bimlscript.com/walkthrough/Details/3105 –

関連する問題