オンプレミスデータウェアハウスから Amazon Redshift へのデータの移行 - AWS Schema Conversion Tool

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

オンプレミスデータウェアハウスから Amazon Redshift へのデータの移行

次を使用できます。AWS SCTエージェントを使用して、オンプレミスデータウェアハウスからデータを抽出し、Amazon Redshift に移行できます。エージェントはデータを抽出し、Amazon S3 にデータをアップロードします。大規模な移行の場合は、AWS SnowballEdge デバイス その後、AWS SCTをクリックして、データを Amazon Redshift にコピーします。

Amazon S3 はストレージおよび取得サービスです。Amazon S3 にオブジェクトを保存するには、Amazon S3 バケットに保存するファイルをアップロードします。ファイルをアップロードする際に、オブジェクトだけでなく、いずれのメタデータにも権限を設定することができます。

大規模な移行

大規模なデータ移行には数テラバイトの情報が含まれることがあり、ネットワークのパフォーマンスおよび移行するデータ量によっては、低速になる場合があります。AWS SnowballEdge はAWSサービスを使用して、ネットワークよりも速い速度でクラウドにデータを転送するために使用できるAWSが所有するアプライアンス。アンAWS Snowballエッジデバイスは 100 TB までのデータを保持できます。Snowball では、256 ビットの暗号化、およびデータのセキュリティと完全な保管継続性を確保するための業界標準であるトラステッドプラットフォームモジュール (TPM) を使用しています。AWS SCTと の連携AWS SnowballEdge デバイス

あなたが使用するときAWS SCTとAWS SnowballEdge デバイスを使用する場合、2 段階でデータを移行します。まず、使用するAWS SCTを使用してデータをローカルで処理し、そのデータをAWS SnowballEdge デバイス 次に、デバイスをAWSの使用AWS Snowballエッジプロセス、およびAWSは自動的にデータを Amazon S3 バケットにロードします。次に、データが Amazon S3 で利用できるようになったら、AWS SCT を使用して Amazon Redshift にデータを移行します。データ抽出エージェントは、AWS SCT がクローズしている間もバックグラウンドで使用できます。

次の図は、サポートされるシナリオを示しています。


            抽出エージェントのアーキテクチャ

データ抽出エージェントは、現在、以下のソースデータウェアハウスでサポートされています。

  • Greenplum データベース (バージョン 4.3 以降)

  • Microsoft SQL Server (バージョン 2008 以降)

  • Netezza (バージョン 7.0.3 以降)

  • Oracle (バージョン 10 以降)

  • Teradata (バージョン 13 以降)

  • Vertica (バージョン 7.2.2 以降)

  • Azure SQL データウェアハウス (Azure シナプス)

連邦情報処理標準 (FIPS) のセキュリティ要件に準拠する場合は、Amazon Redshift の FIPS エンドポイントに接続できます。FIPS エンドポイントは、次のAWSリージョン:

  • 米国東部(バージニア北部)リージョン (redshift-fips.us-east-1.amazonaws.com)

  • 米国東部(オハイオ州)リージョン (redshift-fips.us-east-2.amazonaws.com)

  • 米国西部(北カリフォルニア)リージョン (redshift-fips.us-west-1.amazonaws.com)

  • 米国西部(オレゴン)リージョン (redshift-fips.us-west-2.amazonaws.com)

データ抽出エージェントの使用方法については、以下のトピックを参照してください。

Amazon S3 の前提条件設定、およびデータ抽出エージェントのセキュリティ

データ抽出エージェントを使用する前に、Amazon S3 バケット情報を保存し、Secure Sockets Layer (SSL) 信頼ストアとキーストアを設定します。

Amazon S3 設定

エージェントは、データを抽出すると Amazon S3 バケットにアップロードします。続行する前に、認証情報を入力して、[] に接続する必要があります。AWSアカウントと Amazon S3 バケットを使用します。認証情報とバケット情報はグローバルアプリケーション設定のプロファイルに保存してから、AWS SCT プロジェクトに関連付けます。必要に応じて、[Global Settings] を選択して、新しいプロファイルを作成します。詳細については、「保存するAWSのサービスプロファイルAWS SCT」を参照してください。

セキュリティ設定

AWS Schema Conversion Tool と抽出エージェントは、Secure Sockets Layer (SSL) を介して通信できます。SSL を有効にするには、信頼ストアとキーストアを設定します。

抽出エージェントとの安全な通信を設定するには

  1. [AWS Schema Conversion Tool] を開始します。

  2. [Settings] メニューを開き、[Global Settings] を選択します。[Global settings] ダイアログボックスが表示されます。

    次に示されているように、[Security] タブを選択します。

    
                            [Global Settings] ダイアログボックスの [Security] タブ
  3. [Generate Trust and Key Store] または [Select existing Trust and Key Store] を選択します。

    [Generate Trust and Key Store] を選択した場合、信頼ストアとキーストアの名前とパスワードおよび生成されたファイルの場所へのパスを指定します。これらのファイルは、後のステップで使用します。

    [Select existing Trust and Key Store] を選択した場合、信頼ストアおよびキーストアのパスワードとファイル名を指定します。これらのファイルは、後のステップで使用します。

  4. 信頼ストアおよびキーストアを指定した後で、[OK] を選択し、[Global Settings] ダイアログボックスを閉じます。

抽出エージェントをインストールする

AWS Schema Conversion Tool を実行しているコンピュータとは別の、個別のコンピュータに複数の抽出エージェントをインストールすることをお勧めします。

抽出エージェントは現在、次のオペレーティングシステムでサポートされています。

  • macOS

  • Microsoft Windows

  • Red Hat Enterprise Linux (RHEL) 6.0

  • Ubuntu Linux (バージョン 14.04 以降)

以下の手順を使用して、抽出エージェントをインストールします。抽出エージェントをインストールするそれぞれのコンピュータでこの手順を繰り返します。

