データ変換サービス (DTS) パッケージからSQLクエリに切り替えたときの話

どうも凡人です。
業務利用の社内専用ツールが、データ変換サービス(DTS)というものを利用していました。
こいつをどうにか違う手段に切り替えた時のお話です。

データ変換サービス(DTS)とは

ざっくり言うと、MSさんのSQLServer系のツールです。
DBからDBへデータを流し込むことができます。

なぜ違う手段に切り替えるのか

そもそもサポートが切れています。
Windows Serverで言う2000とか2003R2くらいまでのツールなので。

代替手段の候補

候補その1:SSIS

SQL Server Integration Serviceと言います。
DTSの後継ツール。
DTSからSSISに変換するツールもMS社から提供されています。

候補その2:SQLクエリ

もうツール使うのやめて、SQLをぶん投げる方式にしようよ、というお話。
ツールからDTSを実行していた部分を変えて、DTSじゃなくSQLを実行する。

結論

SQLクエリにしました。

理由

理由その1:SSISがサポートされなくなるかもしれない

DTSがサポートされなくなったように、SSISがサポートされなくなる可能性があります。
おそらく、そのときも変換ツール等が提供されるとは思います。
しかし、それでも作業が発生する。
その点、SQLはまぁまず無くならないだろうと。

理由その2:SSISを利用する旨味が無い

SSISが駄目だという話ではありません。
SSISを利用する利点として、データをDBからDBに流し込むときにデータ変換のプログラムを組み込めます。
(都合の良い主キーの挿入や、リレーション等がないレコードのデータの整合性を保てる等)
しかし、データ変換のプログラムそのものは、他のツールで実行しています。
よって、その機能は利用しません。
もしSSISを利用するなら、現在のツールでデータ変換しているプログラムを全てSSISに移行するべきかなと。
ちょっとそれはリスクが高い。

以上のような理由で、DTS等のツールを利用しなくなりました。
その分、SQLクエリをテーブル毎に書くという結構な重労働が発生しました。
しかし、より低次元の技術にすることで息の長いツールになるんじゃないかなと思います。
これから保守をする人が、DTSやSSISの開発環境整える手間も無くなります。

個人的には、SSISに全て移行してみたかったというのが正直なところ。
既存の資産がありますし、無駄な作業なので諦めました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax