メイン コンテンツをスキップする 補完的コンテンツへスキップ

Microsoft SQL Server Integration Services (SSIS) (リポジトリーデータベース) - インポート

Availability-note AWS

ブリッジの要件

このブリッジ:
  • ドライバーを<TDC_HOME>/data/download/MIMB/にダウンロードするためには、https://repo.maven.apache.org/maven2/ やその他のツールサイトへのインターネットアクセスが必要です。

  • そのSDKにアクセスするためにはツールのインストールが必要です。

ブリッジの仕様

ベンダー Microsoft
ツール名 SQL Server Integration Services (SSIS)
ツールバージョン 11.0 (2012)〜15.x (2019)
ツールのWebサイト https://docs.microsoft.com/en-us/sql/integration-services/
サポートされている方法論 [データ統合] マルチモデル、メタデータリポジトリー、 ETL (ソースとターゲットのデータストア、変換来歴、式解析) JDBC API経由の
データプロファイリング
増分収集
マルチモデル収集
モデル選択のためのリモートリポジトリーの参照

仕様
ツール: JDBC API経由のMicrosoft / SQL Server Integration Services (SSIS)バージョン11.0 (2012)~15.x (2019)
https://docs.microsoft.com/en-us/sql/integration-services/をご覧ください。
メタデータ: [データ統合] マルチモデル、メタデータレポジトリー、ETL (ソースとターゲットのデータストア、変換来歴、式解析)
コンポーネント: MicrosoftSqlServerRepositoryIsDbバージョン11.2.0

免責事項
このインポートブリッジでは、インターネットに接続して次のサードパーティライブラリーをダウンロードする必要があります:
- オープンソースのサードパーティライブラリーをダウンロードする場合はhttps://repo.maven.apache.org/maven2/など
- その他のサードパーティソフトウェア(データベース特定のJDBCドライバーなど)は該当するサイトへ

ダウンロードされたサードパーティライブラリーは、$HOME/data/download/MIMB/に格納されています。
HTTPSが失敗した場合、インポートブリッジはHTTPを試します。
- インターネットへのアクセスにプロキシを使用している場合は、JREでそのプロキシを設定する必要があります(Miscellaneousパラメーターで -j オプションをご覧ください。)。
- インポートブリッジではインターネットにフルにアクセスできない場合は、インターネットアクセスがある別のサーバーから$HOME/data/download/MIMB/ディレクトリーをコピーします。$HOME/bin/MIMB.sh (または.bat) -dというコマンドを使えば、すべてのブリッジで使用される全サードパーティライブラリーを一度にダウンロードできます。

このインポートブリッジを実行すると、ライセンス規約の責任、およびダウンロードしたサードパーティソフトウェアライブラリーによって生じる潜在的なセキュリティの脆弱性を受け入れることになります。

概要
このブリッジは、JDBC接続を使い、対応するSQL Server SSISカタログからパッケージをインポートします。

要件
SQL ServerはTLS v1とv1.1をサポートしなくなり、代わりにセキュリティ上の理由からTLS 1.2が必要となりました。また、JDK 11.0では古いバージョンのTLS (1.0や1.1など)がデフォルトで無効化されています。
https://support.microsoft.com/en-us/topic/kb3135244-tls-1-2-support-for-microsoft-sql-server-e4472ef8-90a9-13c1-e4d8-44aad198cdbe#:%7E:text=SQL%20Server%202019%20has%20the,to%20enable%20TLS%201.2%20support
したがって、SQL ServerをTLS 1.2にアップグレードできない場合は、/MetaIntegration/jre/conf/security/java.securityというファイルを編集してJDK 11の設定を変更し、
次の行にある"TLSv1, TLSv1.1,"を削除する必要があります。
- jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \
その結果、次のようになります。
- jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \

よくある質問
該当なし

制限事項
現在判明している一般的な制限事項は、https://metaintegration.com/Products/MIMB/Help/#!Documents/mimbknownlimitations.htmlをご覧ください。