抽出エージェントをインストールするには

  1. AWS SCT インストーラファイルをまだダウンロードしていない場合、インストール、確認、更新AWS SCT の手順に従い、ダウンロードします。AWS SCT インストーラファイルを含む .zip ファイルには抽出エージェントのインストーラファイルも含まれています。

  2. agents というサブフォルダ内で移行エージェントのインストーラファイルを見つけます。コンピュータのオペレーティングシステムごとに、抽出エージェントをインストールするための正しいファイルは以下のとおりです。

    オペレーティングシステム ファイル名

    macOS

    aws-schema-conversion-tool-extractor-1.0.build-number.dmg

    Microsoft Windows

    aws-schema-conversion-tool-extractor-1.0.build-number.msi

    RHEL

    aws-schema-conversion-tool-extractor-1.0.build-number.x86_64.rpm

    Ubuntu Linux

    aws-schema-conversion-tool-extractor-1.0.build-number.deb

  3. 個別のコンピュータで抽出エージェントをインストールするには、新しいコンピュータにインストーラファイルをコピーします。

  4. インストーラファイルを実行します。次に示すように、オペレーティングシステムの手順を使用します。

    オペレーティングシステム インストール手順

    macOS

    Finderaws-schema-conversion-tool-extractor-1.0.build-number.dmg を開きます。

    aws-schema-conversion-tool-extractor-1.0.build-number.dmgApplications フォルダーにドラッグします。

    Microsoft Windows

    ファイルをダブルクリックしてインストーラを実行します。

    RHEL

    ファイルをダウンロードまたは移動したフォルダーで、次のコマンドを実行します。

    sudo rpm -ivh aws-schema-conversion-tool-extractor-1.0.build-number.x86_64.rpm sudo ./sct-extractor-setup.sh --config

    Ubuntu Linux

    ファイルをダウンロードまたは移動したフォルダーで、次のコマンドを実行します。

    sudo dpkg -i aws-schema-conversion-tool-extractor-1.0.build-number.deb sudo ./sct-extractor-setup.sh --config
  5. ソースデータベースエンジン用 Java Database Connectivity (JDBC) ドライバをインストールします。手順とダウンロードのリンクについては、「必要なデータベースドライバのインストール」を参照してください。ターゲットデータベースエンジンではなく、ソースデータベースエンジン用の手順にのみ従います。

  6. 前の手順で生成した SSL 信頼ストアおよびキーストア (.zip または個別のファイル) をコピーします。新しいコンピュータに .zip ファイルをコピーした場合、新しいコンピュータで、.zip ファイルから個々のファイルを抽出します。

    これらのファイルは、任意の場所に保存できます。ただし、保存先を書き留めておきます。後の手順で、ファイルの保存先をエージェントに指示する必要があります。

次のセクションの手順を実行して、抽出エージェントのインストールを続行します。

抽出エージェントの設定

以下の手順を使用して、抽出エージェントを設定します。抽出エージェントがインストールされている各コンピュータに対してこの手順を繰り返します。

抽出エージェントを設定するには

  • エージェントをインストールした場所から、セットアッププログラムを実行します。RHEL および Ubuntu の場合、ファイルの名前は sct-extractor-setup.sh です。macOS および Microsoft Windows の場合、ファイルの名前は AWS SCT Data Extractor Agent で、ダブルクリックして実行できます。

    セットアッププログラムで情報の入力が求められます。それぞれのプロンプトで、デフォルト値が表示されます。デフォルト値を使用するか、新しい値を入力します。以下の情報を指定します。

    • データウェアハウスエンジン。

    • エージェントがリッスンするポート番号。

    • JDBC ドライバをインストールした場所。

    • 作業フォルダ。抽出されたデータはこの場所のサブフォルダに移動します。作業フォルダは、エージェントからの他のコンピュータにある場合があります。また、単一の作業フォルダを別々のコンピュータの複数のエージェントで共有することもできます。

    • キーストアファイルの場所。

    • キーストアのパスワード。

    • 信頼ストアファイルの場所。

    • 信頼ストアのパスワード。

セットアッププログラムは抽出エージェント用の設定ファイルを更新します。設定ファイルは settings.properties という名前で、抽出エージェントをインストールした場所にあります。以下に示すのは、サンプルの設定ファイルです。

$ cat settings.properties #extractor.start.fetch.size=20000 #extractor.out.file.size=10485760 #extractor.source.connection.pool.size=20 #extractor.source.connection.pool.min.evictable.idle.time.millis=30000 #extractor.extracting.thread.pool.size=10 vendor=TERADATA driver.jars=/usr/share/lib/jdbc/terajdbc4.jar port=8192 redshift.driver.jars=/usr/share/lib/jdbc/RedshiftJDBC42-1.2.43.1067.jar working.folder=/data/sct extractor.private.folder=/home/ubuntu ssl.option=OFF

専用のコピーエージェントを使用した抽出エージェントのインストールと構成

共有ストレージと専用のコピーエージェントを持つ構成に、抽出エージェントをインストールできます。このシナリオを以下に図で示します。


                    専用コピー・エージェント構成を持つエクストラクタ・エージェント

この設定は、ソースデータベースサーバーが最大 120 の接続をサポートし、ネットワークに十分なストレージが接続されている場合に便利です。専用のコピーエージェントを持つ抽出エージェントを構成するには、次の手順を使用します。

抽出エージェントと専用のコピーエージェントをインストールして構成するには

  1. すべての抽出エージェントの作業ディレクトリが、共有ストレージ上の同じフォルダを使用していることを確認します。

  2. 抽出エージェントをインストールするには、抽出エージェントをインストールする

  3. 次の手順に従って、抽出エージェントを構成します。抽出エージェントの設定と同じですが、ソース JDBC ドライバーのみを指定します。

  4. 専用のコピーエージェントを設定するには、「」の手順に従います。抽出エージェントの設定と同じですが、Amazon Redshift JDBC ドライバーのみを指定します。

抽出エージェントの開始

以下の手順を使用して、抽出エージェントを開始します。抽出エージェントがインストールされている各コンピュータに対してこの手順を繰り返します。

抽出エージェントはリスナーとして機能します。この手順でエージェントを開始すると、エージェントは手順をリッスンし始めます。後のセクションで、データウェアハウスからデータを抽出する手順をエージェントに送信します。

抽出エージェントを開始するには

  • 抽出エージェントがインストールされているコンピュータで、次に示す、お使いのオペレーティングシステム用のコマンドを実行します。

    オペレーティングシステム 開始コマンド

    macOS

    StartAgent.command ファイルを実行します。

    Microsoft Windows

    StartAgent.bat バッチファイルをダブルクリックします。

    RHEL

    エージェントをインストールしたフォルダへのパスで以下のコマンドを実行します。

    sudo initctl start sct-extractor

    Ubuntu Linux

    エージェントをインストールしたフォルダへのパスで以下のコマンドを実行します。Ubuntu のバージョンに適切なコマンドを使用します。

    Ubuntu 14.04: sudo initctl start sct-extractor

    Ubuntu 15.04以降: sudo systemctl start sct-extractor

エージェントの状態を確認するには、同じコマンドを実行します。ただし、startstatus に置き換えます。

エージェントを停止するには、同じコマンドを実行します。ただし、startstop に置き換えます。

抽出エージェントをAWS Schema Conversion Tool

AWS SCT を使用して抽出エージェントを管理します。抽出エージェントはリスナーとして機能します。AWS SCT から手順を受け取る場合、データウェアハウスからデータを抽出します。

次の手順に従い、AWS SCT プロジェクトに抽出エージェントを登録します。

