Oracle Databaseの「19c」に続くLong Term Release(長期リリース)である「23ai」がリリースされました。
Oracle Database 23aiにはさまざまな機能が追加されましたが、本記事ではその中でも「JSON Relational Duality」にフォーカスして紹介します。
はじめに
2023年にOracle Cloud InfrastructureのPaaSサービスOracle Base Database Serviceから、「23c」が先行リリースされており、
2024年に23シリーズのバージョン名称が「23ai」になりました。
Oracle Database 23aiは、非CDB構成がサポート対象外となって以降のLong Term Releaseで、初めてのバージョンリリースです。
本バージョンで登場したさまざまな新機能の中から、今回は「JSON Relational Duality」にフォーカスして紹介します。
JSON Relational Dualityの特長
JSON Relational Dualityは、JSONデータとリレーショナルデータをシームレスに統合・操作できる新しいアーキテクチャです。
リレーショナル表に対して作成した「JSON Relational Duality View」により、JSONデータの構築やJSONデータの分解をデータベース側で自動的に実施してくれます。
この機能により、開発者やデータベース管理者は、以下のような利点を享受できます。
①柔軟なデータモデリング
- JSONの半構造化データとリレーショナルの構造化データを同一データベース内で共存させることが可能になる。
- スキーマレスなJSONデータと、固定スキーマのリレーショナルデータの両方を効率的に管理できる。
②統一されたクエリインターフェース
- SQLとJSONクエリを統合し、単一のクエリ言語で両方のデータ形式にアクセス・操作することが可能になる。
- 複雑なデータ変換や統合処理を簡素化できる。
③パフォーマンスの最適化
- JSONデータとリレーショナルデータのアクセスパターンに応じた最適なインデックスやストレージ戦略を自動的に適用できる。
- データ処理の高速化とリソースを効率的に利用できる。
④開発の生産性向上
- 異なるデータ形式間のマッピングや変換作業が不要になり、開発サイクルを短縮できる。
- 一貫したデータアクセス方法により、コードの可読性と保守性が向上する。
上記の通り、さまざまな利点があることが分かります。
通常、JSONデータをいずれかのデータベースで管理するには、JSONデータをドキュメントとして、単一の列にすべてのキー情報をJSON形式で格納することが一般的です。
※MongoDB , MySQL(JSON Data Tyep) , PostgreSQL(JSONデータ型)等
格納するという観点では問題はなかったのですが、データ管理をする上では大きく2つの観点で問題が発生します。
- 複数JSONデータの中で、共通キー値があるにも関わらず、重複して管理する必要がある。
- 特定JSONデータの複数セッションからの同時更新の制御を、アプリケーション側で別途考慮する必要がある。
上記の問題を解決してくれるのが、新機能「JSON Relational Duality」です。
本機能を利用することで、重複しているJSONデータの共通キー値をリレーショナル表で管理することができます。そうすることでJSONデータの保存や更新効率の向上が図れるとともに、データの一貫性を確保することが可能になります。
また、複数セッションからの同時更新の制御として「etag」という機能が実装されています。「etag」は、JSONデータから算出されるハッシュ値をもとに値を比較することで、複数セッションからの同時更新によるデータ損失を防止しつつ、同様の機能をアプリケーション側で実装するといった対応が不要になります。
JSONデータを従来の保存方法で実施している場合、データの変換、それに伴うSQL生成といったデータ変換処理をアプリケーション側で実装する必要があり、アプリケーションの開発コストが増加したり、システムが複雑になったりします。
本機能を利用することで、最初の技術面の習得に時間やコストを費やす必要はありますが、ロングスパンで見た際には、開発コストの低下やビジネスサイクルの高速化につながると考えられます。
おわりに
今回はOracle Database 23ai の新機能であるJSON Relational Dualityについてご紹介しました。
JSON Relational Duality はOracle Database 23aiが提供する革新的な機能で、JSONベースのアプリケーションと従来のリレーショナルアプリケーションを統合することで、より効率的なデータ操作が実現可能になります。
また名前からも分かる通り、本バージョンはAIに重点をおいており、JSON Relational Duality以外にもAIを用いたさまざまな機能が追加されています
導入をご検討の際は、ぜひシステムエグゼまでお気軽にお問い合わせください。
- カテゴリ:
- エンジニアリング
- キーワード:
- OracleDatabase23ai