サポート
トラブルシューティングパッケージを次の項目と共に提供してください。
- デバッグログ(UIまたはconf/conf.propertiesでMIR_LOG_LEVEL=6を使って設定可能)
- 利用できる場合はメタデータバックアップ(技術的理由によりこの共通オプションが実装されていないブリッジがあるものの、Miscellaneousパラメーターで-backupオプションを使って設定可能)


ブリッジパラメーター

パラメーター名 説明 タイプ デフォルト 範囲
ホスト SQL Serverカタログが保管されているホストの名前またはIPアドレス。 STRING   localhost 必須
ユーザー 接続が確立されている側のデータベースユーザー名です。

SISS DBブリッジはSQL Serverのリポジトリーデータベースに直接接続します。したがってこのユーザーはデータベースユーザーであり、統合されたSSIS権限の一部ではありません。

このユーザーに次のデータベース権限を付与してください:
- サーバーロール: 接続アクセスではパブリック
- データベースメンバーシップ: db_reader、ssis_admin。

Note, the ssis_admin membership is required for accessing internal ストアドプロシージャーs to extract packages.
STRING      
パスワード 接続が確立されている側のデータベースユーザーのパスワードです。 パスワード      
データベース データベースの名前。 STRING   SSISDB 必須
参照フォルダーのフィルター SQL Server Integration Serviceカタログ内にパッケージのフォルダー名を入力します。このパラメーターは、リポジトリーストラクチャーの参照範囲を制限する必要がある場合に使用します。指定された場合、ブリッジは指定されたフォルダーからのパッケージのみをインポートします。 REPOSITORY_SUBSET      
パッケージ 処理中のSQL Server Integration Serviceのパッケージ名。 REPOSITORY_SUBSET     必須
変数値ファイル MICROSOFT SQL SERVERは設定オーバーライド
SSISのパラメーターや変数のオーバーライドを定義するファイルです。

SSISはプロジェクトとパッケージレベルのパラメーター(および変数)をサポートしています。ブリッジはこれらのパラメーターを理解して来歴構築に使用し、2005年以降のSSISバージョンで生成されたパラメーターをサポートします。

各定義は名前と値のペアで構成されています(例: param_name=param_value_verride)。
それぞれの名前にそのNAMESPACEのプレフィックスが付いている必要があります。例:

$Project::project_parameter_1=global_override_1

$Package::package_parameter_1=global_override_2

User::user_variable_1=global_override_3

System::system_variable_1=global_override_4

設定ペアはROOT (ファイルの先頭)で設定するか、CONTEXT ([Project:project_name.]package_name[.task_name])によって区切られます。例:
$Project::project_parameter_1=global_override_1 // ROOT override

[PackageName]
$Project::project_parameter_1=global_override_2 // package specific override

[PackageName.TaskName]
User::task_variable_1=global_override_3 // task specific override

マルチプロジェクトインポートの場合、CONTEXTはプロジェクトプレフィックスを必要とします。例:
$Project::project_parameter_1=global_override_1 // ROOT、全プロジェクトのオーバーライド

[Project:Project_1]
$Project::project_parameter_1=global_override_2 // project "Project_1" 特定のオーバーライド

[Project:Project_1.PackageName.TaskName]
$Project::project_parameter_1=global_override_3 // project "Project_1" パッケージとタスクの特定オーバーライド

[Project:Project_2.PackageName]
$Project::project_parameter_1=global_override_4 // project "Project_2" パッケージ特定のオーバーライド

SSISがSQLステートメントで(正しいデフォルト値を使用せずに)変数を用いる場合は、このパラメーターの使用を検討してください。ブリッジがSQLステートメントを通じて来歴を理解するのに役立ちます。

同じ変数が同一のコンテキストで複数回定義されている場合は、最新の定義が使われます。ただし、同じ変数が[Package]と[Package.Task]の両方のコンテキストで定義されている場合は、高い方のレベルのコンテキストにある定義(つまり[Package.Task])が使われます。