抽出エージェントを登録するには

  1. [AWS Schema Conversion Tool] を開始して、プロジェクトを開きます。

  2. [View] メニューを開き、[Data Migration View] を選択します。[Agents] タブが表示されます。次に示すように、登録済みのエージェントがある場合、タブの上部にあるグリッドに表示されます。

    
                        エージェントグリッド
  3. [Register] を選択します。[New Agent Registration (新しいエージェントの登録)] ダイアログボックスが表示されます。

    注記

    AWS SCT プロジェクトにエージェントを登録したら、異なるプロジェクトには同じエージェントを登録できません。AWS SCT プロジェクトでエージェントが不要になった場合は、登録解除できます。登録解除後に、別のプロジェクトに登録できます。

  4. [New Agent Registration] ダイアログボックスに情報を入力します。

    1. [Description] にエージェントの説明を入力します。

    2. [Host Name] に、エージェントのコンピューターのホスト名または IP アドレスを入力します。

    3. [Port] で、エージェントがリッスンするポート番号を入力します。

    4. [Register (登録)] を選択して、AWS SCT プロジェクトにエージェントを登録します。

  5. 前述のステップを繰り返して、AWS SCT プロジェクトに複数のエージェントを登録します。

の情報の非表示と回復AWS SCTエージェント

アンAWS SCTエージェントは、大量の情報を暗号化します。たとえば、ユーザーのキー信頼ストアのパスワード、データベースアカウント、AWSアカウント情報、および同様の項目が表示されます。これは、seed.dat と呼ばれる特別なファイルを使用して実行されます。デフォルトでは、エージェントはこのエージェントを最初に設定するユーザーの作業フォルダで、このファイルを作成します。

さまざまなユーザーがエージェントを設定および実行できるため、 へのパスは seed.dat{extractor.private.folder} ファイルの settings.properties パラメータに保存されます。エージェントが開始すると、このパスを使用して、作用するデータベース用のキー信頼ストア情報にアクセスするための seed.dat ファイルを見つけます。

以下の場合に、エージェントが保存したパスワードの回復が必要になることがあります。

  • ユーザーが seed.dat ファイルを失い、AWS SCT エージェントの場所とポートが変更されなかった場合。

  • ユーザーが seed.dat ファイルを失い、AWS SCT エージェントの場所とポートが変更された場合。この場合、通常は変更が発生します。これは、エージェントが別のホストまたはポートに移行され、seed.dat ファイル内の情報が無効になっているためです。

これらの場合、エージェントが SSL を使用しないで開始されたときは、エージェントは開始され、以前に作成したエージェントストレージにアクセスできます。次に、復元の待機状態になります。

ただし、これらの場合、エージェントが SSL を使用して開始されたときは、エージェントを再起動することはできません。これは、エージェントが settings.properties ファイルに保存された証明書のパスワードを復号できないためです。このような種類のスタートアップでは、エージェントは起動に失敗します。次のようなエラーがログに記録されます。「SSL モードを有効にしてエージェントを開始できませんでした。エージェントを再設定してください。理由: キーストアのパスワードが正しくありません。」

この問題を修正するには、新しいエージェントを作成し、SSL 証明書にアクセスするための既存のパスワードを使用するようにエージェントを設定します。そのためには、次の手順を使用します。

この手順を実行すると、エージェントは実行され、回復を待機中 状態になります。必要なパスワードを AWS SCT 自動的にエージェントに送信し、回復を待機中 状態になります。エージェントがパスワードを取得すると、任意のタスクを再開できます。それ以上のユーザーアクションは、[] で必要ありません。AWS SCTSide.

エージェントを再設定し、SSL 証明書にアクセスするためのパスワードを復元するには

  1. 新しい AWS SCT エージェントをインストールし、設定を実行します。

  2. agent.name ファイルの instance.properties プロパティを、ストレージが作成されたエージェントの名前に変更し、新しいエージェントが既存のエージェントストレージに対して動作できるようにします。

    instance.properties ファイルは、エージェントのプライベートフォルダに保存されます。このフォルダは次の命名規則を使用して名前が付けられます。{output.folder}\dmt\{hostName}_{portNumber}\

  3. {output.folder} の名前を、前のエージェントの出力フォルダの名前に変更します。

    この時点で、AWS SCT はまだ古いホストとポートで古いエクストラクタへのアクセスを試みています。その結果、アクセス不可能なエクストラクタは、FAILED ステータスになります。次に、ホストおよびポートを変更できます。

  4. 古いエージェントのホスト、ポート、またはその両方を変更します。そのためには、Modify コマンドを使用して、リクエストのフローを新しいエージェントにリダイレクトします。

AWS SCT が新しいエージェントに ping を実行できる場合、AWS SCT はエージェントから 回復を待機中 状態を受け取ります。その後、AWS SCT は自動的にエージェントのパスワードを回復します。

エージェントストレージを操作する各エージェントは、storage.lck にある {output.folder}\{agentName}\storage\ という特別なファイルを更新します。このファイルには、エージェントのネットワーク ID と、ストレージがロックされるまでの時間が含まれています。エージェントがエージェントストレージを操作する場合、storage.lck ファイルを更新し、ストレージのリースを 5 分ごとに 10 分延長します。リースの有効期限が切れるまでは、他のインスタンスはこのエージェントストレージを操作できません。

データ抽出フィルタを作成するにはAWS SCT

AWS Schema Conversion Tool でデータを抽出する前に、抽出するデータの量を減らすフィルタを設定できます。WHERE 句を使用して抽出するデータを減らすことで、データ抽出フィルタを作成できます。たとえば、単一のテーブルからデータを選択する WHERE 句を記述できます。

データ抽出フィルタを作成し、プロジェクトの一部としてフィルタを保存できます。プロジェクトを開いた状態で、以下の手順でデータ抽出フィルタを作成します。

データ抽出フィルタを作成するには

  1. [Settings] メニューの [Mapping Rules] を選択します。[Mapping Rules] ダイアログボックスが表示されます。上部のペインには変換ルールが含まれ、下のペインにはフィルタリングルールが含まれています。

  2. [Filtering Rules] ペインで、[Add new rule] を選択します。

  3. フィルタを設定します。

    1. [Name] に、フィルタの名前を入力します。

    2. [Where schema name like] に、スキーマに適用するフィルタを入力します。このフィルタで、WHERE 句の評価には LIKE 句が使用されます。正確な名前を入力して特定のスキーマを選択するか、パターンを入力して複数のスキーマを選択できます。

    3. [table name like] に、テーブルに適用するフィルタを入力します。このフィルタで、WHERE 句の評価には LIKE 句が使用されます。正確な名前を入力して特定のテーブルを選択するか、パターンを入力して複数のテーブルを選択できます。

    4. [Where clause] に、データをフィルタする WHERE 句を入力します。

  4. フィルタを設定したら、[Save] を選択してフィルタを保存します。変更をキャンセルする場合は、[Cancel] を選択します。

  5. フィルタの追加、編集、削除が完了したら、[Save All] を選択してすべての変更を保存し、[Close] を選択します。

フィルタを削除せずに無効にするには、切り替えアイコンを使用します。既存のフィルタを複製するには、コピーアイコンを使用します。既存のフィルタを削除するには、削除アイコンを使用します。フィルタへの変更を保存するには、[Save All] を選択します。

現在のプロジェクト設定から抽出およびコピー設定を変更する

からAWS SCT 現在のプロジェクト設定ウィンドウでは、データ抽出エージェントと Amazon Redshift COPY コマンドに影響する設定を選択できます。

