データシップの制限
一部のリソースの制約により、データシップの最適化の使用が制限されます。ほとんどの制限は、データ タイプの不一致に関連しています。データ タイプの不一致はデータの変換によって処理されますが、さまざまなソースからの特定のデータ タイプは、選択したターゲットと互換性がありません。通常、このようなデータ タイプの不一致は、数値精度で最も顕著です。
次に、データシップの最適化の使用が推奨されないケースのリストを示します。
Microsoft SQL Server
|
bcp ユーティリティで Microsoft SQL Server を使用している場合、BLOB または CLOB データ タイプを使用していると、データ タイプの不一致エラーが発生する可能性があります。
|
Netezza へ
|
Netezza は、BINARY または VARBINARY タイプ (Oracle など) のデータを含むソース テーブルのデータシップ ターゲットにすることはできません。
|
Netezza は、64 KB を超える LONGVARCHAR カラムまたは VARCHAR カラムがあるテーブルのデータシップ ターゲットにすることはできません。一時テーブルの作成に失敗するためです。
|
Netezza がデータシップ ソースである場合、FLOAT または DOUBLE データ タイプは、異なるタイプのターゲットに送信されると値が丸められるため、精度を失う可能性があります。
|
Netezza から Sybase IQ へ
|
Netezza から Sybase IQ へのデータシップでは、NULL 値がゼロに置き換えられます。これにより、データシップが無効になっている場合とは異なるクエリ結果が得られます。
|
Sybase Q または Netezza から Oracle へ
|
Sybase IQ または Netezza データ ソースが Oracle をデータシップ ターゲットとして使用する場合、送信されるテーブルにある末尾のスペースは、Oracle テーブルを含む結果セットでトリミングされます。
|
Sybase IQ から Netezza へ
|
Sybase IQ データ ソースがデータシップ ターゲットとして Netezza を使用する場合、Netezza データベースは結果セットデータにパディングスペース文字を追加するため、データの不一致が発生する可能性があります。
|
Oracle へ
|
Oracle データベースがデータシップ ターゲットで、転送されたデータに UTF-8 でエンコードされた東アジア文字が含まれている場合、カラム長制限の例外が発生する可能性があります。
UTF-16 文字セットを使用する Oracle データベースには、この問題はありません。
|
Sybase IQ へ
|
FLOAT タイプのデータを Sybase IQ データベースに移動する場合、Sybase IQ JDBC ドライバーが FLOAT データ タイプを処理する方法が原因で、データのスケールが失われる可能性があります。
|
Sybase IQ Type4 ドライバー
|
Sybase IQ Type4 ドライバーは、タイム スタンプ カラムの精度を上げ下げします。これにより、精度が失われる可能性があります。この問題を回避するには、Sybase IQ Type2 ドライバーを使用します。
|
Teradata
|
Teradata は、MaxLoadTasks および MaxLoadAWT パラメーターを使用して、同時 FastLoad および FastExport タスクの数を制御します。過剰な FastLoad または FastExport タスクは拒否されます。
|
各 FastLoad または FastExport ジョブのセッションの最大数は、Teradata データベースの AMP の数に制限されます。ほとんどのシナリオでは、8 つのセッションが適切に機能します。
|
Teradata の UNION の実装は SQL 標準に準拠していないため、データが Teradata に送信されたときにデータの不一致が発生する可能性があります。
|
行フェッチサイズが 64 KB を超える場合、Teradata エラーが発生します。この問題の最善の解決策については、Teradata のドキュメントを参照してください。
|
Teradata FastLoad では、ターゲット テーブルが空である必要があります。ターゲットの Teradata テーブルが空でない場合、JDBC を使用してデータをテーブルにロードします。
|
Vertica へ
|
Vertica の場合、BINARY カラムまたは VARBINARY カラムの最大長は 65000 です。
|