Amazon RDS for SQL Server での SQL Server Integration Services のサポート
Microsoft SQL Server Integration Services (SSIS) は、幅広いデータ移行タスクの実行に使用できるコンポーネントです。SSIS は、データ統合およびワークフローアプリケーションに対応したプラットフォームです。データの抽出、変換、ロード (ETL) に使用されるデータウェアハウジングツールを備えています。このツールを使用して、SQL Server データベースのメンテナンスと多次元キューブデータの更新を自動化することもできます。
SSIS プロジェクトはパッケージに編成されて、XML ベースの .dtsx ファイルとして保存されます。パッケージには、制御フローとデータフローを含めることができます。データフローを使用して、ETL オペレーションを表します。デプロイ後、パッケージは SQL Server の SSISDB データベースに保存されます。SSISDB は、完全復旧モードで動作するオンライントランザクション処理 (OLTP) データベースです。
Amazon RDS for SQL Server は RDS DB インスタンスでの SSIS の直接実行をサポートしています。既存または新規の DB インスタンスで SSIS を有効にできます。SSIS はデータベースエンジンと同じ DB インスタンスにインストールされます。
RDS は、次のバージョンで SQL Server スタンダードエディションおよびエンタープライズエディションの SSIS をサポートします。
-
SQL Server 2022、すべてのバージョン
-
SQL Server 2019、バージョン 15.00.4043.16.v1 以降
-
SQL Server 2017、バージョン 14.00.3223.3.v1 以降
-
SQL Server 2016、バージョン 13.00.5426.0.v1 以降
制限と推奨事項
RDS for SQL Server で SSIS を実行する場合は、以下の制限と推奨事項が適用されます。
-
また、DB インスタンスには、
clr enabled
パラメータが 1 に設定されたパラメータグループが関連付けられている必要があります。詳細については、「SSIS のパラメータの変更」を参照してください。注記
SQL Server 2017 または 2019 で
clr enabled
パラメータを有効にしている場合、DB インスタンスで共通言語ランタイム (CLR) を使用できません。詳細については、「サポート対象外の機能とサポートが制限されている機能」を参照してください。 -
以下の制御フロータスクがサポートされています。
Analysis Services DDL 実行タスク
Analysis Services 処理タスク
一括挿入タスク
データベース整合性チェックタスク
データフロータスク
データマイニングクエリタスク
データプロファイリングタスク
パッケージ実行タスク
SQL Server エージェントジョブ実行タスク
SQL 実行タスク
T-SQL ステートメント実行タスク
オペレーター通知タスク
インデックス再構築タスク
インデックス再編成タスク
データベース縮小タスク
データベース転送タスク
ジョブ転送タスク
ログイン転送タスク
SQL Server オブジェクト転送タスク
統計更新タスク
-
プロジェクトのデプロイのみがサポートされています。
-
SQL Server エージェントを使用した SSIS パッケージの実行がサポートされています。
-
SSIS ログレコードは、ユーザーが作成したデータベースにのみ挿入できます。
-
ファイルの操作には
D:\S3
フォルダのみを使用します。他のディレクトリにあるファイルは削除されます。ファイルの場所について、そのほか以下の詳細にも注意してください。-
SSIS プロジェクトの入力ファイルと出力ファイルは
D:\S3
フォルダに配置します。 -
データフロータスクの場合、
BLOBTempStoragePath
とBufferTempStoragePath
の場所をD:\S3
フォルダ内のファイルに変更します。ファイルパスはD:\S3\
で始まる必要があります。 -
ファイル接続に使用されるすべてのパラメータ、可変、表現が
D:\S3
フォルダを指していることを確認します。 -
マルチ AZ インスタンスでは、SSIS によって
D:\S3
フォルダに作成されたファイルは、フェイルオーバー後に削除されます。詳細については、「S3 統合のマルチ AZ の制限」を参照してください。 -
SSIS によって
D:\S3
フォルダに作成されたファイルは、耐久性を高めるために、Amazon S3 バケットにアップロードします。
-
-
列のインポートと列のエクスポートの変換、およびデータフロータスクのスクリプトコンポーネントはサポートされていません。
-
SSIS パッケージの実行時にダンプを有効にしたり、SSIS パッケージにデータタップを追加したりすることはできません。
-
SSIS スケールアウト機能はサポートされていません。
-
プロジェクトを直接デプロイすることはできません。この機能を実行するための RDS ストアドプロシージャが提供されています。詳細については、「SSIS プロジェクトのデプロイ」を参照してください。
-
RDS にデプロイする SSIS プロジェクト (.ispac) ファイルは
DoNotSavePasswords
保護モードで構築します。 -
SSIS は、リードレプリカを使用する Always On インスタンスではサポートされていません。
-
SSIS
オプションに関連付けられている SSISDB データベースをバックアップすることはできません。 -
SSIS の他のインスタンスからの SSISDB データベースのインポートと復元はサポートされていません。
-
他の SQL Server DB インスタンスまたは Oracle データソースに接続できます。RDS for SQL Server 上の SSIS では、MySQL または PostgreSQL などの他のデータベースエンジンへの接続はサポートされていません。Oracle データソースへの接続に関する詳細については、Oracle OLEDB とリンクされたサーバー を参照してください。
SSIS の有効化
SSIS を有効にするには、DB インスタンスに SSIS オプションを追加します。以下のプロセスを使用します。
-
新しいオプショングループを作成するか、既存のオプショングループを選択します。
-
オプショングループに [
SSIS
] オプションを追加します。 -
新しいパラメータグループを作成するか、既存のパラメータグループを選択します。
-
パラメータグループを変更して、
clr enabled
パラメータを 1 に設定します。 -
オプショングループとパラメータグループを DB インスタンスに関連付けます。
-
Amazon S3 統合を有効にする
注記
DB インスタンスに既に SSISDB という名前のデータベースがある場合や、SSIS ログインが予約されている場合、そのインスタンスで SSIS を有効にすることはできません。
SSIS のオプショングループの作成
SSIS を使用するには、使用する DB インスタンスの SQL Server のエディションとバージョンに対応するオプショングループを作成または変更します。そのためには、AWS Management Console または AWS CLI を使用します。
次の手順では、SQL Server Standard Edition 2016 のオプショングループを作成します。
オプショングループを作成するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[オプショングループ] を選択します。
-
[Create group] (グループの作成) を選択します。
-
[Create subnet group(オプショングループの作成)] ウィンドウで以下を行います。
-
[名前] に、AWS アカウント内で一意のオプショングループ名 (
ssis-se-2016
など) を入力します。名前には、英字、数字、ハイフンのみを使用できます。 -
[説明] に、オプショングループの簡単な説明 (
SSIS option group for SQL Server SE 2016
など) を入力します。この説明は表示用に使用されます。 -
[エンジン] で [sqlserver-se] を選択します。
-
[メジャーエンジンのバージョン] で、[13.00] を選択します。
-
-
[Create] (作成) を選択します。
次の手順では、SQL Server Standard Edition 2016 のオプショングループを作成します。
オプショングループを作成するには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds create-option-group \ --option-group-name
ssis-se-2016
\ --engine-namesqlserver-se
\ --major-engine-version13.00
\ --option-group-description "SSIS option group for SQL Server SE 2016
"Windows の場合:
aws rds create-option-group ^ --option-group-name
ssis-se-2016
^ --engine-namesqlserver-se
^ --major-engine-version13.00
^ --option-group-description "SSIS option group for SQL Server SE 2016
"
オプショングループへの SSIS オプションの追加
次に、AWS Management Console または AWS CLI を使用して SSIS
オプションをオプショングループに追加します。
SSIS オプションを追加するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[オプショングループ] を選択します。
-
作成したオプショングループ (この例では ssis-se-2016) を選択します。
-
[オプションの追加] を選択します。
-
[オプションの詳細] で、[オプション名] として [SSRS] を選択します。
-
[スケジュール] で、オプションをすぐに追加するか、次のメンテナンスウィンドウで追加するかを選択します。
-
[オプションを追加] を選択します。
SSIS オプションを追加するには
-
オプショングループに [
SSIS
] オプションを追加します。Linux、macOS、Unix の場合:
aws rds add-option-to-option-group \ --option-group-name
ssis-se-2016
\ --options OptionName=SSIS \ --apply-immediatelyWindows の場合:
aws rds add-option-to-option-group ^ --option-group-name
ssis-se-2016
^ --options OptionName=SSIS ^ --apply-immediately
SSIS のパラメータグループの作成
SSIS で使用する DB インスタンスの SQL Server のエディションとバージョンに対応する clr enabled
パラメータのパラメータグループを作成または変更します。
以下の例では、SQL Server Standard Edition 2016 のパラメータグループを作成します。
パラメータグループを作成するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[パラメータグループ] を選択します。
-
[パラメータグループの作成] を選択します。
-
[パラメータグループの作成] ペインで、次の操作を行います。
-
[パラメータグループファミリー] で、[sqlserver-se-13.0] を選択します。
-
[グループ名] に、パラメータグループの識別子 (
ssis-sqlserver-se-13
など) を入力します。 -
[説明] に「
clr enabled parameter group
」と入力します。
-
-
[Create] (作成) を選択します。
以下の例では、SQL Server Standard Edition 2016 のパラメータグループを作成します。
パラメータグループを作成するには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds create-db-parameter-group \ --db-parameter-group-name
ssis-sqlserver-se-13
\ --db-parameter-group-family "sqlserver-se-13.0
" \ --description "clr enabled parameter group
"Windows の場合:
aws rds create-db-parameter-group ^ --db-parameter-group-name
ssis-sqlserver-se-13
^ --db-parameter-group-family "sqlserver-se-13.0
" ^ --description "clr enabled parameter group
"
SSIS のパラメータの変更
DB インスタンスの SQL Server のエディションとバージョンに対応するパラメータグループの clr enabled
パラメータを変更します。SSIS の場合、clr
enabled
パラメータを 1 に設定します。
以下の手順では、SQL Server Standard Edition 2016 用に作成したパラメータグループを変更します。
パラメータグループを変更するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[パラメータグループ] を選択します。
-
[ssis-sqlserver-se-13] などのパラメータグループを選択します。
-
[パラメータ] で、パラメータのリストを
clr
でフィルタ処理します。 -
[clr enabled (clr 有効化)] を選択します。
-
[Edit parameters] を選択します。
-
[Values (値)] から [1] を選択します。
-
[Save changes] (変更の保存) をクリックします。
以下の手順では、SQL Server Standard Edition 2016 用に作成したパラメータグループを変更します。
パラメータグループを変更するには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds modify-db-parameter-group \ --db-parameter-group-name
ssis-sqlserver-se-13
\ --parameters "ParameterName='clr enabled',ParameterValue=1
,ApplyMethod=immediate"Windows の場合:
aws rds modify-db-parameter-group ^ --db-parameter-group-name
ssis-sqlserver-se-13
^ --parameters "ParameterName='clr enabled',ParameterValue=1
,ApplyMethod=immediate"
オプショングループとパラメータグループを DB インスタンスに関連付ける
SSIS オプショングループおよびパラメータグループを DB インスタンスに関連付けるには、AWS Management Console または AWS CLI を使用します。
注記
既存のインスタンスを使用する場合は、このインスタンスに Active Directory ドメインと AWS Identity and Access Management (IAM) ロールが既に関連付けられている必要があります。新しいインスタンスを作成する場合は、既存の Active Directory ドメインと IAM ロールを指定します。詳細については、「RDS for SQL Server による Active Directory の操作」を参照してください。
SSIS の有効化を完了するには、SSIS オプショングループおよびパラメータグループを新規または既存の DB インスタンスに関連付けます。
-
新しい DB インスタンスの場合は、インスタンスを起動するときにそれらを関連付けます。詳細については、「Amazon RDS DB インスタンスの作成」を参照してください。
-
既存の DB インスタンスの場合は、インスタンスを変更することでそれらを関連付けます。詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。
SSIS オプショングループおよびパラメータグループを新規または既存の DB インスタンスに関連付けることができます。
SSIS オプショングループおよびパラメータグループを使用してインスタンスを作成するには
-
オプショングループの作成時に使用したものと同じ DB エンジンのタイプとメジャーバージョンを指定します。
Linux、macOS、Unix の場合:
aws rds create-db-instance \ --db-instance-identifier
myssisinstance
\ --db-instance-classdb.m5.2xlarge
\ --enginesqlserver-se
\ --engine-version13.00.5426.0.v1
\ --allocated-storage100
\ --manage-master-user-password \ --master-usernameadmin
\ --storage-typegp2
\ --license-modelli
\ --domain-iam-role-namemy-directory-iam-role
\ --domainmy-domain-id
\ --option-group-namessis-se-2016
\ --db-parameter-group-namessis-sqlserver-se-13
Windows の場合:
aws rds create-db-instance ^ --db-instance-identifier
myssisinstance
^ --db-instance-classdb.m5.2xlarge
^ --enginesqlserver-se
^ --engine-version13.00.5426.0.v1
^ --allocated-storage100
^ --manage-master-user-password ^ --master-usernameadmin
^ --storage-typegp2
^ --license-modelli
^ --domain-iam-role-namemy-directory-iam-role
^ --domainmy-domain-id
^ --option-group-namessis-se-2016
^ --db-parameter-group-namessis-sqlserver-se-13
インスタンスを変更し、SSIS オプショングループおよびパラメータグループを関連付けるには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds modify-db-instance \ --db-instance-identifier
myssisinstance
\ --option-group-namessis-se-2016
\ --db-parameter-group-namessis-sqlserver-se-13
\ --apply-immediatelyWindows の場合:
aws rds modify-db-instance ^ --db-instance-identifier
myssisinstance
^ --option-group-namessis-se-2016
^ --db-parameter-group-namessis-sqlserver-se-13
^ --apply-immediately
S3 統合を有効にする
SSIS プロジェクト (.ispac) ファイルをデプロイのためにホストにダウンロードするには、S3 ファイル統合を使用します。詳細については、「Amazon RDS for SQL Server DB インスタンスと Amazon S3 の統合」を参照してください。