[] を選択する場合、データの移行タブにある現在のプロジェクト設定ウィンドウ、抽出の設定および設定をコピーする次のスクリーンショットに示すように、[] が表示されます。


                    データ移行の抽出およびコピー設定オプション

選択できる抽出ツール設定オプションは次のとおりです。

  • 圧縮形式またはGZIP

  • 区切り文字文字など、|(パイプシンボル) をクリックします。

  • アンLOB の抽出オプション。

  • アンS3 バケットの LOB フォルダオプション。

  • A分類方法オプション。推奨事項最初の失敗後にソートを使用する

  • As3へのアップロード後にファイルをローカルに保持するオプション。

選択できるコピー設定オプションは次のとおりです。

  • A最大エラーカウント設定. デフォルトは 0 です。

  • -無効な UTF-8 文字を置換するなどの文字を識別することによって、?

  • A文字列としての NULL 値オプションは、NULL として指定された文字列フィールドをロードします。

  • -空をNULL値として使用するオプション。空白のフィールドを NULL としてロードするデフォルトの動作。

  • -TRUNCATEオプションは、VARCHAR および CHAR データ型の列、およびサイズが 4 MB 以下の行にのみ適用されます。

  • -自動圧縮オプションは、コピー操作中に圧縮エンコードを自動的に適用するかどうかを制御します。

を使用して移行前にデータをソートするにはAWS SCT

AWS SCT で移行前にデータをソートすることには、いくつかの利点があります。最初にデータをソートすると、障害が発生した場合に、AWS SCT は最後に保存した個所から抽出エージェントを再起動できます。また、Amazon Redshift にデータを移行する場合、最初にデータをソートすると、AWS SCTは、データを Amazon Redshift にすばやく挿入できます。

このような利点は、AWS SCT でデータ抽出クエリを作成する方法と関係します。AWS SCT は、これらのクエリで DENSE_RANK 分析関数を使用できます。ただし、DENSE_RANK は抽出されたデータセットのソートに多くの時間とサーバーリソースを使用するため、AWS SCT では DENSE_RANK を使わずに済む場合は使用しません。

AWS SCT を使用して移行前にデータをソートするには

  1. AWS SCT プロジェクトを開きます。

  2. オブジェクトのコンテキスト (右クリック) メニューを開き、[Create Local Task] を選択します。

  3. [Advanced] タブを選択し、[Sorting Strategy] で以下のいずれかのオプションを選択します。

    • ソートを使用しない— 抽出エージェントは DENSE_RANK 分析関数を使用せず、障害が発生した場合は最初からやり直します。

    • 可能であればソートを使用する— テーブルにプライマリキーまたは一意の制約事項がある場合、抽出エージェントは DENSE_RANK を使用します。

    • 最初の失敗後にソートを使用する (推奨)— 抽出エージェントは、まず DENSE_RANK を使用せずにデータを取得しようとします。最初の試行が失敗すると、抽出エージェントは DENSE_RANK を使用してクエリを再構築し、障害発生時の場所を保持します。

    
                        [Global Settings] ダイアログボックスの [Security] タブ
  4. 以下で説明するように追加のパラメータを設定し、[Create] を選択してデータ抽出タスクを作成します。

の作成、実行、および監視AWS SCTデータ抽出タスク

データ抽出タスクを作成、実行、モニタリングするには、以下の手順を使用します。

エージェントにタスクを割り当て、データを移行するには

  1. AWS Schema Conversion Tool で、スキーマを変換した後に、プロジェクトの左側のパネルから 1 つ以上のテーブルを選択します。

    すべてのテーブルを選択することもできますが、パフォーマンス上の理由からそうしないことをお勧めします。データウェアハウスのテーブルのサイズに基づいて、複数のテーブルに複数のタスクを作成することをお勧めします。

  2. 各テーブルのコンテキスト (右クリック) メニューを開き、[Create Task] を選択します。次に示すように、[Create Local Task] ダイアログボックスが開きます。

    
                        タスクダイアログボックス
  3. [Task Name] に、タスクの名前を入力します。

  4. [Migration Mode] で、以下のいずれかを選択します。

    • Extract Only— データを抽出し、データをローカルの作業フォルダに保存します。

    • 抽出およびアップロード— データを抽出し、Amazon S3 にアップロードします。

    • 抽出、アップロード、およびコピー— データを抽出し、Amazon S3 にデータをアップロードして、Amazon Redshift データウェアハウスにコピーします。

  5. ラージオブジェクトを抽出するには、[Extract LOBs] を選択します。ラージオブジェクトを抽出する必要がない場合は、このチェックボックスをオフにします。オフにすると、抽出するデータの量が減ります。

  6. タスクの詳細情報を表示するには、[Enable Task Logging] を選択します。タスクログを使用して問題をデバッグできます。

    タスクのログ記録を有効にする場合は、表示する詳細レベルを選択します。レベルは次のとおりです。各レベルには、前のレベルのすべてのメッセージが含まれます。

    • ERROR— 最小量の詳細。

    • WARNING

    • INFO

    • DEBUG

    • TRACE— 最大量の詳細。

  7. 選択Test タスクを使用して、作業フォルダ、Amazon S3 バケット、Amazon Redshift データウェアハウスに接続できることを確認します。検証は、選択した移行モードによって異なります。

  8. 作成を選択して、タスクを作成します。

  9. 前述の手順を繰り返して、移行するすべてのデータに対してタスクを作成します。

タスクを実行およびモニタリングするには

  1. [表示] の [Data Migration View (データ移行ビュー)] を選択します。[Agents] タブが表示されます。

  2. [Tasks] タブを選択します。タスクは、次に示すように上部にあるグリッドに表示されます。タスクのステータスは上部グリッドで確認できます。サブタスクのステータスは下部グリッドで確認できます。

    
                        タスクのグリッド
  3. 上部グリッドのタスクを選択して展開します。選択した移行モードに応じて、タスクは [Extract]、[Upload]、および [Copy] に分類されます。

  4. タスクの [Start] を選択してタスクを開始します。作業中に、タスクのステータスをモニタリングできます。サブタスクは並行して実行されます。抽出、アップロード、およびコピーも並行して実行されます。

  5. タスクの設定時にログ記録を有効にした場合は、ログを表示できます。

    1. [Download Log] を選択します。ログファイルを含むフォルダ名を示すメッセージが表示されます。メッセージを閉じます。

    2. [Task details] タブにリンクが表示されます。リンクを選択すると、ログファイルが含まれたフォルダが開きます。

AWS SCT を閉じることができます。エージェントとタスクは継続して実行されます。後で AWS SCT を再度開き、タスクのステータスを確認したり、タスクのログを表示したりできます。

書き出しと読み込みを使用して、データ書き出しタスクをローカルディスクに保存し、同じプロジェクトまたは別のプロジェクトに復元できます。タスクを書き出すには、プロジェクト内に少なくとも 1 つの抽出タスクが作成されていることを確認します。1 つの抽出タスクをインポートすることも、プロジェクトで作成されたすべてのタスクをインポートすることもできます。

