Oracle GoldenGateでは、シャーディングされたOracle Databaseに密接に対応するプラットフォームが提供され、様々なシャーディング・データベース・トポロジにまたがるデータ・レプリケーションを実現できます。
Oracle GoldenGateでは、シャーディングされたOracle Databaseに密接に対応するプラットフォームが提供され、様々なシャーディング・データベース・トポロジにまたがるデータ・レプリケーションを実現できます。事前構成済のOracle GoldenGateレプリケーションがGDSCTL DEPLOY
コマンドにおいて提供される他に、シャーディング・データベースのすべての機能が含まれます。
Oracle GoldenGateでは、シャーディングされたOracle Databaseに密接に対応するプラットフォームが提供されます。
シャーディングに対応するのは、Oracle Database 12.2.0.1以上でセキュアなMAデプロイメントを使用する場合のみです。SSL証明書を設定したことを確認してからシャーディングを設定する必要があります。シャーディングされたOracle DatabaseをOracle GoldenGateで構成するには、「Oracle GoldenGateでシャーディングを構成する方法」を参照してください。
Oracle GoldenGateシャーディングのメリット
Oracle GoldenGateでは、シャーディング・データベースに対応する完全なデータ・レプリケーション・プラットフォームが提供されます。
これは次のメリットを備えた強力な機能です。
データとワークロードを、ハードウェアまたはソフトウェアを共有しない多数の個別Oracleデータベースに水平にパーティション化します
単一シャード問合せおよびシャード間問合せに対して、自動パーティション化およびレプリケーション、エラスティック・スケーリング、リバランス、データ依存ルーティングを有効にします
次のような新世代の開発者にエンタープライズ規模のデータベース・プラットフォームを提供します。
フォルト・トレランスに応じてアプリケーションが直線的に拡張するように明示的に設計
JSONを使用してスキーマに柔軟性を付加
リレーショナルSQLおよびACIDの性能にメリットがあると認識
シャードグループ内およびシャードグループ間でのアクティブなレプリケーション
高可用性に対応する1つのシャードグループと、多様なレプリケーション・ファクタが設定された複数のシャードグループが含まれる、柔軟性の高いデプロイメント
様々なシャードグループで、レプリケーション・ファクタ、シャード数、ハードウェア・プラットフォーム、OSバージョン、データベース・バージョンおよびパッチ・セットが異なっていることが可能です。
親トピック: Oracle GoldenGateシャーディングの使用
シャーディングを有効にする場合は、セキュアなデプロイメントを設定する必要があります。
前提条件
シャーディング設定を開始する前に、次の前提条件を満たす必要があります。
カタログおよび各シャード・データベースのためのOracle Databaseのインストールを完了します。
Oracle GoldenGateクライアント証明書を格納するためのggshd_wallet
ディレクトリを、$ORACLE_BASE/admin
($ORACLE_BASE
が定義されている場合)または$ORACLE_HOME/admin
($ORACLE_HOME
が定義されている場合)内に作成します。
カタログと各シャードのために少なくとも1つのOracle GoldenGate MAインスタンスをインストールします。
Oracle GoldenGate MAサーバーおよびクライアントのウォレットと証明書を生成します。
SSL証明書で識別されるシャーディング・クライアントを認可します。
(推奨)高可用性を実現しシャードのパッチ適用を簡略化するために、各シャードには1つのOracle GoldenGateデプロイメントのみを割り当てます。
セキュリティ証明書を生成する方法の詳細は、「セキュアなデプロイメントおよびセキュアでないデプロイメントの設定」を参照してください。
Oracle GoldenGateでのシャーディング構成
ベスト・プラクティスとして1つのデプロイメントを各シャード専用とすることをお薦めします。こうすることで高可用性が保証されます。Oracle GoldenGateのシャーディングを利用するメリットの詳細は、「シャーディング・データベースに対するOracle GoldenGate」を参照してください。
shardcatalog
からのシャードの追加またはシャードの作成の際にシャーディングを構成するために必要です。Oracle GoldenGate Configuration Assistant (OGGCA)を使用してセキュア・モードでデプロイメントを追加します。「セキュアなデプロイメントとセキュアでないデプロイメントを作成する方法」を参照してください。
クライアント証明書をggshd_wallet
にインポートします。シャード上でOracle GoldenGate MAサーバーが起動されて実行していることを確認します。
シャーディング・データベースの設定を準備するためにOracle Sharding Coordinator (カタログ・データベース)に接続します。
$OGG_HOME/lib/sql/sharding
ディレクトリにあるOracle GoldenGateシャーディング・ブートストラップ・スクリプトをロードします。これは1回かぎりのタスクです。
Oracle Sharding Coordinatorで次のコマンドを実行します。
shardcatalog load (as SYS)
:
$OGGHOME/lib/sql/sharding/ggsys_setup.sql
シャードを追加する前に次のコマンドをロードします(as SYS
)。
$OGGHOME/lib/sql/sharding/orashard_setup.sql <serviceManagerURI>/<OGGDeployName> <ggadmin_password> <shardconnect_string>
注意:
このコマンドはシャードを作成するときには必要ありません。Oracle GoldenGateでシャードを構成するには次の2つの方法があります。
シャードの作成: 実行時に新しいデータベースを設定します。次のコマンドがGDSCTLシェル・インタフェースから発行されます。『Oracle Database管理者ガイド』のシャーディング・データベース・デプロイメントに関する項を参照してください。
create shardcatalog -database bpodb12s:1521/sdbcat1 -user gsmcatuser/gsmcatuser -repl OGG -sharding SYSTEM -chunks 36 add gsm -gsm gsm1 -listener 1540 -catalog bpodb12s:1521/sdbcat1 -pwd gsmcatuser add shardgroup -shardgroup shgrp1 -repfactor 3 add shardgroup -shardgroup shgrp2 -repfactor 2 … create shard -shardgroup shgrp1 -destination host01 -CREDENTIAL gds_oracle -netparam none -gg_service host01:9000/deploy1 -gg_password ggadmin pw create shard -shardgroup shgrp1 -destination host02 -CREDENTIAL gds_oracle -netparam none -gg_service host02:9000/deploy2 -gg_password ggadmin status configure add service ... start service ..
親トピック: Oracle GoldenGateシャーディングの使用