変数名では大文字と小文字が区別されます。このファイルの値は、SSISで定義されたデフォルトの変数値がある場合はそれをオーバーライドします。
ファイル
*.txt
*.ini
*.var
*.properties
   
[Encoding] (エンコーディング) プロパティ[SQLSourceType]が[ファイル接続]に設定されている場合は、[SQLタスクを実行]するためのソースファイルのエンコーディング文字セットを指定します。 ENUMERATED
中東欧言語(ISO-8859-2)
中東欧言語(Windows-1250)
繁体字中国語(Big5)
簡体字中国語(GB18030)
簡体字中国語(GB2312)
キリル言語(ISO-8859-5)
キリル言語(Windows-1251)
DOS (IBM-850)
ギリシャ語(ISO-8859-7)
ギリシャ語(Windows-1253)
ヘブライ語(ISO-8859-8)
ヘブライ語(Windows-1255)
日本語(Shift_JIS)
韓国語(KS_C_5601-1987)
タイ語(TIS620)
タイ語(Windows-874)
トルコ語(ISO-8859-9)
トルコ語(Windows-1254)
UTF 8 (UTF-8)
UTF 16 (UTF-16)
西ヨーロッパ言語(ISO-8859-1)
西ヨーロッパ言語(ISO-8859-15)
西ヨーロッパ言語(Windows-1252)
ロケールエンコーディング
エンコード変換なし
windows-1252  
Miscellaneous はじめに
ダッシュで始まるMiscellaneousオプションを指定し、必要であればその後にパラメーターを追加できます。例:
- connection.cast MyDatabase1="MICROSOFT SQL SERVER"
該当する場合は複数回使用できるオプションもあります。例:
- connection.rename NewConnection1=OldConnection1 -connection.rename NewConnection2=OldConnection2;
オプションのリストは長い文字列になるため、${MODEL_BRIDGE_HOME}\data\MIMB\parametersにあり拡張子が.txtであるファイルからロードすることもできます。その場合、オプションはすべて、このパラメーターの唯一の値としてそのファイル内で定義されることが必要です。例:
ETL/Miscellaneous.txt

JAVA環境のオプション
-java.memory <Javaメモリの最大サイズ> (以前の-m)

64ビットJREではデフォルトで1G、またはconf/conf.properties内の設定に従います。例:
-java.memory 8G
-java.memory 8000M

-java.parameters <Javaランタイム環境コマンドラインオプション> (以前の-j)


