データ主権のユースケース
架空の大手金融機関であるShard Bankは、複数の国でユーザーにクレジット・サービスを提供しようとしています。クレジット・サービスが提供される各国には独自のデータ・プライバシ規制があり、個人を特定できる情報(PII)データを当該国に保存する必要があります。
データへのアクセスを制限する必要があり、ある国のデータ管理者は他の国のデータを表示できません。このユースケースのソリューションは、様々な国でシャードが構成されたユーザー定義のシャーディングと、データ・アクセス制御のためのReal Application Security (RAS)または仮想プライベート・データベース(VPD)です。
データ主権ソリューションの概要
このデータ主権ソリューションは、国内のデータ記憶域を提供し、すべてのデータのグローバル・ビューもサポートしています。
グローバル分散データベースは、そのデータベースが存在する必要がある国を示すキーによってパーティション化されます。国内のアプリケーションは通常どおりローカル・データベースに接続し、すべてのデータはローカルに保存および処理されます。
マルチシャード問合せは、シャード・コーディネータに転送されます。コーディネータは問合せをリライトし、必要なデータがある各シャード(国)に送信します。コーディネータは、すべての国からの結果を処理して集計し、結果を返します。
Oracle Globally Distributed Databaseでは、次の機能でこのユースケースが可能になります。
- 国内の問合せのシャードへの直接ルーティング。
- ユーザー定義のシャーディング方法により、国の範囲またはリストを使用して、シャード間でデータをパーティション化できます。
- Oracle Active Data Guardを使用してレプリケーションを自動構成し、レプリカを国内に制限します。
- 既存のデータベースを分散データベースに変換および追加するためのデータ・フェデレーション・サポート(Oracle Database 21c以降)。詳細は、フェデレーテッド分散データベースの作成を参照してください。
- シャーディング・キーの自動導出(Oracle Database 21c以降)。
この方法のメリットは次のとおりです。
- 各シャードは、国内のクラウドまたはオンプレミスに配置できます。
- シャードは様々なクラウド・プロバイダを使用でき(マルチクラウド戦略)、シャードのレプリカを異なるクラウドまたはオンプレミスに配置できます。
- オンライン再シャーディングにより、クラウド間、またはクラウドとオンプレミスとの間でデータを移動できます。
- データ主権の厳格な施行により、不注意によるリージョンをまたいだデータ漏えいを防止します。
- データの重複を低減した単一のマルチモデル・ビッグ・データ・ストア。
- 1つのリージョン/LOB内の計画/計画外停止時間が他のリージョン/LOBに影響しないため、より優れた障害分離が実現します。
- ビジー状態のパーティションとシャードを必要に応じて分割できます。
- 完全なACIDプロパティのサポートは、トランザクション・アプリケーションにとって重要です。
データ主権のデプロイ・トポロジ
このユースケースの例では、フランクフルト(Region1 FRA)、アムステルダム(リージョン2 AMS)、およびロンドン(リージョン3 LON)の3つのリージョンにまたがるOracle Cloud Infrastructureに分散データベースを作成します。
データ主権ユース・ケースの構成
次のトピックのステップを実行して、Oracle Globally Distributed Databaseデータ主権ユース・ケースを構成します。
3つのOCIリージョンすべてにおけるVCNネットワークの構成
Oracle Cloud Infrastructure (OCI)では、仮想クラウド・ネットワークは、インスタンスが実行される従来のネットワークの仮想バージョンです。各リージョン(FRA、AMSおよびLON)に仮想クラウド・ネットワーク(VCN)をデプロイして構成します。
- プライベート・サブネットの新しいルート表を作成し、プライベート・サブネットに関連付けます。デフォルトのルート表はパブリック・サブネットにのみ使用し、プライベート・サブネットには専用のプライベート・ルート表を設定することが適切です。
- インターネット・ゲートウェイを作成し、デフォルトのルート表に関連付けます。
- ネットワーク・アドレス変換(NAT)ゲートウェイであるサービス・ゲートウェイを作成し、プライベート・サブネットのルート表に関連付けます。
- VCN名/CIDER: シャーディングVCN FRA 10.0.0.0/16
- パブリック・サブネット名/CIDER: public_fra 10.0.5.0/24
- プライベート・サブネット名/CIDER: private_fra 10.0.6.0/24
ノート:
シャーディング・デプロイメントで使用されるすべてのリージョンでステップを繰り返します。サブネットCIDERは各リージョンで異なる必要があり、VCN/サブネット名にリージョン接頭辞を指定する必要があります。3つのリージョン間のリモートVCNピアリングの構成
リモートVCNピアリングは、異なるリージョンにある2つのVCNを接続することで、トラフィックをインターネット経由でルーティングすることなく、プライベートIPアドレスを使用してVCNのリソースが通信できるようにするプロセスです。
リージョン間のネーミング解決のためのプライベートDNSの構成
各リージョンのドメインごとにパブリック・サブネットとプライベート・サブネットのプライベート・ビューを作成し、1つのゾーン内に合計6つのプライベート・ゾーンを作成します。その後、すべてのエントリが各プライベート・ゾーン構成に追加されます。
- プライベートDNSゾーンを作成および管理するには、プライベートDNSに関する項を参照してください。
- 次のタスクに進む前に、すべての名前が正しく解決されていることを確認します。
ノート:
これらの手順は、名前を正しく解決できるように、すべてのVCN/VMの各リージョンで実行する必要があります。各リージョンへのグローバル・サービス・マネージャのインストール
Oracle Global Data Servicesグローバル・サービス・マネージャ(GSM)は、Oracle Globally Distributed Databaseによって、アプリケーションから分散データベース内の正しいシャードに問合せをルーティングするために使用されます。
- グローバル・サービス・マネージャ(Oracle Database 19c)ソフトウェアを要塞VMにダウンロードします。
- 最新バージョンのOPatchを適用します。
- 新しくインストールされたグローバル・サービス・マネージャ(Oracle Database 19c)に、利用可能な最新のOracle Databaseバンドル・パッチを適用します。
シャード・カタログおよびシャードのTNSエントリの収集
シャード・カタログ・データベースおよびシャード・データベースの構成用にGSMサーバーを準備するには、TNSエントリのコレクションが必要です。
シャード・カタログ・データベースは、シャード・カタログ・データベース・オブジェクトを格納するPDBにのみアクセスする必要があります。ただし、シャード・データベースには、アプリケーション・スキーマを格納する各シャードCDBおよびPDBのエントリを準備します。
シャード・カタログの構成
シャード・カタログは、Oracle Globally Distributed Databaseのメタデータを管理します。シャード・カタログ・データベースとなるリージョン1 (FRA)でデータベースを構成します。
Oracle Globally Distributed Databaseの作成
グローバル・サービス・マネージャ・リスナーを構成し、シャード・カタログ・データベースを作成して、すべてのシャードを構成に追加します。デプロイメント・ステップでは、すべてのシャードを単一のグローバル・データベースとして構成します。