抽出タスクをエクスポートすると、AWS SCTは、別個の.xmlファイルを削除します。-.xmlファイルには、タスクのプロパティ、説明、サブタスクなど、タスクのメタデータ情報が格納されます。-.xmlファイルには、抽出タスクの処理に関する情報が含まれていません。タスクをインポートすると、次のような情報が再作成されます。

  • タスクの進行状況

  • サブタスクとステージの状態

  • サブタスクとステージによる抽出エージェントの分布

  • タスクおよびサブタスク ID

  • タスク名

  • AWSプロファイルアクセスキーとシークレットキー

のエクスポートとインポートAWS SCTデータ抽出タスク

あるプロジェクトから既存のタスクをすばやく保存し、別のプロジェクト(または同じプロジェクト)に復元するには、AWS SCTエクスポートおよびインポート。データ抽出タスクをエクスポートおよびインポートするには、以下の手順を使用します。

データ書き出しタスクをエクスポートおよびインポートするには

  1. [表示] の [Data Migration View (データ移行ビュー)] を選択します。[Agents] タブが表示されます。

  2. [Tasks] タブを選択します。表示されるグリッドにタスクが一覧表示されます。

  3. タスク一覧の下の右下隅にある 3 つの縦に揃えられたドット (省略記号アイコン) を選択します。

  4. 選択エクスポートタスクポップアップメニューから。

  5. 目的のフォルダを選択します。AWS SCTをクリックして、タスクのエクスポートを配置します。.xmlファイルを開きます。

    AWS SCTは、ファイル名形式がTASK-DESCRIPTION_TASK-ID.xml

  6. タスクのリストの下の右下にある 3 つの縦に並んだドット (省略記号アイコン) を選択します。

  7. 選択インポートタスクポップアップメニューから。

    抽出タスクは、ソースデータベースに接続されているプロジェクトにインポートできます。また、プロジェクトには少なくとも 1 つのアクティブな登録済み抽出エージェントがあります。

  8. 選択.xmlファイルで、エクスポートした抽出タスクを選択します。

    AWS SCTは、ファイルから抽出タスクのパラメータを取得し、タスクを作成し、抽出エージェントにタスクを追加します。

  9. これらの手順を繰り返して、追加のデータ書き出しタスクをエクスポートおよびインポートします。

このプロセスの最後に、エクスポートとインポートが完了し、データ書き出しタスクを使用できるようになります。

を使用したデータ書き出しAWS SnowballEdge デバイス

使用するプロセスAWS SCTおよびAWS Snowballエッジにはいくつかのステップがあります。移行にはローカルタスクが含まれます。AWS SCTデータ抽出エージェントを使用して、データをAWS Snowballエッジデバイス、次に中間アクションAWSからデータをコピーするAWS Snowballエッジデバイスから Amazon S3 バケットに接続します。AWS SCT によって Amazon S3 バケットから Amazon Redshift にデータがロードされることでプロセスが完了します。

この概要に続くセクションでは、これらの各タスクについて、詳しいガイドを示します。手順は、AWS SCT がインストールされており、データ抽出エージェントが専用マシンで設定され登録されていることを前提としています。

次の手順は、ローカルデータストアからAWSの使用AWS SnowballEdge です。

  1. を作成するAWS Snowballエッジジョブは、AWS Snowballconsole. 詳細については、「」を参照してください。インポートジョブの作成()AWS Snowballドキュメント内) を参照してください。

  2. UnlockAWS Snowballローカルの専用 Linux マシンを使用するエッジデバイス。

  3. 登録されたデータ抽出エージェントを使用して、AWS SCT で新しいプロジェクトを作成します。

  4. ソースデータベース用のデータベースドライバーを、データエクストラクタをインストールした専用マシンにインストールします。

  5. Amazon S3 バケットが使用するアクセス許可を作成および設定します。

  6. 作成ローカルおよび DMS タスクがAWS SCT。

  7. を実行し、モニタリングするローカルおよび DMS タスクがAWS SCT。

  8. を実行AWS SCTタスクと進捗状況のモニタリングAWS SCT。

を使用してデータを移行するためのステップバイステップ手順AWS SCTおよびAWS SnowballEdge

以下のセクションでは、移行ステップに関する詳細情報を提供します。

ステップ 1: を作成するAWS SnowballEdge ジョブ

を作成するAWS Snowballジョブには、「」セクションで説明されているステップを実行します。の使用開始AWS SnowballEdge: 最初の仕事()AWS Snowballドキュメント内) を参照してください。

ステップ 2: UnlockAWS SnowballEdge デバイス

インストールしたマシンから、Snowball Edge デバイスをロック解除して認証情報を提供するコマンドを実行します。AWS DMSエージェント このようにして、確実にAWS DMSエージェントコールはAWS SnowballEdge デバイス ロック解除の詳細については、「」を参照してください。AWS SnowballEdge デバイスUnlockAWS SnowballEdge

たとえば、次のコマンドでは、デバイスで使用されている Amazon S3 バケットが一覧表示されます。

aws s3 ls s3://<bucket-name> --profile <Snowball Edge profile> --endpoint http://<Snowball IP>:8080 --recursive

ステップ 3: 新しい を作成するAWS SCTプロジェクト

次に、新しい AWS SCT プロジェクトを作成します。

AWS SCT で新しいプロジェクトを作成するには

  1. を起動AWS SCTを選択し、新しいプロジェクトforファイル。[新しいプロジェクト] ダイアログボックスが表示されます。

  2. 以下のプロジェクト情報を追加します。

    パラメーター 操作

    プロジェクト名

    コンピューターにローカルに保存されているプロジェクトの名前を入力します。

    場所

    ローカルプロジェクトファイルの場所を入力します。

    ラジオボタンから、データウェアハウス (OLAP)

    Source DB Engine

    ソースデータストアを選択します。

    Target DB Engine

    ターゲットデータストアを選択します。

  3. [OK] を選択して、AWS SCT プロジェクトを作成します。

  4. (オプション) 接続をテストします。

ステップ 4: ソースデータベースドライバをインストールし、AWS DMSエージェントを Linux コンピューターにインストールする

移行を成功させるには、AWS DMSエージェントは、ソースデータベースに接続できる必要があります。これを可能にするには、ソースデータベース用のデータベースドライバーをインストールします。必要なドライバーは、データベースによって異なります。

を再起動するにはAWS DMSエージェントをインストールした後、作業ディレクトリを<product_dir>/binをクリックし、各ソースデータベースに対して以下に示すステップを使用します。

cd <product_dir>/bin ./arep.ctl stop ./arep.ctl start
Oracle にインストールするには

Oracle Instant Client for Linux (x86-64) バージョン 11.2.0.3.0 以降をインストールします。

