初心者向け SSIS チュートリアル: とは Archi構造、パッケージ
SSIS とは何ですか?
SQL サーバー統合サービス (SSIS) のコンポーネントです Microsoft SQL Server 幅広いデータ移行タスクの実行に使用できるデータベース ソフトウェア。 SSIS は、データの抽出、読み込み、データのクリーニング、集計、結合などの変換に使用される高速かつ柔軟なデータ ウェアハウス ツールです。
これにより、あるデータベースから別のデータベースにデータを簡単に移動できます。 SSIS は、SQL Server データベース、Excel ファイル、 Oracle DB2 データベースなど。
SSIS には、電子メール メッセージの送信、FTP 操作、データ ソース、送信先などのワークフロー機能を実行するためのグラフィカル ツールとウィザードも含まれています。
SSIS を使用する理由
SSIS ツールを使用する主な理由は次のとおりです。
- SSIS ツールは、さまざまなデータ ストアからのデータを結合するのに役立ちます
- 管理機能とデータのロードを自動化します
- データマートとデータウェアハウスにデータを追加します
- データのクリーンアップと標準化を支援します
- データ変換プロセスに BI を組み込む
- 管理機能とデータロードの自動化
- SIS には、ユーザーが大規模なプログラムを作成するのではなく、データを簡単に変換できる GUI が含まれています。
- 非常に数分で、あるデータ ソースから別のデータ ソースに数百万行をロードできます。
- データ変更の識別、キャプチャ、および処理
- データの保守、処理、または分析の調整
- SSIS により、本格的なプログラマーは不要になります
- SSIS は堅牢なエラーおよびイベント処理を提供します
SSISの歴史
SSIS より前は、SQL Server 7 および 2000 の一部であるデータ変換サービス (DTS) が使用されていました。
Detail | |
---|---|
SQL Serverの2005 | 当学校区の Microsoft チームは DTS を刷新することを決定しました。ただし、DTS を更新する代わりに、製品に Integration Services (SSIS) という名前を付けることにしました。 |
2008 SQL サーバーのバージョン | SSIS のパフォーマンスが大幅に向上しました。 新しいソースも紹介されました。 |
SQL Serverの2012 | これは SSIS の最大のリリースでした。このバージョンでは、プロジェクト展開モデルの概念が導入されました。これにより、特定のパッケージの代わりに、プロジェクト全体とそのパッケージをサーバーに展開できるようになりました。 |
SQL Serverの2014 | このバージョンでは、SSIS にはあまり変更が加えられません。 ただし、コードを介して個別にダウンロードすることで新しいソースまたは変換が追加されました。Plex または SQL Server 機能パック。 |
SQL Server 2016 の場合 | このバージョンでは、個別のパッケージではなく、プロジェクト全体をデプロイできます。 追加のソース、特にクラウドおよびビッグ データ ソースがあり、カタログにはほとんど変更が加えられませんでした。 |
SSIS の主な機能
ここでは、SSIS の重要な基本機能をいくつか示します。
- スタジオ環境
- 関連するデータ統合機能
- 効果的な実装速度
- 他との緊密な統合 Microsoft SQLファミリー
- データマイニングクエリ変換
- あいまい検索とグループ化変換
- 用語抽出および用語ルックアップ変換
- より高速なデータ接続コンポーネント、例えば SAP or Oracle
SSIS Archi構造
SSIS アーキテクチャのコンポーネントは次のとおりです。
- 制御フロー(コンテナとタスクを保存)
- データ フロー (ソース、宛先、変換)
- イベント ハンドラ (メッセージ、電子メールの送信)
- Package Explorer (パッケージ内のすべてを単一のビューで表示します)
- パラメータ (ユーザーインタラクション)
各コンポーネントを詳しく理解しましょう。
1. 制御フロー
制御フローは SSIS パッケージの頭脳です。 これは、すべてのコンポーネントの実行順序を調整するのに役立ちます。 コンポーネントには、優先順位制約によって管理されるコンテナとタスクが含まれています。
2. 優先順位の制約
優先順位制約は、事前に定義された順序でタスクを実行するように指示するパッケージ コンポーネントです。 また、SSIS パッケージ全体のワークフローも定義します。 前のタスクの結果 (特別な式を使用して定義されたビジネス ルール) に基づいて宛先タスクを実行することにより、リンクされた XNUMX つのタスクの実行を制御します。
3.タスク
「タスク」は個々の作業単位です。 プログラミング言語で使われるメソッドや関数と同じです。 ただし、SSIS ではコーディング メソッドを使用しません。 代わりに、ドラッグ アンド ドロップ手法を使用してサーフェスをデザインし、構成します。
4.コンテナ
コンテナは、タスクを作業単位にグループ化するための単位です。 視覚的な一貫性を提供するだけでなく、その特定のコンテナーのスコープ内にある変数やイベント ハンドラーを宣言することもできます。
SSIS のコンテナーには次の XNUMX 種類があります。
- シーケンスコンテナ
- for ループ コンテナ
- Foreach ループ コンテナー
シーケンスコンテナ: 補助タスクをグループ化して整理し、トランザクションを適用したり、コンテナにログを割り当てたりすることができます。
ループコンテナの場合:シーケンス コンテナと同じ機能を提供しますが、タスクを複数回実行できる点が異なります。 ただし、1 から 100 までのループのような評価条件に基づいています。
各ループ コンテナについて: ループも可能です。 ただし、条件式を使用する代わりに、フォルダー内のファイルと同様にオブジェクトのセットに対してループが実行される点が異なります。
5. データの流れ
SSIS ツールの主な用途は、データをサーバーのメモリに抽出し、変換して、別の宛先に書き込むことです。 制御フローが頭脳である場合、データ フローは SSIS の心臓部です
6. SSIS パッケージ
SSIS のもう 1 つのコア コンポーネントは、パッケージの概念です。これは、順序どおりに実行されるタスクのコレクションです。ここでは、プレジデント制約がタスクの実行順序の管理に役立ちます。
パッケージはファイルを次の場所に保存するのに役立ちます。 SQLサーバー、msdb またはパッケージ カタログ データベース内。 .dtsx ファイルとして保存できます。これは、Reporting Services の .rdl ファイルによく似た構造化ファイルです。
7。 パラメーター
パラメーターは変数とほぼ同じように動作しますが、いくつかの主な例外があります。 パッケージ外に簡単にセットできます。 パッケージを開始するために渡す必要がある値として指定できます。
SSIS タスクの種類
SSIS ツールでは、フローを制御するタスクを追加できます。 さまざまな種類の作業を実行するさまざまな種類のタスクがあります。
いくつかの重要な SSIS タスクを以下に示します。
タスク名 | Descriptイオン |
---|---|
SQLタスクの実行 | その名前が示すように、リレーショナル データベースに対して SQL ステートメントを実行します。 |
データフロータスク | このタスクは、XNUMX つ以上のソースからデータを読み取ることができます。 データがメモリ内にあるときにデータを変換し、XNUMX つ以上の宛先に書き込みます。 |
Analysis Services 処理タスク | このタスクを使用して、表形式モデルのオブジェクトを処理するか、SSAS キューブとして処理します。 |
パッケージタスクの実行 | この SSIS タスクを使用して、同じプロジェクト内から他のパッケージを実行できます。 |
プロセスタスクの実行 | このタスクを使用すると、コマンド ライン パラメーターを指定できます。 |
ファイルシステムタスク | ファイル システム内で操作を実行します。 ファイルの移動、名前変更、削除、ディレクトリの作成など。 |
FTPタスク | これにより、基本的な FTP 機能を実行できます。 |
スクリプトタスク | これは空のタスクです。 あらゆるタスクを実行する NET コードを作成できます。 パフォーマンスしたいと思っています。 |
送信 Mail 仕事 | パッケージが完了したこと、またはエラーが発生したことをユーザーに通知する電子メールを送信できます。 |
一括挿入タスク | Bulk Insert コマンドを使用してデータをテーブルにロードできます。 |
スクリプトタスク | のセットを実行します VB.NET または Visual Studio 環境内での C# コーディング。 |
Webサービスタスク | Web サービス上のメソッドを実行します。 |
WMI イベント ウォッチャー タスク | このタスクにより、SSIS パッケージは特定の WMI イベントを待機して応答できるようになります。 |
XMLタスク | このタスクは、XML ファイルを結合、分割、または再フォーマットするのに役立ちます。 |
その他の重要な ETL ツール
- SAP データサービス
- SASデータ管理
- Oracle ウェアハウス・ビルダー (OWB)
- PowerCenter Informatica
- IBM Infosphere 情報サーバー
- データETLのElixirレパートリー
- サージェントのデータフロー
SSIS を使用するメリットとデメリット
SSIS ツールには次の利点があります。
- 幅広いドキュメントとサポート
- 導入の容易さとスピード
- SQL Server との緊密な統合 ビジュアルスタジオ
- 標準化されたデータ統合
- リアルタイムのメッセージベースの機能を提供します
- 分散モデルのサポート
- SSIS による SQL へのデータ挿入のボトルネックとなるネットワークを除去するのに役立ちます。
- SISS を使用すると、OLE DB の代わりに SQL Server 宛先を使用して、データをより速く読み込むことができます。
SSISのデメリット
SSIS ツールを使用する場合のいくつかの欠点は次のとおりです。
- Windows以外の環境では問題が発生することがある
- ビジョンや戦略が不明確
- SSIS は代替データ統合スタイルをサポートしていません
- 他の製品との統合に問題がある
SSIS のベスト プラクティスの例
- SSIS はインメモリ パイプラインです。 そのため、すべての変換がメモリ内で確実に行われるようにすることが重要です。
- ログに記録される操作を最小限に抑える
- リソースの使用状況を理解して容量を計画する
- SQL ルックアップ変換、データ ソース、宛先を最適化する
- スケジュールを正しく設定して配布する
製品概要
- SSIS の完全な形式は SQL Server Integration Services です
- SSIS ツールは、さまざまなデータ ストアからのデータを結合するのに役立ちます
- SQL Server Integration Service の重要なバージョンは 2005、2008、2012、2014、および 216 です。
- Studio 環境、関連するデータ統合機能、効果的な実装速度は SSIS の重要な機能の一部です
- 制御フロー、データフロー、イベントハンドラ、パッケージエクスプローラー、パラメータは、SSISアーキテクチャの重要なコンポーネントです。
- SQL 実行タスク、データ フロー タスク、Analysis Services 処理タスク、パッケージ実行タスク、プロセス実行タスク、ファイル システム タスク、FTP タスク、送信 Mail タスク、Webサービスタスクはいくつか重要です
- 幅広いドキュメントとサポート
- SSIS の最大の欠点は、代替のデータ統合スタイルがサポートされていないことです。
- SAP データサービス、SASデータ管理、 Oracle Warehouse Builder (OWB)、PowerCenter Informatica、 IBM Infosphere 情報サーバー
- SSIS はインメモリ パイプラインです。 したがって、すべての変換がメモリ内で確実に行われるようにすることが重要です。