翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
を使用した Oracle データウェアハウスの接続 AWS SCT
AWS SCT を使用して、スキーマ、コードオブジェクト、アプリケーションコードを Oracle データウェアハウスから Amazon Redshift または Amazon Redshift に変換し、組み合わせて AWS Glue 使用できます。
ソースとしての Oracle データウェアハウスの権限
Oracle データウェアハウスをソースとして使用するには、次の権限が必要です。
-
接続
-
select_catalog_role
-
ディクショナリを選択します
ソースとしての Oracle データウェアハウスへの接続
以下の手順を使用して、Oracle データウェアハウスソースデータベースを AWS Schema Conversion Toolに接続します。
Oracle データウェアハウスソースデータベースに接続するには
-
で AWS Schema Conversion Tool、ソースの追加を選択します。
-
[Oracle] を選択し、その後 [Next] (次へ) を選択します。
[Add source] (ソースの追加) ダイアログボックスが表示されます。
-
[接続名] にデータベースの名前を入力します。この名前が AWS SCT の左側のパネルのツリーに表示されます。
-
からデータベース認証情報を使用する AWS Secrets Manager か、手動で入力します。
-
Secrets Manager のデータベース認証情報を使用するには、以下の手順に従ってください。
-
[AWS シークレット] で、シークレットの名前を選択します。
-
[入力] を選択すると、Secrets Manager のデータベース接続ダイアログボックスにすべての値が自動的に入力されます。
Secrets Manager のデータベース認証情報を使用する方法については、「AWS Secrets Manager の の設定 AWS Schema Conversion Tool」を参照してください。
-
-
Oracle ソースデータウェアハウス接続情報を手動で入力するには、以下の手順に従ってください。
パラメータ アクション Type データベースへの接続タイプを選択します。選択したタイプに応じて、以下の追加情報を提供します。
SID
-
[サーバー名]: ソースデータベースサーバーのドメインネームシステム (DNS) 名または IP アドレスを入力します。
-
Server port: ソースデータベースサーバーへの接続に使用するポート。
Oracle SID: Oracle System ID (SID)。Oracle SID を見つけるには、Oracle データベースに対して以下のクエリを発行します。
SELECT sys_context('userenv','instance_name') AS SID FROM dual;
-
サービス名
-
Server name: ソースデータベースサーバーの DNS 名または IP アドレス。
-
Server port: ソースデータベースサーバーへの接続に使用するポート。
Service Name: 接続先の Oracle サービスの名前。
-
[TNS エイリアス]
TNS file path: Transparent Network Substrate (TNS) 名接続情報を含むファイルへのパス。
TNS file path: ソースデータベースへの接続に使用するこのファイルからの TNS エイリアス。
[TNS 接続識別子]
[TNS 識別子]: 登録された TNS 接続情報の識別子。
User name (ユーザー名) と [Password] (パスワード) データベース認証情報を入力して、ソースデータベースサーバーに接続します。
AWS SCT は、プロジェクト内のデータベースに接続する場合にのみ、パスワードを使用してソースデータベースに接続します。ソースデータベースのパスワードの漏洩を防ぐため、デフォルトで AWS SCT にパスワードは保存されません。 AWS SCT プロジェクトを閉じて再び開いた場合は、必要に応じて、ソースデータベースへの接続に使用するパスワードの入力を求められます。
SSL の使用 データベースへの接続に Secure Sockets Layer (SSL) を使用する場合は、このオプションを選択します。[SSL] タブで、必要に応じて、以下の追加情報を提供します。
-
[SSL A認証]: 接続に SSL 認証を使用するには、このオプションを選択します。
-
[信頼ストア]: 証明書を保存している信頼ストアの場所。
-
[キーストア]: プライベートキーと証明書を保存しているキーストアの場所。この値は、[SSL 認証] を選択した場合は必須ですが、それ以外の場合はオプションです。
Store Password AWS SCT は、SSL 証明書とデータベースパスワードを保存するための安全なボールトを作成します。このオプションをオンにすると、データベースのパスワードが保存されるため、パスワードを入力しなくてもデータベースにすばやく接続できます。
[Oracle ドライバーパス] ソースデータベースへの接続に使用するドライバのパスを入力します。詳細については、「用の JDBC ドライバーのインストール AWS Schema Conversion Tool」を参照してください。
ドライバパスをグローバルプロジェクト設定に保存する場合、ドライバパスは接続ダイアログボックスに表示されません。詳細については、「グローバル設定でのドライバパスの保存」を参照してください。
-
-
接続のテストを選択して、 がソースデータベースに接続 AWS SCT できることを確認します。
-
[Connect] (接続) を選択して、ソースデータベースに接続します。
Oracle データウェアハウスから Amazon Redshift への変換設定
Oracle データウェアハウスから Amazon Redshift への変換設定を編集するには、「 での設定」を選択し AWS SCT、「変換設定」を選択します。上部のリストから Oracle を選択し、Oracle を選択します。Amazon Redshift. は、Oracle データウェアハウスから Amazon Redshift への変換に使用できるすべての設定 AWS SCT を表示します。
の Oracle データウェアハウスから Amazon Redshift への変換設定 AWS SCT には、次のオプションが含まれています。
-
変換されたコード内のアクション項目に関するコメントの数を制限する。
選択した重要度以上のアクション項目の変換されたコードにコメントを追加する で、アクション項目の重要度を選択します。 は、選択した重要度以上のアクション項目の変換されたコードにコメント AWS SCT を追加します。
たとえば、変換したコード内のコメントの数を最小限に抑えるには、[エラーのみ] を選択します。変換したコードのすべてのアクション項目にコメントを含めるには、[すべてのメッセージ] を選択します。
-
ターゲット Amazon Redshift クラスターに適用 AWS SCT できるテーブルの最大数を設定します。
ターゲット Amazon Redshift クラスターのテーブルの最大数で、Amazon Redshift クラスターに適用 AWS SCT できるテーブルの数を選択します。
Amazon Redshift には、クラスターノードタイプの使用を制限するクォータがあります。Auto を選択した場合、 はノードタイプに応じて、ターゲット Amazon Redshift クラスターに適用するテーブルの数 AWS SCT を決定します。オプションで、値を手動で選択します。詳細については、「Amazon Redshift 管理ガイド」の「Amazon Redshift のクォータと制限」を参照してください。
AWS SCT は、Amazon Redshift クラスターが保存できる数よりも多い場合でも、すべてのソーステーブルを変換します。 は変換されたコードをプロジェクト AWS SCT に保存し、ターゲットデータベースに適用しません。変換したコードを適用したときにテーブルの Amazon Redshift クラスターのクォータに達すると、 AWS SCT に警告メッセージが表示されます。また、 はテーブル数が制限に達するまで、ターゲット Amazon Redshift クラスターにテーブル AWS SCT を適用します。
-
ソーステーブルのパーティションを Amazon Redshift の別のテーブルに移行するには。そのためには、[UNION ALL ビューを使用する] を選択し、 AWS SCT が 1 つのソーステーブルに対して作成できるターゲットテーブルの最大数を入力します。
Amazon Redshift は、テーブルのパーティションをサポートしていません。この動作をエミュレートしてクエリの実行を高速化するために、 AWS SCT はソーステーブルの各パーティションを Amazon Redshift の別のテーブルに移行できます。次に、 は、これらのすべてのテーブルのデータを含むビュー AWS SCT を作成します。
AWS SCT は、ソーステーブル内のパーティションの数を自動的に決定します。ソーステーブルパーティショニングのタイプによっては、この数は Amazon Redshift クラスターに適用できるテーブルのクォータを超える場合があります。このクォータに達しないようにするには、単一のソーステーブルのパーティションに対して が作成 AWS SCT できるターゲットテーブルの最大数を入力します。デフォルトのオプションは 368 テーブルで、これは 1 年 366 日のパーティションと、
NO RANGE
およびUNKNOWN
パーティションの 2 つのテーブルを表します。 -
Amazon Redshift がサポートしていない日時フォーマット要素を使用して、
TO_CHAR
、TO_DATE
、TO_NUMBER
などのデータ型フォーマット関数を変換するには。デフォルトでは、 AWS SCT は拡張パック関数を使用して、変換されたコード内のサポートされていないフォーマット要素の使用をエミュレートします。Oracle の日時フォーマットモデルには、Amazon Redshift の日時フォーマット文字列と比較してより多くの要素が含まれています。ソースコードに Amazon Redshift がサポートする日時形式の要素のみが含まれている場合、変換されたコードに拡張パック関数は必要ありません。変換後のコードで拡張パック関数を使用しないようにするには、Oracle コードで使用する [日付型フォーマット要素が Amazon Redshift の日時フォーマット文字列に似ている] ものを選択してください。この場合、変換されたコードの処理が速くなります。
Oracle の数値フォーマットモデルには、Amazon Redshift の数値フォーマット文字列よりも多くの要素が含まれています。ソースコードに Amazon Redshift がサポートする数値形式の要素のみが含まれている場合、変換されたコードに拡張パック関数は必要ありません。変換後のコードで拡張パック関数を使用しないようにするには、[Oracle コードで使用する数値形式の要素は Amazon Redshift の数値形式の文字列と類似している] を選択します。この場合、変換されたコードの処理が速くなります。
-
Oracle
LEAD
およびLAG
分析関数を変換します。デフォルトでは、 AWS SCT はLEAD
およびLAG
関数ごとにアクション項目が生成されます。ソースコードでこれらの関数でオフセットのデフォルト値を使用していない場合、 AWS SCT は
NVL
関数でこれらの関数の使用をエミュレートできます。そのためには、[NVL 関数を使用して Oracle LEAD 関数と LAG 関数の動作をエミュレートする] を選択します。 -
Amazon Redshift クラスターのプライマリキーとユニークキーの動作をエミュレートするには、[プライマリキーとユニークキーの動作をエミュレートする] を選択します。
Amazon Redshift はユニークキーやプライマリキーを強制せず、情報提供のみを目的として使用します。コードでこれらの制約を使用する場合は、 が変換されたコードでそれらの動作を AWS SCT エミュレートすることを確認します。
-
Amazon Redshift テーブルの列に圧縮を適用します。そのためには、[圧縮エンコードを使用] を選択します。
AWS SCT は、デフォルトの Amazon Redshift アルゴリズムを使用して、列に圧縮エンコードを自動的に割り当てます。詳細については、『Amazon Redshift データベースデベロッパーガイド』の「圧縮エンコード」を参照してください。
デフォルトでは、Amazon Redshift はソートキーと分散キーとして定義されている列に圧縮を適用しません。この動作を変更したり、これらの列に圧縮を適用したりできます。そのためには、[KEY 列には圧縮エンコードを使用] を選択します。このオプションは、[圧縮エンコードを使用] オプションを選択した場合にのみ選択できます。
Oracle データウェアハウスから Amazon Redshift への変換最適化設定
Oracle データウェアハウスから Amazon Redshift への変換最適化設定を編集するには、「 での設定」を選択し AWS SCT、「変換設定」を選択します。上のリストから [Oracle] を選択し、次に [Oracle – Amazon Redshift] を選択します。左側のペインで、最適化 strategy. AWS SCT displays conversion optimization settings for Oracle Data Warehouse to Amazon Redshift conversion を選択します。
の Oracle データウェアハウスから Amazon Redshift への変換最適化設定 AWS SCT には、次のオプションが含まれています。
-
自動テーブル最適化を使用するには。そのためには、[Amazon Redshift の自動テーブルチューニングを使用する] を選択します。
自動テーブル最適化は、テーブルの設計を自動的に最適化する Amazon Redshift の自己調整プロセスです。詳細については、『Amazon Redshift データベース開発者ガイド』の「自動テーブル最適化の操作」を参照してください。
自動テーブル最適化のみを利用するには、[初期キー選択戦略] で [なし] を選択します。
-
戦略を使用してソートキーと分散キーを選択するには。
Amazon Redshift メタデータ、統計情報、またはこれらのオプションの両方を使用して、ソートキーと配布キーを選択できます。[最適化戦略] タブの [初期キー選択戦略] では、以下のいずれかのオプションを選択します。
メタデータを使用し、統計情報は無視する
メタデータを無視し、統計情報を使用する
メタデータと統計情報を使用する
選択したオプションに応じて、最適化戦略を選択できます。次に、各戦略について、値 (0~100) を入力します。これらの値は各戦略の重みを定義します。これらの重み値を使用して、 AWS SCT は各ルールがディストリビューションキーとソートキーの選択にどのように影響するかを定義します。デフォルト値は、 AWS 移行のベストプラクティスに基づいています。
[小さいテーブルを検索] 戦略の小さいテーブルのサイズを定義できます。最小テーブル行数と最大テーブル行数には、テーブル内の最小行数と最大行数を入力して、それを小さなテーブルとして定義します。 は
ALL
分散スタイルを小さなテーブル AWS SCT に適用します。この場合は、テーブル全体のコピーがすべてのノードに分散されます。 -
戦略の詳細を設定するには。
各最適化戦略の重みを定義することに加えて、最適化設定を構成できます。そのためには、[変換の最適化] を選択します。
[ソートキー列の制限] には、ソートキーの列の最大数を入力します。
歪んだしきい値には、列の歪んだ値の割合 (0 ~ 100) を入力します。分散キーの候補リストから、歪んだ値がしきい値より大きい列 AWS SCT を除外します。 は、レコードの合計数に対する最も一般的な値の出現回数の割合として、列の歪んだ値 AWS SCT を定義します。
[クエリ履歴テーブルの上位 N 件のクエリ] には、分析対象として最も頻繁に使用されるクエリの数 (1 ~ 100) を入力します。
[統計ユーザーを選択] では、クエリ統計を分析したいデータベースユーザーを選択します。
また、[最適化戦略」タブでは、[小さいテーブルを検索] 戦略の小さいテーブルのサイズを定義できます。最小テーブル行数と最大テーブル行数には、テーブル内の最小行数と最大行数を入力して、それを小さなテーブルと見なします。 は
ALL
分散スタイルを小さなテーブル AWS SCT に適用します。この場合は、テーブル全体のコピーがすべてのノードに分散されます。