-java.parameters -Dname=value -Xms1G
のように、-java.parametersの後ろのテキストはすべてそのままJREに渡されるため、このオプションはMiscellaneousパラメーター内の最後に来る必要があります。インターネットへのアクセスにプロキシを使用している場合は、必要なサードパーティのソフトウェアライブラリーをダウンロードできるよう、次のオプションを設定する必要があります(このオプションはhttps://repo.maven.apache.org/maven2/にアクセスするため、そして例外的にいくつかの他のツールサイトにアクセスするために不可欠です)。
注: プロキシは、(会社の)外部トラフィックをHTTPSで暗号化しながら、HTTPでプロキシにアクセスできる内部トラフィックを信頼しているものがほとんどです。この場合、HTTPSリクエストはHTTPでプロキシに到達し、プロキシはそれをHTTPSで暗号化します。
-java.parameters -java.parameters -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttp.proxyUser=user -Dhttp.proxyPassword=pass

モデルインポートのオプション
-model.name <モデル名>

モデル名をオーバーライドをオーバーライドします。例:
-model.name "My Model Name"

-prescript <スクリプト名>

このオプションによって、ブリッジの実行前にスクリプトを実行できるようになります。
スクリプトはbinディレクトリー(またはconf/conf.propertiesのM_SCRIPT_PATHで指定)にあり、拡張子が.batか.shであることが必要です。
スクリプトのパスに親ディレクトリーの記号( .. )を含めることはできません。
スクリプトは、成功した場合は終了コードである0を、失敗した場合は別の値を返します。
例:
-prescript "script.bat arg1 arg2"

-postscript <スクリプト名>

このオプションによって、ブリッジが正しく実行された後にスクリプトを実行できるようになります。
スクリプトはbinディレクトリー(またはconf/conf.propertiesのM_SCRIPT_PATHで指定)にあり、拡張子が.batか.shであることが必要です。
スクリプトのパスに親ディレクトリーの記号( .. )を含めることはできません。
スクリプトは、成功した場合は終了コードである0を、失敗した場合は別の値を返します。
例:
-postscript "script.bat arg1 arg2"

-cache.clear

インポート前にキャッシュをクリアするため、増分収集せずにフルインポートを実行します。

モデルが変更されず、-cache.clearパラメーターが使われていない場合(増分収集)、新しいバージョンは作成されません。
モデルが変更されず、-cache.clearパラメーターが設定されている場合(増分ではなくフルソースインポート)、新しいバージョンが作成されます。

-backup <directory>

さらなるトラブルシューティングのため、入力メタデータを保存できるようにします。指定された<directory>は空であることが必要です。

-restore <ディレクトリー>

復元するバックアップ<ディレクトリー>を指定します。

データ接続オプション
使用するソースとターゲットのデータストアを参照するよう、通常はETL/DIツールとBIツールのインポートブリッジによってデータ接続が生成されます。これらのデータ接続はメタデータ管理ツールによって実際のデータストア(データベースやファイルシステムなど)への接続(メタデータスティッチング)に使われ、完全なエンドツーエンドのデータフローの来歴とインパクト分析が行われます。各データ接続の名前はインポートモデルごとに一意です。DI/BIデザインツールで使われているデータ接続名を可能な限り使用します。そうでない場合は、データベース/スキーマ名、ファイルシステムのパス、Uniform Resource Identifier (URI)など、短くても意味のある接続名が生成されます。次のオプションを使えば、接続を操作できます。これらのオプションによって、レガシーオプションである-c、-cd、-csが置き換えられます。

-connection.cast ConnectionName=ConnectionType

SQL解析のためにジェネリックデータベース接続(ODBCやJDBCなど)を正確なデータベースタイプ(ORACLEなど)にキャストします。例:
-connection.cast "My Database"="MICROSOFT SQL SERVER"
サポートされているデータストア接続タイプのリストは次のとおりです。
ACCESS
APACHE CASSANDRA
DB2/UDB
DENODO
GOOGLE BIGQUERY
HIVE
MYSQL
NETEZZA
ORACLE
POSTGRESQL
PRESTO
REDSHIFT
SALESFORCE
SAP HANA
SNOWFLAKE
MICROSOFT SQL AZURE
MICROSOFT SQL SERVER
SYBASE SQL SERVER
SYBASE AS ENTERPRISE
TERADATA
VECTORWISE
HP VERTICA

-connection.rename OldConnection=NewConnection

既存の接続を新しい名前に変更します。例:
-connection.rename OldConnectionName=NewConnectionName
既存の複数のデータベース接続の名前を変更し、新しい1つのデータベース接続に統合できます。例:
-connection.rename MySchema1=MyDatabase -connection.rename MySchema2=MyDatabase

-connection.split oldConnection.Schema1=newConnection

データベース接続を1つまたは複数のデータベース接続に分割します。
1つのデータベース接続をスキーマごとの1つの接続に分割できます。例:
-connection.split MyDatabase
すべてのデータベース接続をスキーマごとの1つの接続に分割できます。例:
-connection.split *
データベースにスキーマ名を追加することで、データベース接続を明示的に分割し、新しいデータベース接続を作成できます。例:
-connection.split MyDatabase.schema1=MySchema1

-connection.map SourcePath=DestinationPath

ソースパスをデスティネーションパスにマッピングします。これは、異なるパスが同じオブジェクト(ディレクトリーまたはファイル)をポイントしている場合にファイルシステム接続にとって便利です。
Hadoopでは、あるプロセスがHDFSの完全パスで指定されたCSVファイルに書き込む一方、別のプロセスが、デフォルトのファイル名と拡張子を持つ相対パスで指定されている同じファイルによって実装されたHiveテーブル(外部)から読み取ります。例:
-connection.map /user1/folder=hdfs://host:8020/users/user1/folder/file.csv
Linuxでは、/users/johnや/users/paulといった複数のシンボリックリンクによって、/dataのような特定のディレクトリー(またはファイル)が参照されます。例:
-connection.map /data=/users/John -connection.map /data=/users/paul
Windowsでは、M:やN:といった複数のネットワークドライブによって、C:\dataのような特定のディレクトリーが参照されます。例:
-connection.map C:\data=M:\ -connection.map C:\data=N:\

-connection.casesensitive ConnectionName...

検出されたデータストアのタイプがこの設定(Microsoft SQL ServerやMySqlなど)をサポートしている場合は、指定された接続内のオブジェクト識別子に対し、大文字と小文字を区別しないデフォルトのマッチングルールがオーバーライドされます。例:
-connection.casesensitive "My Database"

-connection.caseinsensitive ConnectionName...

検出されたデータストアのタイプがこの設定(Microsoft SQL ServerやMySqlなど)をサポートしている場合は、指定された接続内のオブジェクト識別子に対し、大文字と小文字を区別するデフォルトのマッチングルールがオーバーライドされます。例:
-connection.caseinsensitive "My Database"

-connection.level AggregationLevel

外部接続の集計レベルを指定します。例: -connection.level catalog
サポートされている値のリスト:
server
catalog
schema (デフォルト)

MICROSOFT SQL SERVERがデータベースである場合のオプション
-c

サーバーから受け取ったdtsxパッケージのキャッシュの上限。このオプションは、[参照フォルダーのフィルター]オプションが空の場合に制限に影響します。デフォルトでは、ブリッジはパッケージをすべてインポートします。

-s

変換スクリプトの入力と出力間マッピングの外部指定を有効にします。この場合、入力は'_Script_'データベースのテーブルに行き、出力はデータベースのテーブルから取得されます。入力と出力間のマッピングリレーションシップは、テーブル間のマッピングを定義することで指定できます。
デフォルトでは、変換スクリプトにあるすべての出力に対してすべての入力がブリッジによって相互接続します。

-connection.fullyqualifiedname

接続名に{$project_name}:{$package_name}:タグのプレフィックスを付けます。これにより、異なるパッケージ内にある同じ名前の接続を区別しやすくなります。

-connection.catalogname <ブール値>

リレーショナルデータベース接続名にある#{$catalog_name}というサフィックスを制御します。
-connection.catalogname false

-environment <文字列>

使われる環境をenvironment_folder\environment_nameという形式で指定します。環境変数が使われている場合は有効です。

-cd <文字列>

ディレクトリーパスでファイルシステムの接続を分割またはマージします。
接続を複数のルートフォルダーに分割するのに便利です。それをスティッチして複数のファイル保存先にまとめることができます。orig_conという接続を2つの接続に分割する場合は、aフォルダーに基づくa_conが1つで、残りがorig_con接続に残ることになります。
-cd a_con=orig_con:/a

orig_conという接続を2つの接続に分割する場合は、root/aフォルダーに基づいてa_conとなります。
-cd a_con=orig_con:/root/a -

複数の接続をマージして1つにするのに便利です。2つの接続(R1というルートフォルダーを持つC:、およびR2というルートフォルダーを持つB:)を、R1とR2という2つのルートフォルダーを持つ1つのC:接続にマージさせる場合:
-cd C:\=B:\
STRING      

 

ブリッジのマッピング

マッピング情報は利用できません

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。