この章では、Oracle GoldenGate Veridataのインストールおよび実行についてサポートされているデータベースおよびシステム要件について説明します。
この章の内容は次のとおりです。
Oracle GoldenGate VeridataではOracle GoldenGateレプリケーション・ソフトウェアのインストールは不要です。そのソフトウェアを使用する場合、Oracle GoldenGate Veridataを別の場所にインストールします。
この項では、Oracle GoldenGate Veridataを正常にインストールおよび構成する前に満たす必要のある前提条件について説明します。次の項では、前提条件について説明します。
Oracle GoldenGate Veridataをインストールするには、サポートされているJDKをインストールする必要があります。
DB2 for i 6.#および5.#ではJava 6しかサポートされていませんが、可能な場合には、Java 7を使用することをお薦めします。
Veridataインスタンスを実行するマシンに、JDK 1.7.0_15以上をインストールしてください。
製品のインストールとダウンロードに関する詳細は、Java SEのダウンロード・サイトにアクセスしてください。
http://www.oracle.com/technetwork/java/javase/downloads/index.html
JAVA_HOME
およびPATH
環境変数に、JDKディレクトリ・パスを設定する必要があります。
オペレーティング・システムに対して動作保証されているJDKをインストールした後、Oracle Fusion Middleware 12c (12.1.3) Infrastructureインストーラを使用してOracle WebLogic ServerおよびOracle Java Required Files (JRF) Infrastructureサービスをインストールします。
インストーラfmw_
WLS_version
_infrastructure.jar
(ここで、WLS_version
は、サポートされているWebLogic Serverのバージョンを表す)をダウンロードする必要があります(次の場所から入手できます)。
http://www.oracle.com/technetwork/developer-tools/adf/downloads/index.html
または、次の場所のOracle Software Delivery Cloudから入手します。
Oracle Fusion Middleware Infrastructureインストーラの入手の詳細は、『Oracle Fusion Middleware Infrastructureのインストールと構成』のOracle Fusion Middleware Infrastructureディストリビューションの理解と入手に関する項を参照してください。
Oracle WebLogic ServerおよびJRFのインストールの詳細は、『Oracle Fusion Middleware Infrastructureのインストールと構成』のOracle Fusion Middleware Infrastructureソフトウェアのインストールに関する項を参照してください。
スキーマをインストールできるデータベースがまだない場合は、動作保証されたデータベースをインストールおよび構成する必要があります。Oracle GoldenGate Veridataでは、次のデータベースがサポートされています。
Oracle
MySQL
Microsoft SQL Server
詳細は、2.5.3項「サーバー・コンポーネントのリポジトリ要件」を参照してください。
Oracle GoldenGate Veridataでは、比較用に次のデータベースがサポートされています。
DB2 for i、DB2 LUW、およびDB2 z/OS
Enscribe
Informix
NonStop SQL/MP
Oracle
SQL Server
Sybase Adaptive Server Enterprise (ASE)
Teradata
オラクル社では、サポートWebサイトを通じて、アップグレード前の要件、アップグレード・プロセス、アップグレード後、互換性および相互運用性に関する最新の更新情報、ディスカッションおよびベスト・プラクティスを提供しています。Oracle GoldenGate Veridataリリースの最新情報(動作保証されたデータベースのバージョンおよびオペレーティング・システムを含む)を確認するには、http://support.oracle.com
のMy Oracle Supportに移動してください。
比較対象のデータが含まれるデータベース・インスタンスごとに1つのOracle GoldenGate Veridataエージェントをインストールする必要があります。したがって、少なくとも2つ(ソース行の取得用とターゲット行の取得用)のエージェントをインストールします(同じデータベース・インスタント内のデータの比較ではない場合)。1つのエージェントで指定したデータベース・インスタンス内の複数のデータベースまたはスキーマから行を取得できます。ただし、1つのエージェントで異なるデータベース・インスタンスから行は取得できません。
マルチバイト・データの比較
マルチバイト・データを含む表を比較する場合、次のような考慮が必要です。
CエージェントのみのNonStop以外は、すべてのプラットフォームでJavaエージェントを使用します。
Javaエージェントでは、文字データの比較にUTF-8文字を使用します。同期していないデータはUTF-8文字セットを使用してレポート・ファイルに書き込まれます。
Oracle GoldenGate Veridata Oracle Cエージェントは、ソースとターゲットが同じ文字セットを使用し、ホスト・システムが同じバイト順序を使用するOracleデータベース間の比較に使用できます。Oracle CエージェントはJavaエージェントとの比較には使用できません。有効なUTF-8文字以外の文字を含む文字フィールドは、非同期レポートで16進数で表示されます。
Oracle GoldenGate Veridataは、次のデータベースにJavaベースのエージェントを提供します。
DB2 for i、DB2 LUW、およびDB2 z/OS
Oracle
SQL Server
Sybase ASE
Teradata
JavaエージェントはJDBC(Java Database Connectivity)を使用してデータベースに接続します。Javaエージェントを使用すると、Oracle GoldenGate Veridataは類似はしているが同じではないデータ型が含まれる異種環境での比較をサポートできます。Javaエージェントを使用すると、1つの実行可能ファイルで多くのオペレーティング・システムおよびデータベースがサポートされます。
Javaエージェントは、データベースを実行中のシステムと同じシステム、または別のシステム(Oracle GoldenGate Veridataサーバーをインストールしたシステムなど)にインストールできます。エージェントのインストール場所を検討する際は、エージェントがデータベースからリモートにある場合は、発生するネットワーク帯域幅の追加および大幅な使用とエージェントを実行中でない場合のデータベース・ホスト上のリソース処理の節約を比較検討します。
Windows、UNIXおよびLinux、サポートされているすべてのデータベース
すべてのプラットフォームでJava環境が必要です。Oracle Webサイトから、Java Developer Kit (JDK)またはJava Runtime Environment (JRE)のいずれかをダウンロードしてインストールします。Oracle GoldenGate Veridataのパフォーマンスの点から、バージョン1. 7.0_15以上のJavaが推奨されます。
DB2
TCP/IPポートを構成し、アクティブにしておく必要があります。
Oracle
リスナーが構成され、実行されている必要があります。
SQL Server
静的TCP/IPポートを構成し、有効化しておく必要があります。
Sybase
ASEリスニング・ポートを認識します。
Teradata
データベースのホスト名とポート番号を調べておきます。
適切なJDBCドライバをデータベースのベンダーのWebサイトからダウンロードしてから、Javaエージェントをインストールします。このガイドのインストール手順中の場所が要求されます。
Oracle GoldenGate Veridataには、次のデータベースに対するCコード・ベースのエージェントも用意されています。
Cエージェントは、NonStopプラットフォーム上で実行中のNonStop SQL/MPおよびEnscribeデータベースに必要です。このエージェントはGuardian環境にインストールできます。
CエージェントはOracleデータベースに対してサポートされていますが、リリース11.2.1.0.0以降は機能の拡張は行われません。
Cエージェントはデータベースをホストするシステムと同じシステム上にインストールする必要があります。
Oracleの場合は、動的にリンクしたCエージェントを使用できます。このエージェントを使用する場合は、次の環境変数を設定する必要があります。
動的にリンクしたCエージェントの環境変数
変数 | オペレーティング・システム |
---|---|
PATH= Oracle_libraries |
Microsoft Windows |
SHLIB_PATH= Oracle_libraries |
HP-UX |
LIBPATH= Oracle_libraries |
IBM AIX |
LD_LIBRARY_PATH= Oracle_libraries |
その他のすべてのサポートされているUNIXプラットフォーム |
エージェントには少なくとも1GBのRAMが必要です。
Oracle GoldenGate Veridataエージェントのディスク領域要件はプラットフォームによって異なりますが、最大200 MBが必要です。UNIXおよびLinuxの場合は、Java環境にインストールするには追加領域が必要です(インストールされていない場合)。
処理リソースの主なコンシューマは比較中に必要な行ソート操作です。パフォーマンスを改善するには、キーとして使用する列がネイティブな一意の索引または主キーでない場合は、データベース内の一時メモリー領域を増やす必要があります。Oracle GoldenGate Veridataを構成する際にキーとして使用する列を指定します。
データベース・ソートではなくサーバー側ソートを使用すると、行、定義済み索引、使用するキーの数およびデータベースのチューニング方法に応じて、データベース・サーバーの負荷が減り比較パフォーマンスが改善されます。2.5.2項「サーバー・コンポーネントのディスクおよびメモリー要件」を参照してください。
Oracle GoldenGate Veridataエージェントはデータベース・ログインを使用するため、比較を実行する前に作成しておく必要があります。Oracle GoldenGate Veridata Webインタフェースに接続オブジェクトを作成する際は、ログインとパスワードを入力します。データベース・ユーザーに必要なデータベース権限は、次のとおりです。
Oracle GoldenGate Veridataエージェントに必要なデータベース権限
DB2
比較する表上でのSELECT
権限。
Oracle
GRANT CONNECT
比較する表上でのGRANT SELECT
。GRANT SELECT ANY TABLE
が推奨されますが、必須ではありません。
SELECT_CATALOG_ROLE
NonStop SQL/MPおよびEnscribe
SQL/MPシステム・カタログへの読取りアクセス(CATALOGS
表への問合せ用)。
Oracle GoldenGate Veridataで使用するSQL/MPカタログへの読取りアクセス。
Oracle GoldenGate Veridataで使用するDDLディクショナリへの読取りアクセス。
比較するEnscribeおよびSQL/MP表への読取りアクセス。
Oracle GoldenGate Veridataレポート・ファイルおよびトレース・ファイルの読取り、書込み、作成、パージ権限およびインストールされているサブ・ボリュームへのアクセス権限。
SQL Server
比較する表上のdb_datareader
または同等のもの。
比較するデータベース内のVIEW DEFINITION
。
データベースではSQL Server認証を使用できる必要があります。
Sybase ASE
比較するデータベースへのアクセス権。
比較する表上でのSELECT
権限。
サーバーで使用可能なデータベースのリストを表示するためのマスター・データベース内のsysdatabases
システム表上でのSELECT
権限。
Teradata
比較する表上でのSELECT
権限。
修復機能を使用するのに必要なデータベース権限
すべてのデータベースで、データベース・ユーザーには、修復する表のUPDATE
、INSERT
、DELETE
権限が必要です。
Sybaseデータベースでは、表でトリガーとトリガーの抑制が有効になっている場合、データベース・ユーザーにはreplication_role
権限が必要です。
SQL Serverデータベースでは、修復する表にIDENTITY列がある場合、指定した修復ユーザーは、表所有者である必要があるか、修復する表のALTER
権限が必要です。
この項では、Oracle GoldenGate Veridataサーバーのインストール場所、追加プログラム、ディスク、メモリーおよびリポジトリの要件について説明します。
サーバー・コンポーネントおよびWebユーザー・インタフェース・コンポーネントは、1つのインストール・プログラムからWindows、UNIXおよびLinuxシステムにインストールされます。インストーラにはこれらのプログラムの実行に必要なファイルがすべて含まれています。1つのインストールをサポートされているすべてのデータベース間の比較に使用できますが、必要に応じて複数のインストールを使用できます。
NonStopシステム上にはサーバー・コンポーネントまたはWebユーザー・インタフェース・コンポーネントをインストールしないでください。NonStopデータベース用Oracle GoldenGate Veridataを使用するには、次のようにします。
サーバー・コンポーネントおよびWebユーザー・インタフェース・コンポーネントを、サポートされているWindows、UNIX、またはLinuxシステムにインストールします。
このシステムで高速ネットワーク接続を使用してNonStopシステムへアクセスできることを確認します。
サーバー・コンポーネントは基本タスクに約200MBの固定仮想メモリーを使用します。残りの仮想メモリーは比較に使用されます。Oracle GoldenGate Veridataマシン上の処理リソースの主なコンシューマは、サーバー側ソートを使用する際の初回比較手順の行ソート操作です。
ソース・システムおよびターゲット・システムから比較用に送信されるすべての行を格納するには、十分なディスク領域と仮想メモリーの組合せが必要です。行ごとのメモリー量の見積手順:
((number of cols in key + 1) * 4) + 16 + (comparison width of a key col)
条件:
comparison width of a key col
は、Oracle GoldenGate Veridata(またはユーザー上書き)が比較で使用するために選択する比較形式によって異なります。
比較形式データ・サイズ:
比較形式 | データ・サイズ |
---|---|
数値 | 有効桁ごとに1バイト。先頭のゼロおよび小数点以下の末尾のゼロ(1234.500の右端のゼロ)は数えません。 |
タイムスタンプ | 端数の精度に応じて19バイトから32バイト。 |
日付 | 10バイト。 |
時間 | 端数の精度に応じて8バイトから18バイト。 |
文字列 | JavaエージェントのUTF-8エンコーディングの場合、1文字当たり1バイトから4バイト。NonStopエージェントとOracle Cエージェントはネイティブ文字セットを使用します。 |
バイナリ | データベースに格納されているバイト。 |
たとえば、浮動小数点として比較する場合、数109998877に必要なバイト数は次のようになります。
この行のメモリー: ((1 + 1) * 4) + 16 + 9 = 33
バイト
注意: ここでは、すべての非キー列はリテラルではなくハッシュを使用して比較されることが前提となります。リテラル比較の場合、必要なメモリー量は増えます。 |
Oracle GoldenGate Veridataでは、データのソートに外部マージ・ソートを使用します。エージェントからデータを受け取ると、行がインメモリーでソートされます。メモリー・バッファが一杯になると、行はディスクに書き込まれます。
データをソートするために、ソート・プロセスは、初期データ・セット・サイズを一時記憶領域に合せます。必要な一時領域のサイズは、行の数、行サイズおよび使用可能なソート・メモリーの量によって決まります。次に、使用可能なリソースに応じたソートの各種モードを示します。
インメモリー・ソート: データを完全にインメモリーでソートします。最も速い方法ですが、メモリー要件が使用可能なメモリーの量を超える可能性があります。ソート・メモリーは、データ・セットのサイズの約2.5倍必要です。
1ディスク・パス: データをソートし、ディスクに1回のみ書き込みます。データ・セットのサイズと同じソート・ディスク領域が必要です。このプロセスはインメモリー・ソートと同程度の速さで、メモリー要件は低くなります。Oracle GoldenGate Veridataサーバーは、通常エージェントがデータベースから行を読み取るよりも速く行をディスクに書き込むことができます。
2ディスク・パス: 2回ソートし、ディスクに書き込みます。データ・セットの2倍のソート・ディスク領域が必要です。ディスク要件は高くなりますが、非常に大規模なデータ・セットを適度なメモリー量でソートできます。
3回以上のディスク・パス: エージェントから行をすべて受け取った後、最終的なディスクへの書込みの準備のために追加のソートが必要な場合があります。ディスクへのアクセスが3回以上必要な場合、必要なソート領域はデータ・セット・サイズの3倍以上になります。これは遅いため、使用しないようにします。
次の表に、いくつかのサンプル・データ・セットのメモリー要件を示します。
データ・セット・サイズ | インメモリー・ソート | 1ディスク・パス | 2ディスク・パス |
---|---|---|---|
20MB | 50MB | 適用外 | 適用外 |
400MB | 1GB | 50MB | 適用外 |
2GB | 5GB | 125MB | 50MB |
8GB | 20GB | 250GB | 50MB |
50GB | 125GB | 600MB | 80MB |
注意: 前述の表の数値は、比較の一方のみを対象としています。双方を対象とすると、この2倍の割当てが必要です。 |
この割当てを超える場合は、処理の第2の手順である確認手順中に行を格納するメモリーが必要です。レプリケーション・レイテンシが非常に長い場合と同じように、確認が必要な行数が非常に多い場合は最大20MBになります。これらの行は確認前にメイン・メモリーでステージングされます。
このソートは、初回比較手順中に格納する必要があるすべてのデータをメイン・メモリーに格納できる場合はパフォーマンスは良くなります。64ビット・システムの場合は、より多くのメモリーを処理できるため、より多くのデータを遅いディスク・デバイスではなくメイン・メモリーに格納できます。必ずしも初回の比較手順で使用されるメモリーが一度ですべてリリースされ、比較手順で使用できるわけではありません。したがって、メモリーの一部はプロセス間で共有されます。ソートがメモリーにすべての行を格納できない場合は、ディスク・ストレージが使用されます。
割り当てるメモリー量を決定する際は、Oracle GoldenGate Veridataアプリケーション内のパラメータ設定で管理できるような次の方法を認識しておいてください。
一時領域は比較的速いファイル・システムに配置します。リモート・サーバー上のネットワーク・ファイル・システムでは比較処理が遅くなる可能性があります。
プロファイル設定で複数の一時ディレクトリを指定すると、ディスクのI/Oパフォーマンスを上げることができます。メリットを最大にするには、ディレクトリを別の物理ディスクに格納します。
プロファイル設定で、各処理手順に割り当てられているメモリー量を制御できます。
プロファイル設定を使用して、指定の非同期行数後確認手順を終了させてリソース制限に対処できます。
追加メモリーのプロパティはサーバー・パラメータで制御できます。『Oracle GoldenGate Veridataの管理』の構成パラメータに関する項を参照してください。
Oracle GoldenGate Veridataサーバーには、ユーザーがOracle GoldenGate Veridata Webインタフェースを使用する際に作成する情報プリファレンスおよび環境プリファレンスを格納するオブジェクトのリポジトリとしての役目を果たすデータベースが必要です。
リポジトリを作成するには、リポジトリ作成ユーティリティ(RCU)を使用します。第4章「Oracle GoldenGate Veridataリポジトリ・スキーマの作成」を参照してください。
注意: RCUの使用時にエラーを回避するには、NLS_LENGTH_SEMANTICS をBYTE に設定する必要があります。これはOracle Fusion Middleware RCUの要件です。 |
次のデータベースは、リポジトリとして使用できます。
MySQL
Oracle
SQL Server
MySQL
ユーザーおよび同じ名前のデータベースを作成します。
このユーザーがOracle GoldenGate VeridataがインストールされているホストからMySQLサーバーに接続する場合、そのデータベースのすべてのDDL権限とDML権限をユーザーに付与します。
Oracle
ユーザーおよびパスワードを作成します。
ユーザーのデフォルト表領域にQUOTA UNLIMITED
を指定します。
SQL Server
リポジトリをインストール中のデータベースのユーザーであるデータベースおよびログインを作成します。
このログインに、次の操作を実行するための十分な権限を付与します。
データベースへのCONNECT
データベース内でのCREATE
、ALTER
、DROP TABLE
データベース内でのCREATE
およびDROP INDEX
データベース内の表からのINSERT
、UPDATE
、DELETE
データベース内の表からのSELECT
ログインのデフォルト・スキーマのALTER SCHEMA
MySQL
データベースのホスト名および番号。
リポジトリの既存のデータベース・ユーザーを使用する場合は、ログインおよびパスワード。
Oracle
データベース・インスタンス名
ORACLE_HOME
(TNSNAMES
接続メソッドを使用する場合)
リポジトリのデフォルトおよび一時表領域(インストール中にサーバー・コンポーネントに新規ユーザーを作成する場合)
リポジトリの既存のデータベース・ユーザーを使用する場合は、ログインおよびパスワード。
SQL Server
静的ポート番号を使用するようSQL Serverインスタンスを構成する必要があります。このポートは構成ファイルに格納されるため、データベースへJDBC接続する際に参照できます。
リポジトリの既存のデータベース・ユーザーを使用する場合は、ログインおよびパスワード(または統合認証)。
この項では、Oracle GoldenGate Webユーザー・インタフェースに推奨される(あるいは必要な)Javaパッケージ、ブラウザ、画面の解像度、セキュリティおよびポートについて説明します。
2.5.1項「サーバー・コンポーネントの場所」を参照してください。1つのインストール・プログラムでOracle GoldenGate Veridata Webサーバー・コンポーネントとOracle GoldenGate Veridata Webユーザー・インタフェースの両方がインストールされます。
Veridata Webユーザー・インタフェースのインストールには、JDK 1.7.0_15が必要です。
注意: Veridata Webユーザー・インタフェースは、DB2 for iにはインストールできません(JDK 1.7をサポートしていないため)。 |
Microsoft Internet Explorerバージョン9以降
Mozilla Firefoxバージョン10以上
Google Chromeバージョン32
Apple Safariバージョン6以上
クラスタ化されたキーがあるSQL/MP表の、主キーの一番右の部分はファイル・システムによって追加されたタイムスタンプです。そのような表で構成された比較ペアの場合、タイムスタンプはソース・システムとターゲット・システムで異なります。そのため、比較から除外する必要があります。Oracle GoldenGate Veridataはキーを比較して正しい行が比較されるようにするからです。
キーのタイムスタンプ部分を除外後、残りのキー列が一意のキー値を生成しない場合は、それらの表に一意値の作成を指定できる一意の索引またはその他の列を含める必要があります。そうしないと、Oracle GoldenGate Veridataで比較できません。