さらに、まだシステムに含まれていない場合は、$ORACLE_HOME\ lib ディレクトリにシンボリックリンクを作成する必要があります。このリンクは libclntsh.so という名前で、このファイルの特定のバージョンを指す必要があります。たとえば、Oracle 12c クライアントでは次を使用します。

lrwxrwxrwx 1 oracle oracle 63 Oct 2 14:16 libclntsh.so -> /u01/app/oracle/home/lib/libclntsh.so.12.1

さらに、LD_LIBRARY_PATH 環境変数には Oracle lib ディレクトリを付加し、インストールの lib フォルダの site_arep_login.sh スクリプトに追加する必要があります。このスクリプトが存在しない場合は追加します。

vi cat <product dir>/bin/site_arep_login.sh
export ORACLE_HOME=/usr/lib/oracle/12.2/client64; export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
Microsoft SQL Server にインストールするには

Microsoft ODBC ドライバーをインストールします。

site_arep_login.sh を次のコードで更新します。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/microsoft/msodbcsql/lib64/

Simba ODBC ドライバー

Microsoft ODBC ドライバーをインストールします。

simba.sqlserverodbc.ini ファイルを次のように編集します。

DriverManagerEncoding=UTF-16 ODBCInstLib=libodbcinst.so
SAP Sybase にインストールするには

SAP Sybase ASE ODBC 64 ビットクライアントがインストールされている必要があります。

インストールディレクトリが /opt/sap の場合は、site_arep_login.sh を更新します。

export SYBASE_HOME=/opt/sap export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SYBASE_HOME/ DataAccess64/ODBC/lib:$SYBASE_HOME/DataAccess/ODBC/ lib:$SYBASE_HOME/OCS-16_0/lib:$SYBASE_HOME/OCS-16_0/ lib3p64:$SYBASE_HOME/OCS-16_0/lib3p

/etc/odbcinst.ini には次のエントリが含まれている必要があります。

[Sybase] Driver=/opt/sap/DataAccess64/ODBC/lib/libsybdrvodb.so Description=Sybase ODBC driver
MySQL にインストールするには

MySQL Connector/ODBC for Linux バージョン 5.2.6 以降をインストールします。

次の例のように、/etc/odbcinst.ini ファイルに MySQL 用のエントリが含まれていることを確認します。

[MySQL ODBC 5.2.6 Unicode Driver] Driver = /usr/lib64/libmyodbc5w.so UsageCount = 1
PostgreSQL にインストールするには

postgresql94-9.4.4-1PGDG.<OS Version>.x86_64.rpm をインストールします。これは、psql 実行可能ファイルを含むパッケージです。

たとえば、Red Hat 7 に必要なのは、postgresql94-9.4.4-1PGDG.rhel7.x86_64.rpm パッケージです。

Linux 用の ODBC ドライバー postgresql94-odbc-09.03.0400-1PGDG.<OS version>.x86_64 以降をインストールします。<OS version> は、エージェントマシーンの OS です。

たとえば、Red Hat 7 に必要なのは、postgresql94-odbc-09.03.0400-1PGDG.rhel7.x86_64 クライアントです。

次の例のように、/etc/odbcinst.ini ファイルに PostgreSQL 用のエントリが含まれていることを確認します。

[PostgreSQL] Description = PostgreSQL ODBC driver Driver = /usr/pgsql-9.4/lib/psqlodbc.so Setup = /usr/pgsql-9.4/lib/psqlodbcw.so Debug = 0 CommLog = 1 UsageCount = 2

ステップ 5: 設定AWS SCTAmazon S3 バケットにアクセスする

Amazon S3 バケットの設定の詳細については、「」を参照してください。Amazon S3 バケットの使用Amazon S3 のドキュメントを参照してください。

ステップ 6: ローカルを作成するAWS DMSタスク

次に、エンドツーエンドの移行タスクであるタスクを作成します。このタスクには 2 つのサブタスクが含まれます。1 つのサブタスクで、ソースデータベースからAWS SnowballEdge アプライアンス もう 1 つのサブタスクはアプライアンスが Amazon S3 バケットにロードするデータを受け取り、ターゲットデータベースに移行します。

