※ 本記事は、Deeksha Sehgal による”Unveiling the Power of Oracle Globally Distributed Database: Oracle Database 23ai Advancements“を翻訳したものです。
2024年5月2日
データベース・テクノロジーの領域において、Oracle Database 23aiは進歩の波を先導することによって変革の時代を迎えます。このような進化の中でも、Oracle Globally Distributed Database の機能強化が特に注目されています。このリリースに向けて、私たちは分散データ環境に合わせた先駆的な機能の統合に注目しています。このブログはプレビューとして、Oracle Database 23aiがOracle Globally Distributed Databaseにもたらすエキサイティングな機能強化に焦点を当てます。これらの機能は、課題に対処するだけでなく、分散データベース運用の展望を再構築し、高いパフォーマンスと比類のない効率性を実現する態勢を整えています。これらの革新的な機能の詳細を掘り下げていくと、Oracle Database 23aiは、分散データ・シナリオの可能性を最大限に活用するためのツールを企業に提供する、極めて重要なマイルストーンとして浮かび上がってきます。このブログでは、Oracle Database 23aiがOracle Globally Distributed Databaseの機能をどのように向上させ、卓越した新時代に突入させるかについての洞察を提供しながら、これらの機能強化について説明します。
新機能 : Oracle Globally Distributed Database 23ai
1. Raft レプリケーション
Oracle Database 23aiで導入された特筆すべき機能のひとつに、Raftレプリケーション(コンセンサス・ベースのレプリケーション・プロトコル)があります。Raftレプリケーションは統合されており、アプリケーションに対して透過的です。シャードホストの障害時や、シャード化されたデータベースにシャードが追加または削除された場合に、レプリケーションを自動的に再構成します。システムはレプリケーション係数を宣言的に構成し、常に利用可能な指定数のレプリカを確保します。ノード障害が発生した場合、フェイルオーバーは即座に行われ、すべてのノードがアクティブな状態を維持します。重要なのは、この機能には秒以下の自動フェイルオーバー・メカニズムが含まれており、データの完全性と運用の継続性が強化されていることです。この機能は、可用性と拡張性の高いデータベースシステムを必要とする組織に適しています。
データの整合性とシームレスな運用の確保
Raft レプリケーションは、分散データベース環境に合理的な管理と高い可用性をもたらします。これは、可用性とデータの整合性を常に確保することが最重要となるシナリオにおいて極めて重要です。シームレスなフェイルオーバーを実現し、ノード間で一貫性のあるデータを維持することで、Raft レプリケーションは最適なユーザエクスペリエンスを提供し、厳格な SLA を満たすことを可能にします。このメリットは、アップタイムとデータの一貫性がビジネスの成功に直結する重要なアプリケーションにおいて特に重要です。

