この章では、Oracle GoldenGateをサポートするシステムおよびデータベース・リソースの要件について説明します。次の各項で構成されます。
Oracle GoldenGateでは、次のデータのレプリケーションをサポートしています。
ソースのTeradataデータベース(ソース・サーバーとして知られている)とターゲットのTeradataデータベース(サブスクライバ・サーバーとして知られている)間
Teradataデータベースとサポートされている他のデータベース・プラットフォーム間
さらに、Oracle GoldenGateによって、同一のTeradataのソース・サーバーとサブスクライバ・サーバー間でDDL操作がレプリケートされます。
Oracle GoldenGateは、Teradata Change Data Capture (CDC)ファシリティからトランザクションの変更または表のコピー操作を受信し、ODBC経由でサブスクライバに送信します。CDCとOracle GoldenGate間の通信は、Teradata Access Module (TAM)によって管理されます。
Oracle GoldenGate for Teradataでは、特に注記のないかぎり、データのフィルタリング、マッピングおよび変換がサポートされています。
このドキュメントには、Teradata環境内のOracle GoldenGateソリューションのセットアップ固有の情報が記載されています。このドキュメントは、TeradataデータベースおよびTeradata Replication Solutionsの基本的な知識を持つ読者を対象にしています。さらに、次の内容を正しく構成していることを前提とします。
Relay Services Gateway (RSG)
Change Data Capture (CDC)
Teradata Access Module (TAM)
レプリケーション・グループ
Teradataデータベースにレプリケーションを構成するには、Teradata Corporationの『Teradata Replication Solutions』のドキュメントを参照してください。
Teradata環境では、ソースのTeradataデータベースとターゲットのTeradataデータベースがインストールされているサーバーとは別のサーバーにOracle GoldenGateをインストールします。このマシンはレプリケーション・サーバーとなり、Teradataデータベース用にOracle GoldenGateでサポートされているプラットフォームにする必要があります。データベースのバージョンとオペレーティング・システムの特定の組合せにOracle GoldenGateのどのビルドを使用できるかを調べるには、http://support.oracle.com
にログインし、「動作保証」タブを選択します。サポートが必要な場合、「動作保証検索のヒント」をクリックします。このサイトに入るには、電子メールとパスワードが必要です。
1つまたは複数のレプリケーション・サーバーを選択する際の注意点は次のとおりです。
レプリケーション・サーバーは、ソース・サーバーまたはターゲット・サーバーと同じロケーションに配置するか、それらのサーバーのいずれかまたは両方から離れたロケーションに配置することができます。離れた場所にあるTeradataのシステム間のレプリケーションでは、ソースの場所にあるレプリケーション・サーバーにOracle GoldenGateのExtractプロセスをインストールし、ターゲットの場所にある別のレプリケーション・サーバーにOracle GoldenGateのReplicatプロセスをインストールします。
可能な場合、複数ノードのクラスタ・サーバーにOracle GoldenGateをインストールし、サーバーの故障によるOracle GoldenGateの停止の影響を最小限に抑えます。
追加構成に関する考慮事項については、Oracle GoldenGateをインストールする前に、Teradata Corporationの『Teradata Replication Services Using Oracle GoldenGate』のドキュメントを参照してください。
この項では、Oracle GoldenGateのサポートに必要なオペレーティング・システム・リソースについて説明します。これらのリソースは、データベース・サーバー、レプリケーション・サーバーまたはすべてのサーバーに適用されます。
Oracle GoldenGateに必要なメモリー量は、処理するデータ量、実行中のOracle GoldenGateプロセスの数、Oracle GoldenGateで使用可能なRAMの容量、およびオペレーティング・システムがRAMを解放する必要がある場合(通常は低水位標に到達した場合)に、Oracle GoldenGateがRAMのページを一時的にディスク上に格納するために使用できるディスク領域の容量によって異なります。このようなRAMを一時的にディスクに格納する方法は、一般にスワッピングまたはページングと呼ばれています(ここではスワッピングと呼びます)。プラットフォームによっては、スワップ領域という用語をスワップ・パーティション、スワップ・ファイル(Windows)、または共有メモリー・セグメント(IBM iプラットフォーム)と呼ぶ場合があります。
現在のサーバーには、Oracle GoldenGateを実行するのに十分なRAMと、十分なスワップ領域およびメモリー管理システムが搭載されています。ただし、Oracle GoldenGateが使用できるRAMの容量を増やすことで、Oracle GoldenGateだけでなくシステム全体のパフォーマンスが大幅に向上する場合があります。
Oracle GoldenGateの通常インストールでは、GB単位のRAMを提供することで、RAMページがディスクに過度にスワップされないようにしています。RAMの競合が増加すれば、より多くのスワップ領域が使用されます。
ディスクへの過度なスワッピングによって、特にExtractプロセスでパフォーマンスの問題が発生します(Extractではコミット・レコードを受信するまで各オープン・トランザクションのデータを格納しておく必要があるため)。Oracle GoldenGateがデータベースと同じシステム上で稼働している場合、使用可能なRAMの容量は双方のパフォーマンスにとって重要になってきます。
RAMとスワップの使用量は、Oracle GoldenGateプロセスではなくオペレーティング・システムによって制御されます。Oracle GoldenGateキャッシュ・マネージャは、オペレーティング・システムのメモリー管理機能を使用して、Oracle GoldenGateプロセスが持続的かつ効率的に動作するようにします。ほとんどの場合、ユーザーがOracle GoldenGateのメモリー管理のデフォルト構成を変更する必要はありません。
Oracle GoldenGateのメモリー要件評価の詳細は、Oracle GoldenGateリファレンスfor Windows and UNIXのCACHEMGR
パラメータに関する項を参照してください。
Oracle GoldenGateレプリケーション・サーバーに推奨されるハードウェア構成は、次のとおりです。
300GB ディスク4個
デュアルコアCPU4個
RAM 8GB
次のように空きディスク領域を割り当てます。
Oracle GoldenGateのダウンロード・ファイルのサイズを確認するには、Oracle Software Delivery Cloudで選択したビルドをダウンロードする前に、「サイズ」列を表示します。表示された値は、圧縮形式のファイルのサイズです。ディスク上に展開されたOracle GoldenGateインストール・ディレクトリのサイズは、それよりも大幅に大きくなります。詳細は、2.2項「Oracle GoldenGateのダウンロード」を参照してください。
Oracle GoldenGateの証跡(作業データが含まれているファイル)をホストするシステムに追加の1GB以上のディスク容量を割り当てます。証跡によって消費される領域は、処理されるデータ量に応じて変わるため、必要な量がこれを前後する場合もあります。証跡のサイズに関するガイドラインは、Oracle GoldenGateの管理for Windows and UNIXを参照してください。
Oracle GoldenGateをクラスタ環境にインストールするには、すべてのクラスタ・ノードで使用できる共有ファイル・システムにOracle GoldenGateのバイナリおよびファイルをインストールします。
レプリケーション作業は、レプリケーション・サーバーとの接続のためにソース・データベース・サーバー上のRSG vprocsで実行されます。接続では、TCP/IPプロトコルを実装します。Teradata V12からは、各システム・ノードに1つのRSGがあります。
Oracle GoldenGateをサポートするには、次のネットワーク・リソースを使用できる必要があります。
Oracle GoldenGateに関連するシステムを、DNSを含むTCP/IPサービスを使用するように構成します。Oracle GoldenGateではIPv4およびIPv6がサポートされており、これらのプロトコルのいずれか、または両方がサポートされているシステムで動作できます。
Oracle GoldenGateのプロセスをホストし、Oracle GoldenGateの接続先となるすべてのシステムのホスト名またはIPアドレスを使用してネットワークを構成します。ホスト名の方が便利です。
Oracle GoldenGateには、予約されていない無制限のTCP/IPポートが必要で、その数は、構成内のプロセスの数とタイプによって異なります。必要なポートに対応するManagerプロセスの構成方法の詳細は、Oracle GoldenGateの管理for Windows and UNIXを参照してください。
Oracle GoldenGateに割り当てたポートを記録します。Managerプロセスの構成時にパラメータを使用してそれらのポートを指定します。
Oracle GoldenGateのポートを経由した接続を受け入れるようにファイアウォールを構成します。
Managerプロセスには、Oracle GoldenGateのプロセスを制御する権限とOracle GoldenGateディレクトリのファイルおよびサブディレクトリの読取り、書込み、削除を行う権限を持つオペレーティング・システム・ユーザーが必要です。ExtractプロセスおよびReplicatプロセスには、データベースにアクセスする特権が必要です。
オペレーティング・システムとコマンド・コンソールのキャラクタ・セットは、同一にする必要があります。Microsoft Windowsシステムでは、オペレーティング・システムはあるキャラクタ・セットに設定されていますが、DOSコマンド・プロンプトでは、別の古いDOSキャラクタ・セットが使用されるため、不一致が発生します。Oracle GoldenGateでは、オペレーティング・システムのキャラクタ・セットを使用してGGSCIコマンド出力に情報が送信されるため、一致しないコンソールのキャラクタ・セットが原因で、文字が正しく表示されません。GGSCIセッションを実行する前に、次のDOSコマンドを使用して、コンソールのキャラクタ・セットを設定できます。
chcp OS character set
コード・ページの設定後に文字が正しく表示されない場合は、コンソールのフォントを、拡張キャラクタ・セットがあるLucida Consoleに変更してください。
Oracle GoldenGateをサポートするための追加の考慮事項は、次のとおりです。
WindowsシステムにOracle GoldenGateをインストールする前に、Microsoft Visual C ++ 2010 SP1再頒布可能パッケージをインストールおよび構成します。それが、このパッケージのSP1バージョンであることを確認し、サーバーに適したビットのバージョンを取得していることを確認してください。このパッケージによって、Visual C++ライブラリのランタイム・コンポーネントがインストールされます。詳細についておよびこのパッケージをダウンロードするには、http://www.microsoft.com
に移動してください。
Oracle GoldenGateでは、プラットフォーム上で仮想化ソフトウェアを使用して作成された仮想マシン環境を完全にサポートします。Oracle GoldenGateを仮想マシン環境にインストールするときに、データベースと一致するビルドおよび仮想マシンのオペレーティング・システム(ホスト・システムではない)を選択します。
この項では、Teradataデータベースに固有のOracle GoldenGateの要件について説明します。
データベース構成では次の要件に従います。
使用中のデータベースのバージョンに適したODBC (Open Database Connectivity)ドライバをインストールします。Oracle GoldenGateはデータベース・バージョン13.10、14.00および14.10.xをサポートしています。
データ・ソース名(DSN)の作成も含め、ソースとターゲットの各システムにODBCを構成します。DSNには、そのデータベースに接続する方法に関する情報が保存されます。手順は、『ODBC Driver for Teradata User Guide』(http://www.info.teradata.com/
)を参照してください。
ソース表にTeradataレプリケーション・グループを作成します。手順については、『Teradata Replication Services Using Oracle GoldenGate』のドキュメント(http://www.info.teradata.com
)を参照してください。
Oracle GoldenGateプロセス用のデータベース・ユーザーでは次の要件に従います。
Oracle GoldenGate専用のデータベース・ユーザーを作成します。データベースに接続する必要がある、次のOracle GoldenGateプロセスすべてに同じユーザーを使用できます。
Extract (ソース・データベース)
Replicat (ターゲット・データベース)
DEFGENユーティリティ(ソース・データベースまたはターゲット・データベース)
データのセキュリティを維持したり、Oracle GoldenGateの処理を的確に監視したりするには、他のユーザー、アプリケーションまたはプロセスに対してOracle GoldenGateデータベース・ユーザーでのログインまたは操作を許可しないでください。
ソースのTeradataデータベースからの取得にOracle GoldenGateを使用する場合は、次のセキュリティ許可をExtractデータベース・ユーザーに発行します。
GRANT SELECT ON DBC.REPGROUP TO user
;
GRANT SELECT ON DBC.TVM TO user
;
GRANT SELECT ON DBC.DBASE TO user
;
GRANT SELECT ON DBC.ERRORMSGS TO user
;
GRANT SELECT ON DBC.TVFIELDS TO user
;
GRANT SELECT ON DBC.INDEXES TO user
;
GRANT SELECT ON DBC.INDOUBTRESLOG TO user
;
GRANT REPLCONTROL TO user
;
GRANT ALL ONdatabase
TOuser
;
GRANT ALL ON SYSUDTLIB TO user
WITH GRANT OPTION;
Oracle GoldenGateを使用してターゲットのTeradataデータベースにレプリケートする場合は、すべてのターゲット表に対するSELECT
、INSERT
、UPDATE
およびDELETE
をReplicatデータベース・ユーザーに付与します。
表1-1は、Oracle GoldenGateでサポートされているTeradataデータ型を示します。適用される制限事項および条件は、この表の後に記載されています。
表1-1 Oracle GoldenGateでサポートされているデータ型(Teradataバージョン別)
データ型 | v12 | v13 | v13.1 |
---|---|---|---|
|
いいえ |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
いいえ |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
いいえ |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
いいえ |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
はい |
はい |
はい |
|
いいえ |
はい |
はい |
|
いいえ |
はい |
はい |
|
いいえ |
はい |
はい |
|
いいえ |
はい |
はい |
数値データ型は、Teradataのソース・データベースとターゲット・データベース間で完全にサポートされています。ソース・データベースでTeradataよりも多い桁数がサポートされている場合に、それらのデータ型を別のタイプのデータベースからTeradataにレプリケートすると、切捨てが発生する可能性があります。
サポートされる浮動小数点数の範囲と精度は、ホスト・マシンによって異なります。一般的に、精度は16桁まで正確ですが、データベースのドキュメントを確認して必要な近似値を決定する必要があります。Oracle GoldenGateでは、サポートされている精度を超える値は丸められるか切り捨てられます。
シングルバイト文字型は、TeradataのソースとTeradataのターゲット間と他のデータベースとTeradata間に設定されているシングルバイトのラテン文字内で完全にサポートされています。VARCHAR
列またはCHAR
列の長さは、32k-1バイトを超えることはできません。UTF-16を使用する場合、この長さは16k-2文字です。
マルチバイト文字データに関するサポートの条件および制限事項を次に示します。
Windowsレプリケーション・サーバーまたはLinuxレプリケーション・サーバーにOracle GoldenGateをインストールしてください。
Teradata ODBCドライバ12.0.0.xまたはそれ以降のバージョンを使用してください。
マルチバイト・データ型にフィルタリング、マッピングおよび変換を使用しないでください。
ソースのTeradata表に使用できるのは、CHAR
、VARCHAR
、INTEGER
、SMALLINT
、DATE
、TIME
およびTIMESTAMP
列のみです。マルチバイト・データ型をレプリケートしている間は、その他のデータ型をレプリケートすることはできません。
CHAR
列またはVARCHAR
列の長さは、32k-1バイトを超えることはできません。UTF-16を使用する場合、それらの列の長さは16k-2文字を超えることはできません。
初期化ファイルでODBCドライバおよびTeradata Access Module (TAM)をUTF-16キャラクタ・セットに設定します。
Replicatグループを作成するときに、ADD REPLICAT
コマンドでNODBCHECKPOINT
オプションを使用してください。Replicatデータベースのチェックポイント機能では、UTF-16文字セットに設定されているODBCドライバはサポートされません。チェックポイントはディスク上のチェックポイント・ファイルに保持されます。
Linux上でUnicodeをサポートするには、Oracle GoldenGateをパススルー・モードで構成し、ODBC Teradata Linuxドライバを12.0.0.7以降のバージョンあるいは13.0.0.5以降のバージョンにする必要があります。パススルー・モードの詳細は、Oracle GoldenGateリファレンスfor Windows and UNIXのPASSTHRU
パラメータに関する項を参照してください。
制限事項はありません。これらのデータ型は、ソースのTeradataとターゲットのTeradata間および他のソース・データベースとターゲットのTeradata間でサポートされています。
ラージ・オブジェクト・データ型に関するサポートの制限事項を次に示します。
UDTをレプリケートするには、ターゲット・データベースをTeradata Database 12.00.00.01以降にする必要があります。
ラージ・オブジェクトを他のデータベースからTeradataにレプリケートするには、ターゲット・システムでTeradata ODBCドライバ12.0以降のバージョンを使用してください。ターゲットでは、ODBCによって配布されるラージ・オブジェクトをサポートする必要があります。
ODBC構成ファイルでUseNativeLOBSupport
フラグを有効にしてください。Teradata ODBCドキュメントを参照してください。
日付データ型に関するサポートの制限事項を次に示します。
日付型は、Teradataのソース・データベースとターゲット・データベース間で完全にサポートされています。さらに、ターゲット列のサイズがソースのサイズ以上である場合には、TeradataとOracle間でINTERVAL
がサポートされます。
DATE
、TIME
およびTIMESTAMP
は、別のタイプのソース・データベースからTeradataにレプリケートするときに完全にサポートされます。
TIME with TIMESZONE
、TIMESTAMP with TIMEZONE
およびINTERVAL
は、別のタイプのソース・データベースからTeradataへはサポートされません。
Oracle GoldenGateでは、0001/01/03:00:00:00から9999/12/31:23:59:59までのタイムスタンプ・データをサポートしています。タイムスタンプをGMTからローカル時間に変換すると、これらの制限は変換後のタイムスタンプにも適用されます。タイムゾーンによっては変換で時間が前後することがあり、それが原因でタイムスタンプがサポートされている上限または下限を超える場合があります。
Oracle GoldenGateでは、マイナスの日付はサポートされていません。
この項では、Oracle GoldenGateでサポートされているデータ操作およびデータベース・オブジェクトをリストします。
次のいずか1つの条件を満たしている場合に、Teradata DDLステートメントをレプリケートできます。
DDLステートメントがレプリケーション・グループのメンバーである表に作用すること。
DDLステートメントがユーザー定義のレプリケーション・ルールに一致すること。
DDLステートメントによって、レプリケーション・グループの特定のプロパティが変更されること。
表1-2は、Oracle GoldenGateでサポートされているTeradata DDL操作を示します。文の長さは最大2MBまでサポートされています。少なくともTAM 13.0が必要です。ソースおよびターゲットの両方のデータベースをTeradata Database 13.0またはそれ以降のバージョンにする必要があります。
表1-2 サポートされているTeradata DDL
操作 | オブジェクト |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
脚注 1 レプリケーション・グループのメンバーである表のDDL操作が自動的にキャプチャされます。
脚注 2 表の一時的な実体化状態を参照するDDLステートメントはレプリケートできません。
脚注 3 データ・ディクショナリにユーザー定義のオブジェクト記述を作成するCOMMENT
文のみが取得されます。
脚注 4 表のアクセスおよび結合計画を生成するためにオプティマイザで使用されるオプティマイザ・フォームのみがキャプチャされます。
注意: DDLサポートの実際のサイズには、文のテキストに加え、オブジェクト名の長さ、DDL型および内部でのDDLレコード保持のその他の特性に応じて異なるOracle GoldenGateのメンテナンス・オーバーヘッドも含まれるため、実際のサイズ制限は概算です。 |
レプリケーション・グループのプロパティを変更する次のDDLステートメントは、自動的にレプリケートされます。
ADD
句/DROP
句を含むALTER REPLICATION GROUP
CREATE REPLICATION RULESET
REPLACE REPLICATION RULESET
DROP REPLICATION RULESET
注意: 新しいセキュリティ・トークンの生成に使用される |
その他のサポートの制限事項および構成手順の詳細は、第5章「TeradataデータベースへのDDL同期の構成」を参照してください。