1. ホーム
  2. c#

[解決済み] プログラマーはSSISを使うべきか、使うとしたらなぜか?[クローズド]

2023-02-12 05:09:15

質問

.NET開発者として、どのような理由でコードを書くよりもSSISパッケージを優先すべきなのでしょうか?私たちは 1トン のパッケージがありますが、これらは書くのも維持するのも悪夢のようです。各パッケージは、C# と VB.NET スクリプトが抽象化されたポイントに混在する、色とりどりのスパゲティのボウルのようです。各 "Execute SQL Task" や "Foreach Loop" が何をするのか理解するために、私はこの忌々しいものをダブルクリックして、複数のタブに散在するリテラル値や式のツリーを参照する必要があります。

私はオープン マインドなので、他のどのような

良い開発者 が、単にコードを書くよりも生産的だと感じているかどうか知りたいです。もしSSISがより生産的だと感じるなら、その理由を教えてください。

どのように解決しましたか?

私は毎日SSISを使用して、大規模なデータウェアハウスとキューブを維持・管理しています。私は 2 年間 100 % ビジネス インテリジェンスとデータ ウェアハウスをやってきました。その前に、私は 10 年間 .NET アプリケーション開発者でした。

SSISの価値は、データをある場所から別の場所に移動させるためのワークフローエンジンであり、その過程でいくつかの限定された変換や条件分岐が行われるかもしれません。パッケージに多くのスクリプトが含まれている場合、チームは間違ったタスクのために SSIS を使用しているか、SQL に慣れていないか、誇大広告に踊らされている可能性があります。SSISパッケージは、デバッグが非常に困難です。スクリプトコンポーネントは絶対的な悪夢であり、フォーマット、ループ、または最後の手段としてのみ使用する必要があります。

  1. パッケージはシンプルに、SQLタスクとデータフロータスクにとどめてください。
  2. できるだけ多くの作業をSSISの外で行い、できればSQLで行う。
  3. 変数を単一のグローバルスコープに保持する
  4. SQL は変数またはストアプロシージャに格納し、決してインラインにしない。
  5. 変数の値は設定ストア (できれば SQL データベース) に保存します。