![]()
Raft Replication
2. ディレクトリ・ベースのシャーディング・メソッド
ディレクトリベースのシャーディングは、ユーザー定義の多用途なアプローチを導入しており、シャーディング・キーに関連するデータレコードのロケーションは、ユーザーの好みに基づいて挿入時に動的に指定されます。このプロセスでは、キーの位置情報をディレクトリ内に格納し、数十万にも及ぶ膨大なキー値のコレクションを格納します。この技術は、個々のキー値をロケーション間で動的に移動させることを容易にするだけでなく、効率的な一括移動も可能にしています。キー値を適応的に移動させる機能は、高度なカスタマイズ性を提供し、データベースやクラスタ間のデータ管理、スケーラビリティ、ロードバランシングを強化します。
拡張データ編成のキー値グループ化
ディレクトリベースのシャーディングは、アフィニティ目的で特定のキー値を同じ場所やチャンクにグループ化する必要がある場合に便利で、必要に応じてこのグループを効率的な方法でまとめて移動することができます。
例えば、ソーシャル・ネットワーク・アプリケーションでは、同じシャード上で頻繁にメッセージを交換する顧客をグループ化することで、シャード間のトラフィックを最小限に抑えることができます。シャード間でデータを移動する際には、再シャーディングの際にもグループ化を維持する必要があります。一方、あるグループのメンバーが別のグループのメンバーとより多くのコミュニケーションを開始した場合、アプリケーションへの影響を最小限に抑えながら、そのデータを適切なグループに移動する必要があります。
3. シャーディング・キー更新時の自動データ移動
シャーディング・キー更新時の自動データ移動は、Oracle Globally Distributed Databaseの強力な属性であり、シャーディング・テーブル内のデータ管理を合理化する。シャーディング・キー値の更新が必要になることがあります。以前の解決策は、古いキー値に関連付けられたデータを削除し、新しいキー値で再挿入することでした。この機能強化の目的は、シャード内とシャード間の両方で行の移動を可能にすることです。
シャード化されたテーブルの特定の行のシャーディング・キー値が更新されると、同じシャード上の別のパーティションであろうと、別のシャード上であろうと、データの新しい場所への移動はOracle Globally Distributed Databaseによって処理されます。
この機能により、Oracle Globally Distributed Databaseは、行の移動先が異なるシャード上であろうと関係なく、行の移動を処理することができるため、レコードの移動先を気にすることなく、シャーディング・キーを柔軟に更新することができます。
合理化されたデータ更新
シャーディングされたテーブルを持つグローバルなeコマース・プラットフォームでは、シャーディング・キーの更新に伴うデータの自動移動により、シームレスな移行が保証されます。例えば、顧客が移転した場合、その注文履歴は新しい地域のシャー ドに簡単に移行され、手作業は不要になります。この動的な再配置により、効率的なシャーデッドテーブル管理が可能になり、データの整合性が維持され、変更があってもユーザーサービスが中断されることはありません。
4. 重複表のファイングレイン・リフレッシュ・レート制御
重複表のファイングレイン・リフレッシュ・レート制御は、個々の重複表のリフレッシュ・レート制御を可能にする強力な機能です。この機能により、テーブル作成時または ALTER TABLE ステートメントを使用して、さまざまなリフレッシュ間隔を構成できます。データ変更頻度に合わせてリフレッシュ・レートを調整することで、リソース利用率の最適化が実現します。この機能は、重複表ごとにリフレッシュ・レートをカスタマイズすることにより、システムのパフォーマンスと効率を向上させます。
データ・リフレッシュのカスタマイズ
データ変更レートがテーブルによって異なる複雑なデータ環境では、きめ細かなリフレッシュ・レート制御が不可欠です。高頻度のトランザクション・テーブルと、それほど頻繁に変更されない参照テーブルを持つ販売データベースを想像してみてください。この機能により、トランザクション頻度の高いテーブルの更新頻度を高く設定し、リアルタイムのインサイトを確保することができます。同時に、参照テーブルの更新頻度を下げ、リソースを節約します。このカスタマイズは効率を最大化し、リソース割り当てを合理化し、システム・パフォーマンスを強化します。
5. 同期重複表
同期重複表の導入により、すべてのシャードで重複表を同期するための堅牢なメカニズムが提供されます。この機能により、シャード・カタログ上で’オン・コミット’されたシャード上で同期される新しい種類の重複表が導入されます。この同期は、シャード・カタログ内の重複表に対してデータ操作言語(DML)操作を実行するアクティブ・トランザクションがコミットされたときに発生します。この機能により、すべてのシャードでデータの一貫性とリアルタイムの同期が保証され、データ整合性の高さが強調されます。
リアルタイムでのデータの一貫性の確保
金融システムのようなデータ集約型環境では、同期複製テーブル機能が重要な役割を果たします。トランザクションは複数のシャードにまたがるため、この機能により、トランザクションのコミット時にすべてのシャードで重複テーブルデータが即座に同期されます。財務データは一様に正確であり続け、格差が縮小され、リアルタイムの洞察が得られます。特に精度に依存する分野では、この機能は分散システムにおけるデータの整合性と信頼性を確固たるものにします。
6. シャード・データベースのバックアップ・リストアの機能強化
Oracle Globally Distributed Databaseのバックアップとリストア機能が拡張され、以下のようになりました:
- バックアップジョブのエラー処理と診断の強化
- シャード化されたデータベースのリストア自動化の改善
- GDSCTLからのRMANコマンド実行のサポート
- シャードごとに異なるRMANリカバリ・カタログの使用をサポート
- バックアップセットの暗号化
- バックアップ先の追加サポート: Amazon S3、Oracle Object Storage、およびZDLRA
この機能のメリット:
- バックアップジョブの問題を簡単に診断
- バックアップセットを暗号化し、データを保護することができます。
- オンディスク・ストレージ以外のバックアップ先をサポート
- 異なるRMANカタログと宛先をサポートし、データ残存性要件に準拠します。
この機能は、バックアップとリストアジョブの診断と自動化を強化し、暗号化によってデータを保護し、追加のバックアップ先をサポートします。
堅牢なデータ保護とリカバリ
シャード化されたeコマース・プラットフォームが壊滅的なデータ損失イベントに直面するシナリオを想像してみてください。強化された協調バックアップとリストア機能を利用することで、システムは優れたエラー処理、自動化されたリストアプロセス、Amazon S3やOracle Object Storageなどの幅広いバックアップ先オプションを得ることができます。さらに、暗号化されたバックアップセットはデータセキュリティを強化します。この機能により、バックアップ問題の迅速な診断、暗号化によるデータ保全の保護、効率的なデータ復元が保証され、ダウンタイムを最小限に抑え、運用の回復力を維持することができます。
7. パラレル・クロス・シャードDMLサポート
Oracle Globally Distributed Databaseのクエリコーディネータは、複数のシャード上でクロス・シャード更新と挿入を並行して実行できます。この機能は、更新と挿入をシリアルではなくパラレルで実行することにより、クロスシャードDMLのパフォーマンスを向上させます。
オンライン在庫管理
グローバルに分散したデータベースを使用するオンライン小売ビジネスでは、オラクルのパラレル・クロス・シャード DMLサポート が在庫管理において重要な役割を果たします。複数の地域にまたがる商品の補充や価格の更新を行う場合、この機能によって異なるシャード・ロケーションへの同時更新や挿入が可能になります。これにより、在庫データが同期され、価格がリアルタイムで調整され、顧客の注文が効率的に処理されるため、小売業者は在庫管理を最適化しながら、顧客にシームレスなショッピング体験を提供できます。
8. SQL*Loaderを使用した自動パラレル・ダイレクト・パス・ロード
SQL*Loader はデータベースシャードへの直接データロードを可能にし、高速なデータ取り込みを実現します。SQL*Loaderは、自動並列処理とより効率的なデータストレージにより、Oracle Databaseへのデータロードをより高速かつ簡単に行うことができます。
このリリースでは、SQL*Loaderクライアントが、データを別々のファイルに分割したり、複数のSQL*Loaderクライアントを起動したりすることなく、自動的にデータの並列ダイレクトパスロードを開始することができます。並列ロードのためにテーブルを手動で準備し、PARALLELパラメータを設定する代わりに、SQL*Loaderを1つのコマンドで実行し、DEGREE_OF_PARALLELISMパラメータを使用して並列度を設定し、DIRECT=TRUEを設定するだけで、同じタスクを自動的に実行することができます。
財務分析のための大量のデータ取り込み
金融サービス企業では、さまざまなソースからの膨大な量のマーケットデータを管理することが、タイムリーで正確な分析を行うために最も重要です。SQL*Loaderを使用した自動パラレル・ダイレクト・パス・ロード機能により、この組織は膨大なデータセットをOracle Globlly Distributed Databaseにシームレスに取り込むことができます。手間のかかる手作業による準備の代わりに、SQL*Loaderはプロセスを簡素化し、組織はリアルタイムの財務分析のための効率的で高速なデータ取り込みを実現し、情報に基づいた意思決定と競争上の優位性を得ることができます。
最後に、Oracle Database 23aiは、データベース・テクノロジーの世界に画期的な進歩をもたらします。Oracle Globally Distributed Databaseの最適化に重点を置いたこれらの革新は、分散データベース運用の世界に革命をもたらすことでしょう。
Raftレプリケーションのダイナミックな機能からDirectory-Based Shardingの俊敏性まで、これらの機能は、企業がリージョン間でデータを管理する方法を再定義します。シャーディング・キー更新時の自動データ移動は、進化するシナリオでのシームレスな移行を保証し、きめ細かなリフレッシュ・レート制御はリソース利用を最適化します。同期重複表の導入により、リアルタイムのデータ一貫性が保証され、信頼性が向上します。また、パラレル・クロスシャード DML サポートは、更新と挿入の並列実行を可能にすることで、クロスシャードのデータ管理に革命をもたらし、効率を高めます。さらに、SQL*Loader を使用した自動パラレル・ダイレクト・パス・ロードにより、大量のデータ取り込みが簡素化され、膨大な市場データを扱う組織の財務分析や意思決定プロセスに役立ちます。
Oracle Database 23aiは単なるアップグレードではなく、Oracle Globally Distributed Databaseの信頼性に支えられたこれらの機能によって、企業が分散データ・シナリオの可能性を活用できるようになる新しい時代を意味します。
より詳細は、Oracle Globally Distributed Database ガイド をご参照ください。
