Oracle Database 23aiは、データにAIを導入し、アプリケーション開発やミッション・クリティカルなワークロードをAIでシンプルに強化します。その仕組みをご覧ください。
このページでは、Oracle Database 23aiの新機能のご紹介とデモや活用例を毎週共有します。お客様はすぐに本番でお試しいただけます。このページを保存し、毎週チェックして新しい機能を確認しましょう。
この機能により、bigfile表領域を縮小してデータベース内の未使用領域を再利用できるため、コストを削減し、ストレージを最適化できます。表領域の縮小を使用すると、bigfile表領域のサイズを確実に縮小し、その中のオブジェクトの実際のサイズに合わせることができます。
Transparent Application Continuityは、C/C++、Java、.NET、PythonおよびNode.jsアプリケーションを、基盤となるソフトウェア、ハードウェア、通信およびストレージ・レイヤーの停止から保護します。
Memoptimize Rowstore Fast Ingestに拡張機能が追加されて、パーティション化、圧縮表、直接書込みを使用した高速フラッシュ、およびインメモリ列ストアの直接移入がサポートされるようになりました。
Oracle Globally Distributed Databaseは、Oracle Database 23cでRaftレプリケーション機能を導入しました。これにより、ノードまたはデータセンターの停止時にデータ損失なしで、非常に高速(3秒未満)のフェイルオーバーを実現できます。
True Cacheは、自動管理された一貫性のあるOracle Database用インメモリSQLキャッシュです。True Cacheインスタンスが主にディスクレスであり、ディザスタ・リカバリではなくパフォーマンスとスケーラビリティを目的として設計されていることを除けば、Oracle Active Data Guardリーダー・ファームと同様に動作します...
Transparent Application Continuityは、C/C++、Java、.NET、PythonおよびNode.jsアプリケーションを、基盤となるソフトウェア、ハードウェア、通信およびストレージ・レイヤーの停止から保護します。Oracle Real Application Clusters (RAC)、Active Data Guard (ADG)およびAutonomous Database (共有および専用)では、RACクラスタのノードまたはサブセットに障害が発生した場合や、メンテナンスのためにオフラインになった場合でも、Oracle Databaseに引き続きアクセスできます。
Oracle Database 23cでは、例えばセッション状態安定カーソルとも呼ばれるオープン・カーソルなど、バッチ・アプリケーションのサポートを含む多くの新しい機能強化が行われています。
行ロックを保持している間にトランザクションが長時間コミットまたはロールバックしない場合、他の優先度の高いトランザクションをブロックする可能性があります。この機能により、アプリケーションがトランザクションに優先順位を割り当てるため、管理者は優先順位ごとにタイムアウトを設定できます。優先順位の低いトランザクションが、設定されたタイムアウトを超えて優先順位の高いトランザクションをブロックした場合、データベースは優先順位の低いトランザクションを自動的にロールバックし、保持している行ロックを解除して、優先順位の高いトランザクションを続行できるようにします。
トランザクションの自動ロールバックは、管理者の負担を軽減すると同時に、優先順位の高いトランザクションのレイテンシ/SLAを維持するのに役立ちます。
Oracle Globally Distributed Databaseは、Oracle Database 23cでRaftレプリケーション機能を導入しました。これにより、ノードまたはデータセンターの停止時にデータ損失なしで、非常に高速(3秒未満)のフェイルオーバーを実現できます。Raftレプリケーションは、コンセンサスベースのコミット・プロトコルを使用し、レプリケーション・ファクタを指定することで宣言的に構成されます。分散データベース内のすべてのシャードは、データのサブセットのリーダーおよびフォロワーとして機能します。これにより、すべてのシャードがアプリケーション・トラフィックを処理するアクティブ/アクティブ/アクティブ対称分散データベース・アーキテクチャが実現します。
これにより、データ損失ゼロによる可用性の向上、管理の簡素化、およびGlobally Distributed Database環境のハードウェア使用率の最適化が可能になります。
リアルタイムのSQL計画管理(SPM)は、実行計画の変更によって生じたSQLパフォーマンスの問題を迅速に検出し、修復します。
SQL文が適切に実行されても、計画の変更によってパフォーマンスが不十分となった場合は、リアルタイムSPMによって即時に検出されます。元の計画のほうがパフォーマンスが優れていることが確定された場合、リアルタイムSPMはSQL計画ベースラインを使用してそれを再稼働します。
これにより、一部のDBAがすでに行っていることが自動化されます。つまり、SQL計画ベースラインを作成して、断続的なパフォーマンスの問題がある個々のSQL文をターゲットにし、正常だとわかっている計画を適用します。
True Cacheは、自動管理された一貫性のあるOracle Database用インメモリSQLキャッシュです。True Cacheインスタンスが主にディスクレスであり、ディザスタ・リカバリではなくパフォーマンスとスケーラビリティを目的として設計されていることを除けば、Oracle Active Data Guardリーダー・ファームと同様に動作します。アプリケーションは、読取り専用ワークロードのためにTrue Cacheインスタンスに直接接続できます。一般的な読取り/書込みJavaアプリケーションでは、コードの一部のセクションを単に読取り専用としてマークすることもできます。また、Oracle Database 23ai True Cache JDBCドライバでは、構成済のTrue Cacheインスタンスに読取り専用ワークロードを自動的に送信できます。
現在、多くのオラクルユーザーは、クエリ応答時間を短縮し、全体的なスケーラビリティを向上するために、Oracle Databaseの前にキャッシュを配置しています。True Cacheは、Oracle Databaseの前にキャッシュを配置する新しい方法です。True Cacheには、使いやすさ、データの一貫性、最新のデータ、キャッシュの自動管理など、多くの利点があります。
Oracle Database 19cの発表とともに導入されたブロックチェーンと不変表は、暗号化セキュリティ技術を使用して、外部のハッカーや不正な内部関係者によるデータの改ざんや削除からデータを保護します。
Oracle Database 23aiでは、列レベルでの選択性を備えた新しい統合監査機能が導入され、不要な監査レコードから「ノイズ」を低減する、ターゲットを絞った監査ポリシーを作成できます。
Oracle Database 23cに、新しいロール「DB_DEVELOPER_ROLE」が追加されました。このロールは、Oracle Databasesでのアプリケーションの設計、実装、デバッグおよびデプロイに必要なすべての権限をアプリケーション開発者に提供します。
SQLファイアウォールを使用すれば、異常を検出し、SQLインジェクション攻撃を防ぐことができます。SQLファイアウォールは、IPアドレスやOSユーザーなどのセッション・コンテキスト情報を含むすべてのSQLを検査します。
ブロックチェーンと不変表は、Oracle Database 19cのリリース以降利用可能になったもので、暗号化セキュアな方法を使用して、外部のハッカーや不正または侵入を受けた内部関係者によるデータの改ざんや削除からデータを保護します。これには、(DBAであっても)更新や削除を防止する挿入のみの制限、検証を可能にする暗号化ハッシュ・チェーン、大規模なロールバックを検出するための署名付き表ダイジェスト、秘密キーを使用したエンド・ユーザーによる挿入行の署名などが含まれます。Oracle Database 23cでは、Oracle GoldenGateによる論理レプリケーションやActive Data Guardを使用したローリング・アップグレードのサポート、ブロックチェーン表を含む分散トランザクションのサポート、期限切れ行の効率的なパーティションベースの一括削除、挿入およびコミットのパフォーマンス最適化など、多くの機能強化が行われています。
このリリースでは、暗号ハッシュ連鎖に影響を与えることなく列を追加および削除する機能、フィルタリングされた行に対するユーザー固有の連鎖および表ダイジェスト、委任署名機能、データベース・カウンターサインも導入されています。また、ブロックチェーン履歴テーブルを使用するように定義されたFlashbackアーカイブを介して、非ブロックチェーン表に対する履歴変更の監査を可能にすることで、暗号化セキュアなデータ管理を通常の表への拡張も行います。
組み込みの監査証跡やジャーナリングのユース・ケースに最適なこれらの機能は、財務台帳、支払い履歴、規制遵守の追跡、法的ログ、および改ざんや削除が法的、評判、または財務上の重大な結果につながる可能性のある資産を表すあらゆるデータに使用できます。
Oracle Databaseでは、ISO SQL標準に準拠したブール・データ型がサポートされるようになりました。これにより、True 値と False 値を表に格納し、SQL文ででブール式を使用できるようになります。
Oracle Databaseでは、UPDATEおよびDELETE文でFROM句を使用して対象表を他の表に結合できるようになりました。こうした他の表は、変更される行を制限したり、新しい値のソースになることがあります。
GROUP BY、GROUP BY CUBE、GROUP BY ROLLUPおよびGROUP BY GROUPING SETS句で、列の別名を使用したり、SELECTで項目の位置を使用できるようになりました。また、HAVING句でも列の別名がサポートされています。
アノテーションにより、データベース・オブジェクトに関するメタデータの保存および取得が可能になります。これは、アプリケーションがビジネス・ロジックやユーザー・インターフェースをカスタマイズするために使用できる自由形式のテキスト・フィールドです。
使用用途ドメイン(SQLドメインまたはアプリケーション使用用途ドメインとも呼ばれる)は、軽量タイプの修飾子として機能し、アプリケーションが意図するデータ使用用途を一元的に文書化する高レベルのディクショナリ・オブジェクトです。
Oracle Database 23cでは、開発者はINTERVAL値で合計および平均を簡単に計算できます。この機能拡張により、INTERVALデータ型をSUMやAVG集計関数および分析関数に渡すことができるようになりました。
INSERT、UPDATEおよびDELETE文のRETURNING INTO句は、それぞれの文の影響を受ける古い値と新しい値を報告するように拡張されています。これにより、開発者はこれらのDMLタイプそれぞれに同じロジックを使用して、文の実行前後の値を取得できます。UPDATE文では古い値と新しい値の両方が有効です。INSERT文では古い値は報告されず、DELETE文では新しい値は報告されません。
SQLコマンドの実行の一部として、INSERT、UPDATEおよびDELETE文の影響を受ける古い値と新しい値を取得する機能により、開発者はこれらの値を読み取るために統一されたアプローチを使用でき、データベースで実行する必要がある作業量を減らすことができます。
使用用途ドメイン(SQLドメインまたはアプリケーション使用用途ドメインとも呼ばれる)は、軽量タイプの修飾子として機能し、アプリケーションが意図するデータ使用用途を一元的に文書化する高レベルのディクショナリ・オブジェクトです。使用用途ドメインを使用すれば、データの使用用途を定義して操作を標準化することで、アプリケーション・レベルのメタデータを必要とせずに、一連のチェック制約、表示プロパティ、ソート・ルール、その他の使用プロパティをカプセル化できます。
表内の1つ以上の列に使用用途ドメインを使用しても、基礎となるデータ型は変更されないため、アプリケーションを破壊したり移植性の問題を生じることなく、既存のデータに追加できます。
Oracle Database 23cとCMAN-TDMは、暗黙的接続プーリング、複数プールDRCP、PDBごとのPRCPなど、クラス最高の接続管理および監視機能を提供します。
Oracle Database 23cでは、パイプライン化機能により、.NET、Java、C/C++アプリケーションは、サーバーからのレスポンスを待たずに複数のリクエストをデータベースに送信できます。
多言語エンジン(MLE)モジュール・コールを使用すると、開発者は、モジュールに格納されているJavaScript関数をSQLおよびPL/SQLから呼び出すことができます。PL/SQLで記述されたコール仕様によって、JavaScriptがPL/SQLコード・ユニットにリンクされます。
Oracle Database 23cの新機能として、Microsoft Azure App ConfigurationまたはOracle Cloud Infrastructure Object Storageに接続文字列などのOracle構成情報を格納するクライアント機能があります。
可観測性の3つの柱はメトリック、ロギング、分散トレースです。このリリースでは、強化されたロギング、新しいデバッグ(最初の障害時に診断)、新しいトレース機能が提供されます。
Oracle Database 23cでは、新しい自己完結型のXMLType ストレージ方法であるTransportable Binary XML(TBX)を導入しています。TBXはシャーディング、XML検索インデックス、Exadataプッシュダウン運用をサポートし、他のXMLストレージ・オプションよりも優れたパフォーマンスとスケーラビリティを提供します。
Oracle Database 23cでは、パイプライン化機能により、.NET、Java、C/C++アプリケーションは、サーバーからのレスポンスを待たずに複数のリクエストをデータベースに送信できます。Oracle Databaseは、これらのリクエストを1つずつキューに入れて処理し、クライアント・アプリケーションは、リクエストが完了するまで作業を続行できます。この拡張機能により、エンド・ユーザー・エクスペリエンスの向上、データドリブンのアプリケーション応答性の向上、エンドツーエンドのスケーラビリティ、パフォーマンスのボトルネックの回避、およびサーバー側とクライアント側での効率的なリソースの使用が実現します。
クライアント・リクエストがすぐに返されるように、Oracle Databaseパイプライン処理では、.NET、JavaおよびC/C++ドライバで非同期またはリアクティブAPIが必要です。これらのメカニズムは、データベース・パイプライン処理の有無にかかわらず、Oracle Databaseに対して使用できます。
Javaの場合、Oracle Database 23cには、Java Database Connectivity(JDBC)、Universal Connection Pool(UCP)およびOracle R2DBC Driverのリアクティブ拡張機能が用意されています。また、ドライバでのJava仮想スレッド(Project Loom)や、Reactor、RxJava、Akka Streams、Vert.xなどのReactive Streamsライブラリもサポートしています。
Oracle Database 23cの新機能として、Microsoft Azure App ConfigurationまたはOracle Cloud Infrastructure Object Storageに接続文字列などのOracle構成情報を格納するクライアント機能があります。この新機能により、Oracle JDBC、.NET、Python、Node.jsおよびOracle Call Interfaceデータ・アクセス・ドライバを使用したアプリケーション・クラウドの構成、導入および接続が簡素化されます。情報は構成プロバイダに格納されるため、アプリケーション・コードと構成を分離できるといった利点があります。
クラウドとデータベースへのアクセスにOAuth 2.0シングル・サインオンを使用することで、より管理がしやすくなります。Oracle Database 23cクライアントは、データベース・サインオンにMicrosoft Entra ID、Azure Active Directory、またはOracle Cloud Infrastructureのアクセス・トークンを使用できます。
Oracle Database 23cでは、新しい自己完結型のXMLType ストレージ方法であるTransportable Binary XML(TBX)を導入しています。TBXはシャーディング、XML検索インデックス、Exadataプッシュダウン運用をサポートし、他のXMLストレージ・オプションよりも優れたパフォーマンスとスケーラビリティを提供します。
シャーディングやExadataなど、より多くのデータベース・アーキテクチャをサポートし、異なるサーバー、コンテナ、PDB間でXMLデータを容易に移行および交換する機能により、TBXは、アプリケーションがより多くのプラットフォームとアーキテクチャで、この新しいXMLストレージ・フォーマットを最大限に活用できるようにします。
次のいずれかの方法で、異なる形式の既存のXMLTypeストレージをTBX形式に移行できます。
Insert-as selectもしくはcreate-as-select
オンライン再定義
Oracle Data Pump
JSONデータ型は、OSONと呼ばれるOracleで最適化されたバイナリJSON形式です。この形式は、リリース21c以降のデータベースとデータベース・クライアントで、問い合わせとDMLのパフォーマンスを高速化するように設計されています...
Oracle Database 23cで導入されたイノベーションであるJSON Relational Duality(JSONリレーショナル二面性)は、リレーショナル・モデルとドキュメント・データ・モデルを統合して、両方の長所を提供します...。
Oracle Databaseは、JSONでのスキーマ・フレキシブルなデータの格納と処理をサポートしています。Oracle Database 23cでは、Oracle DatabaseでJSONデータの構造と値を検証するJSONスキーマがサポートされるようになりました...
Oracle Database API for MongoDBを使用することで、開発者は、Oracleのマルチモデル機能および自動運転データベースにアクセスしながら、MongoDBのツールおよびドライバをOracle Databaseに接続して引き続き使用できます...
PL/SQL JSONコンストラクタは、対応するPL/SQL集計タイプのインスタンスを受け入れ、集計型データが移入されたJSONオブジェクトまたは配列型を返すように拡張されました。
Oracle Database 23cで導入されたイノベーションであるJSON Relational Duality(JSONリレーショナル二面性)は、リレーショナル・モデルとドキュメント・データ・モデルを統合して、両方の長所を提供します。開発者は、リレーショナルとJSONパラダイムのどちらからでも、信頼できる唯一の情報源(SSOT)にアクセスしてアプリケーションを簡単に構築でき、両方のモデルの長所を生かすことができます。データは一つのみ保管され、どちらのアプローチでもアクセス、書き込み、変更が可能です。開発者はACID準拠のトランザクションと同時実行性制御を利用できるため、複雑なオブジェクト・リレーショナル・マッピングやデータ不整合の問題との間でトレードオフを行う必要がなくなります。
Oracle Databaseは、JSONでのスキーマ・フレキシブルなデータの格納と処理をサポートしています。Oracle Database 23cでは、Oracle DatabaseでJSONデータの構造と値を検証するJSONスキーマがサポートされるようになりました。SQL演算子IS JSONがJSONスキーマを受け入れるように拡張され、JSONを検証し、表、ビュー、型などのデータベース・オブジェクトをJSONスキーマ・ドキュメントとして記述するためのさまざまなPL/SQLファンクションが追加されました。
デフォルトでは、JSONデータはスキーマレスであり、柔軟性が提供されます。ただし、業界標準のJSONスキーマ検証により、JSONデータに特定の構造と型を指定することもできます。
JSONスキーマへの貢献
オラクルは、JSONドキュメントに注釈を付けて検証できるJSONベースの宣言言語を標準化するオープン・ソースの取り組みであるJSONスキーマに積極的に貢献しています。現在、JSONスキーマはRFC(Request for Comments)です。
Oracle Database API for MongoDBを使用することで、開発者は、Oracleのマルチモデル機能および自動運転データベースにアクセスしながら、MongoDBのツールおよびドライバをOracle Databaseに接続して引き続き使用できます。お客様は、Oracle Cloud Infrastructure(OCI)上でMongoDBワークロードを実行できます。多くの場合、接続文字列を変更する以外に既存のMongoDBアプリケーションにはほとんど(またはまったく)変更を加える必要はありません。
Oracle Database API for MongoDBは、標準のOracle REST Data Servicesに含まれています。Oracle Autonomous Databaseの一部として事前構成され、完全に管理されています。
Oracle AI Vector Searchは、Oracle Database 23aiで導入された新しいコンバージド・データベース機能です。ベクトルを使用して、構造化データと非構造化データの両方に対する高速かつシンプルな類似性検索クエリを可能にします...
Oracle AI Vector Searchは、Oracle Database 23aiで導入された新しいコンバージド・データベース機能です。ベクトルを使用して、構造化データと非構造化データの両方に対する高速かつシンプルな類似性検索クエリを可能にします。AI Vector Searchでは、大規模言語モデル(LLM)へのプロンプトをプライベートビジネスデータやドメイン知識で拡張することもできます。
AI Vector Searchでは、ベクトルをネイティブ・データ型として格納し、ベクトル索引およびSQL関数を使用してベクトルに対して類似性検索を実行します。この機能を使用すると、ドキュメント、画像、その他の非構造化データから類似する情報をすばやく特定できます。
AI Vector Searchでは、構造化データと非構造化データの両方をすばやく検索し、その結果を従来のデータベース・クエリの結果と組み合わせることが簡単になります。ほぼすべてのタイプのソース・データとそれを表すベクトルを同一のデータベースにまとめて格納できるため、ITの複雑さが軽減され、データの一貫性が維持されます。AI Vector Searchは、検索拡張生成(RAG)と組み合わせることで、LLMユーザーに提供する回答の正確性の向上と、ハルシネーションの低減に役立ちます。
AI Vector Searchにより、開発者が既存のアプリケーションやデータベースに類似性検索機能を追加して維持することや、新しい機能を作成することが簡単になります。2つのユースケースは、ほぼすべての業界に適用されます。すべてのお客様がシンプルさを求めているため、オラクルは、データサイエンスの博士号の必要がないAIやMLを提供します。
AppDevは、複雑で時間のかかるものであってはならないとオラクルは考えています。最新の生成AIテクノロジーは、最先端のローコードAppDevをさらに推し進める絶好の機会をもたらします...
AppDevは、複雑で時間のかかるものであってはならないとオラクルは考えています。最新の生成AIテクノロジーは、最先端のローコードAppDevをさらに推し進める絶好の機会をもたらします。Oracle APEX 24.1は、魅力的なエンタープライズクラスのアプリケーションを簡単に構築できるイノベーションの主要な柱を提供します。すなわち、AI支援によるアプリケーション開発、オラクルの次世代データ・プラットフォームの活用、高度なクラウドやモバイル・アプリケーションを構築するためのエンタープライズクラスの強力なコンポーネントという3本の柱です。
Oracle APEXは、Oracle DatabaseとすべてのOracle Databaseサービスを完全にサポートする無料の機能です。これには、開発者がこちらから無料で試すことができるOracle Autonomous Databaseが含まれます。
2023年を終えるにあたり、1年を通して紹介してきたOracle Database 23cの新機能をまとめます。最新のOracle Databaseリリースをまだ試す機会がなかった方、特に開発者の方は、こちらまたはoracle.com/database/freeで、さまざまなオプションをご確認ください。
Oracle Database 23cでは、オーケストレーションの自動化、ソースおよびターゲットの互換性の診断と修正、統合的なユーザー・エクスペリエンスにより、Oracle Advanced Queuing(AQ)からTransactional Event Queues(TxEventQ)への移行を簡素化するオンライン移行ツールを導入しています...
オラクルは、新しいObservability Exporter for Oracle Databaseにより、クラウドネイティブとKubernetesのサポートを拡大し続けています...
Oracle Database 23cに導入されたSagaフレームワークは、データベースで非同期Sagaアプリケーションを構築するための統合的なフレームワークを提供します...
Oracle Database 23cでは、オーケストレーションの自動化、ソースおよびターゲットの互換性の診断と修正、統合的なユーザー・エクスペリエンスにより、Oracle Advanced Queuing(AQ)からTransactional Event Queues(TxEventQ)への移行を簡素化するオンライン移行ツールを導入しています。短期間の移行シナリオも長期間の移行シナリオも可能で、AQのダウンタイムの有無にかかわらず実行できるため、運用が中断されません。
より高いスループット・キューに興味があり、Kafka Java ClientとConfluentのようなREST APIを使用してKafkaと互換性のある既存のAQのお客様は、簡単にAQからTxEventQに移行することができます。TxEventQは、スケーラビリティ、パフォーマンス、キーベースのパーティショニング、ネイティブなJSONペイロードのサポートを提供し、これによりJava、JavaScript、PL/SQL、Pythonなど、複数の言語でのイベントドリブンなマイクロサービス・アプリケーションの記述が容易になります。
Oracle Database 23cは、Apache KafkaアプリケーションとOracle Databaseとのより高度な互換性を提供します。この新機能により、Kafka JavaアプリケーションからTransactional Event Queues(TxEventQ)への移行が簡単になります。Kafka Java APIは、Oracle Databaseサーバーに接続し、メッセージング・プラットフォームとしてTxEventQを使用できるようになりました。
開発者は、JDBC Thinドライバを使用して、Kafkaを使用する既存のJavaアプリケーションをOracle Databaseに簡単に移行できます。また、Oracle Database 23cのクライアント側ライブラリ機能により、Kafkaアプリケーションは、KafkaクラスタではなくOracle Databaseに接続し、TxEventQのメッセージング・プラットフォームを透過的に使用できます。
Oracle Database 23cに導入されたSagaフレームワークは、データベースで非同期Sagaアプリケーションを構築するための統合的なフレームワークを提供します。Sagaは、最新の高パフォーマンスのマイクロサービス・アプリケーション開発を簡単かつ信頼性の高いものにします。
Sagaは複数のデータベースにまたがるビジネス・トランザクションで、一連の独立したローカル・トランザクションとして実行されます。Sagasは同期分散トランザクションに見られるグローバルトランザクション期間ロックを回避し、グローバル・アプリケーションの状態を維持するための一貫性要件を簡素化します。Sagaフレームワークは、Oracle Database 23cにあるロックフリー予約可能カラムと統合して自動Saga報酬を提供し、アプリケーション開発を簡素化します。
SagaフレームワークはMicroProfile LRA仕様をエミュレートします。