エンドツーエンドの移行タスクを作成するには

  1. AWS SCT を開始し、[表示]、データベース移行表示 (Local & DMS)] の順に選択します。

    
                            [View] > [Database Migration View (ローカルおよび DMS
  2. ソースデータベースのスキーマを表示する左のパネルで、移行するスキーマオブジェクトを選択します。オブジェクトのコンテキスト (右クリック) メニューを開き、[Create Local & DMS Task] を選択します。

    
                             AWSDatabase Migration Service とAWS SnowballEdge プロセス
  3. タスク情報を追加します。

    パラメーター 操作

    タスク名

    タスクの名前を入力します。

    Agent

    DMS Agent (DMS エージェント) を選択します。

    レプリケーションインスタンス

    使用する AWS DMS レプリケーションインスタンスを選択します。

    移行タイプ

    目的の移行のタイプを選択します。

    Migrate existing data (既存データの移行) を選択して、選択したスキーマの内容を移行します。このプロセスは、全ロードと呼ばれます。AWS DMS。

    Migrate existing data and replicate ongoing changes (既存データを移行して継続的な変更をレプリケートする) を選択し、選択されたスキーマのコンテンツを移行して、データベースへの継続的な変更をすべてキャプチャします。AWS DMS では、このプロセスは全ロードおよび CDC と呼ばれます。

    ターゲットテーブル作成モード

    使用する準備モードを選択します。

    切り捨て - テーブルは、テーブルのメタデータに影響を与えないで切り捨てられます。

    ターゲット上のテーブルを削除 - テーブルは削除され、代わりに新しいテーブルが作成されます。

    何もしない - ターゲットテーブルのデータとメタデータは変更されません。

    IAM ロール

    Amazon S3 バケットおよびターゲットデータベースにアクセスする権限がある、あらかじめ定義された IAM ロールを選択します。Amazon S3 バケットにアクセスするために必要なアクセス権限の詳細については、「Amazon S3 設定」を参照してください。

    ログ記録

    選択Enable (Gems の有効化)Amazon CloudWatch で移行のログを作成します。このサービスについては料金が発生します。Amazon CloudWatch の詳細については、「」を参照してください。CloudWatch の仕組み

    説明

    タスクの説明を入力します。

    Snowball の使用

    Snowball を使用するには、このチェックボックスをオンにします。

    ジョブ名

    作成した AWS Snowball のジョブ名を選択します。

    Snowball IP

    AWS Snowball アプライアンスの IP アドレスを入力します。

    ポート

    AWS Snowball アプライアンスのポートの値を入力します。

    ローカル Amazon S3 アクセスキー

    「」と入力します。AWS移行用のアカウントのアクセスキー。

    ローカル Amazon S3 シークレットキー

    「」と入力します。AWSシークレットキーで、移行用のアカウントを使用します。

  4. 作成を選択して、タスクを作成します。

ステップ 7: の実行とモニタリングAWS SCTタスク

エンドポイントへのすべての接続に成功したら、ローカルの DMS タスクを開始できます。これは、ローカルタスクのすべての接続を意味します。これには、AWS DMSエージェントをソースデータベース、ステージング Amazon S3 バケット、およびAWS Snowballデバイスへの接続を含む DMS タスクへの接続や、ステージング Amazon S3 バケットからAWS。

監視するには、AWS DMSエージェントログの選択方法Show Log。ログ詳細には、エージェントサーバー (Agent Log) ログおよびローカル実行タスク (Task Log) ログが含まれます。エンドポイント接続はサーバーによって行われる (ローカルタスクは実行されず、タスクログがない) ため、接続の問題は [Agent Log] タブで一覧表示されます。


                     ローカルタスクが完了し、2 番目のタスクを待機します

データ書き出しタスク出力

移行タスクが完了すると、データは準備ができています。次の情報を使用して、選択した移行モードと、データの場所に応じて処理方法を決定します。

移行モード データの場所

抽出、アップロード、およびコピー

データはすでに Amazon Redshift データウェアハウスに存在しています。データがそこにあることを確認し、使用を開始できます。詳細については、「」を参照してください。クライアントツールおよびコードからクラスターに接続する

抽出およびアップロード

抽出エージェントにより、データはファイルとして Amazon S3 バケットに保存されました。Amazon Redshift の COPY コマンドを使用して、データを Amazon Redshift にロードできます。詳細については、「」を参照してください。Amazon S3 からのデータのロードAmazon Redshift。

設定した抽出タスクに対応する複数のフォルダが Amazon S3 バケットにあります。データを Amazon Redshift にロードするときは、各タスクによって作成されたマニフェストファイルの名前を指定します。マニフェストファイルは、次に示すように、S3 バケットのタスクフォルダに表示されます。


                                    S3 バケットのファイルリスト

Extract Only

抽出エージェントにより、データはファイルとして作業フォルダに保存されました。手動で Amazon S3 バケットにデータをコピーし、の手順に従います。抽出およびアップロード

を使用した仮想パーティション分割の使用AWS Schema Conversion Tool

通常、パーティション分割されていない大きなテーブルを管理する最適な方法は、サブタスクを作成することです。これにより、フィルタリング規則を使用してテーブルデータの仮想パーティションを作成します。AWS SCT では、移行済みデータの仮想パーティションを作成できます。データ型に対応した 3 つのパーティションタイプがあります。

  • RANGE パーティションタイプは、数値データ型、日付/時刻データ型に対応します。

  • LIST パーティションタイプは、数値データ型、文字データ型、日付/時刻データ型に対応します。

  • DATE AUTO SPLIT パーティションタイプは、数値データ型、日付/時刻データ型に対応します。

AWS SCT は、パーティションの作成で指定した値を検証します。たとえば、NUMERIC データ型を使用して列のパーティション分割をしようとして、別のデータ型の値を指定すると、AWS SCT はエラーをスローします。

また、AWS SCTを使用して、Netezza から Amazon Redshift にデータを変換する場合は、ネイティブの Netezza パーティション設定を使用して、大きなテーブルの移行を管理できます。詳細については、「ネイティブ Netezza パーティショニングの使用」を参照してください。

仮想パーティション作成時の制限

仮想パーティションの作成に伴う制限は以下のとおりです。

  • 仮想パーティション分割を使用できるのは、パーティション分割されていないテーブルに対してのみです。

  • 仮想パーティション分割は、データ移行ビューでのみ使用できます。

  • 仮想パーティション分割では、UNION ALL VIEW オプションを使用できません。

RANGE パーティションタイプ

RANGE パーティションタイプは、数値データ型と日付/時刻データ型の列値の範囲に基づいてデータをパーティション分割します。このパーティションタイプによって WHERE 句が作成されます。ユーザーはパーティションごとに値の範囲を指定します。パーティション分割した列の値のリストを指定するには、[] を使用します。[値]ボックスに移動するとそのように表示されます。値の情報は .csv ファイルを使用してロードできます。

RANGE パーティションタイプは、パーティション値の両端にデフォルトのパーティションを作成します。これらのデフォルトのパーティションは、指定されたパーティション値よりも小さいか大きいすべてのデータをキャッチします。

たとえば、指定した値の範囲に基づいて複数のパーティションを作成できます。次の例では、LO_TAX のパーティション分割値を指定して複数のパーティションを作成しています。

Partition1: WHERE LO_TAX <= 10000.9 Partition2: WHERE LO_TAX > 10000.9 AND LO_TAX <= 15005.5 Partition3: WHERE LO_TAX > 15005.5 AND LO_TAX <= 25005.95

RANGE 仮想パーティションを作成するには

  1. AWS SCT アプリケーションを開きます。

  2. [Data Migration View] モードを選択します。

  3. 仮想パーティション分割を設定するテーブルを選択します。テーブルのコンテキスト (右クリック) メニューを開き、[Add Virtual Partitioning] を選択します。

  4. [Add Virtual Partitioning] ダイアログボックスで、以下のように情報を入力します。

    オプション アクション

    Partition Type

    [RANGE] を選択します。選択したタイプに応じてダイアログボックスの UI が変わります。

    列名

    パーティション分割する列を選択します。

    Column Type

    列の値のデータ型を選択します。

    新しい値を追加するために、[New Value] ボックスに各値を入力し、プラス記号を選択して値を追加します。

    Load From File

    (オプション) パーティション値を含める .csv ファイルの名前を入力します。

  5. [OK] を選択します。

LIST パーティションタイプ

LIST パーティションタイプは、数値データ型、文字データ型、日付/時刻データ型の列値に基づいてデータをパーティション分割します。このパーティションタイプによって WHERE 句が作成されます。ユーザーはパーティションごとに値を指定します。パーティション分割した列の値のリストを指定するには、[] を使用します。[値]ボックスに移動するとそのように表示されます。値の情報は .csv ファイルを使用してロードできます。

たとえば、指定した値に基づいて複数のパーティションを作成できます。次の例では、LO_ORDERKEY のパーティション分割値を指定して複数のパーティションを作成しています。

Partition1: WHERE LO_ORDERKEY = 1 Partition2: WHERE LO_ORDERKEY = 2 Partition3: WHERE LO_ORDERKEY = 3 … PartitionN: WHERE LO_ORDERKEY = USER_VALUE_N

指定した値の範囲に含まれない値のデフォルトパーティションを作成することもできます。

移行から特定の値を除外する場合は、LIST パーティションタイプを使用してソースデータをフィルタリングできます。たとえば、行を除外するとします。LO_ORDERKEY = 4。この場合、値は含めないでください4をパーティション値のリストに追加し、Include Other Valuesが選択されていません。

LIST 仮想パーティションを作成するには

  1. AWS SCT アプリケーションを開きます。

  2. [Data Migration View] モードを選択します。

  3. 仮想パーティション分割を設定するテーブルを選択します。テーブルのコンテキスト (右クリック) メニューを開き、[Add Virtual Partitioning] を選択します。

  4. [Add Virtual Partitioning] ダイアログボックスで、以下のように情報を入力します。

    オプション アクション

    Partition Type

    [LIST] を選択します。選択したタイプに応じてダイアログボックスの UI が変わります。

    列名

    パーティション分割する列を選択します。

    New Value

    パーティション分割値のセットに追加する値をここに入力します。

    Include Other Values

    パーティション分割条件に適合しないすべての値を保存するデフォルトパーティションを作成する場合は、このオプションを選択します。

    Load From File

    (オプション) パーティション値を含める .csv ファイルの名前を入力します。

  5. [OK] を選択します。

DAT AUTO SPLIT

DATE AUTO SPLIT パーティションタイプは、RANGE パーティションを自動的に生成する方法です。データ自動分割を使用すると、AWS SCTパーティショニング属性、開始位置と終了位置、および値の間の範囲のサイズを指定します。その後AWS SCTは、パーティション値を自動的に計算します。

DATA AUTO SPLITは、範囲パーティションの作成に関連する多くの作業を自動化します。この手法とレンジ・パーティション化のトレードオフは、パーティション境界に対して必要な制御量です。自動分割処理では、常に同じサイズ (均一) の範囲が作成されます。範囲パーティショニングを使用すると、特定のデータ配信に必要な範囲のサイズを変更できます。たとえば、毎日、毎週、毎週、毎週、毎月などを使用できます。

Partition1: WHERE LO_ORDERDATE >= ‘1954-10-10’ AND LO_ORDERDATE < ‘1954-10-24’ Partition2: WHERE LO_ORDERDATE >= ‘1954-10-24’ AND LO_ORDERDATE < ‘1954-11-06’ Partition3: WHERE LO_ORDERDATE >= ‘1954-11-06’ AND LO_ORDERDATE < ‘1954-11-20’ … PartitionN: WHERE LO_ORDERDATE >= USER_VALUE_N AND LO_ORDERDATE <= ‘2017-08-13’

DATE AUTO SPLIT 仮想パーティションを作成するには

  1. AWS SCT アプリケーションを開きます。

  2. [Data Migration View] モードを選択します。

  3. 仮想パーティション分割を設定するテーブルを選択します。テーブルのコンテキスト (右クリック) メニューを開き、[Add Virtual Partitioning] を選択します。

  4. [Add Virtual Partitioning] ダイアログボックスで、以下のように情報を入力します。

    オプション アクション

    Partition Type

    [DATE AUTO SPLIT] を選択します。選択したタイプに応じてダイアログボックスの UI が変わります。

    列名

    パーティション分割する列を選択します。

    開始日

    開始日を入力します。

    終了日

    終了日を入力します。

    Interval

    間隔の単位を入力し、その単位の値を選択します。

  5. [OK] を選択します。

ネイティブ Netezza パーティショニングの使用

データ移行を高速化するために、Netezza サーバー上のテーブルの物理的な分散を抽出エージェントが使用できるようにします。

たとえば、プロジェクトを作成した後、スキーマに関する統計を収集し、移行用に選択したテーブルのサイズを分析できます。指定したサイズを超えるテーブルの場合、AWS SCTは、ネイティブの Netezza パーティショニングメカニズムをトリガーします。

ネイティブ Netezza パーティショニングを使用するには

  1. を開くAWS SCTアプリケーションを選択し、新しいプロジェクトforファイル。[新しいプロジェクト] ダイアログボックスが表示されます。

  2. 新しいプロジェクトを作成し、ソースとターゲットサーバーに接続します。

  3. [View]、[Main View] の順に選択します。

  4. ソースデータベースのスキーマを表示する左のパネルで、スキーマを選択します。オブジェクトのコンテキスト (右クリック) メニューを開き、[] メニューから [] を選択します。統計情報を収集する

  5. 移行する各テーブルを選択し、サイズと行数を分析します。

  6. を使用する場合現在のプロジェクト設定] で、[データの移行タブ 選択テーブルのパーティション化を使用する... テーブルがを選択し、テーブルのサイズ制限を MB 単位で入力します (100 など)。

  7. 必要な数のエージェントを登録します。詳細については、「抽出エージェントをAWS Schema Conversion Tool」を参照してください。

  8. 選択したテーブルのデータ書き出しタスクを作成します。詳細については、「の作成、実行、および監視AWS SCTデータ抽出タスク」を参照してください。

    大きなテーブルがサブタスクに分割されているかどうか、および各サブタスクが、1 つの Netezza スライスにあるテーブルの一部を示すデータセットと一致しているかどうかを確認します。

  9. 選択したテーブルの移行が完了するまで、移行プロセスを開始して監視します。

LOB の Amazon Redshift への移行

Amazon Redshift は、ラージバイナリオブジェクト (LOB) の保存をサポートしていません。ただし、LOB を Amazon Redshift に移行する必要がある場合は、次のようになります。AWS SCTが移行を実行できます。これを行うために、AWS SCTは Amazon S3 バケットを使用して LOB を保存し、S3 バケットの URL を Amazon Redshift に保存された移行済みデータに書き込みます。

LOB を Amazon Redshift に移行するには

  1. AWS SCT プロジェクトを開きます。

  2. [アクション] の [Create Local Task (ローカルタスクの作成)] を選択します。

  3. [Advanced] タブを選択します。

  4. [S3 bucket LOBs folder] に、LOB の保存先となる S3 バケット内のフォルダの名前を入力します。

    
                        [ローカル設定] ダイアログボックスの LOB
  5. 作成を選択して、タスクを作成します。

データ抽出エージェントのベストプラクティスとトラブルシューティング

以下は、抽出エージェントを使用するためのベストプラクティスの提案およびトラブルシューティングの解決策です。

問題 トラブルシューティングの提案

パフォーマンスが低い

パフォーマンスを向上させるには、以下のことをお勧めします。

  • 複数のエージェントをインストールします。

  • データウェアハウスに近いコンピュータにエージェントをインストールします。

  • 1 つのエージェントタスクですべてのテーブルを実行しないでください。

競合による遅延

データウェアハウスに同時に多数のエージェントがアクセスすることを避けます。

エージェントが一時的にダウンする

エージェントがダウンする場合、各タスクのステータスは AWS SCT に失敗として表示されます。待機していると、場合によってエージェントは復旧できます。この場合、タスクのステータスは AWS SCT で更新します。

エージェントが完全にダウンする

エージェントを実行しているコンピュータが完全にダウンし、そのエージェントがタスクを実行している場合、新しいエージェントを代用してタスクを継続できます。元のエージェントの作業フォルダが、元のエージェントと同じコンピュータにない場合にのみ、新しいエージェントを代用できます。新しいエージェントを代用するには、以下の操作を実行します。

  • 新しいコンピュータにエージェントをインストールします。

  • ポート番号や作業フォルダを含め元のエージェントと同じ設定を使用して新しいエージェントを設定します。

  • エージェントを開始します。エージェントが起動すると、タスクによって使用可能な新しいエージェントが検出され、新しいエージェントで引き続き実行されます。