このリリースの『Oracle Databaseアドバンスト・キューイング・ユーザーズ・ガイド』の変更内容
ここでは、次の内容について説明します。
Oracle Database Advanced Queuingリリース19c, バージョン19.2の変更内容
Oracle Databaseリリース19c, バージョン19.2の『Oracle Databaseアドバンスト・キューイング・ユーザーズ・ガイド』における変更点は次のとおりです。
新機能
このリリースの新機能は次のとおりです。
-
拡張キーベースのメッセージング
AQシャード・キューのパフォーマンスはAQクラシック(非シャード)キューと比較して大幅に向上しています。これは、データベースの特定のインスタンスが各シャードを所有するように、キューがシャーディングされているためです。デフォルトでは、エンキュー操作とデキュー操作に関して、シャーディングはユーザーに対して完全に透過的です。AQでは、適切なシャードにメッセージを内部的に配置して、最大のパフォーマンスおよびJMS仕様で求められるセッション・レベルの順序付けを実現しています。セッション・レベルの順序付けでは、同じセッションでメッセージがエンキューされ、優先度と配信モードが同じである場合、2つのメッセージがエンキュー順序の逆順でデキューされることはありません。
場合によっては、ユーザー・アプリケーションでシャーディングを制御する場合があります。メッセージがエンキューされるシャードをユーザー・アプリケーションで選択できます。アプリケーション・ロジックをサポートするために、シャード・キュー内のメッセージをシャードする方法を必要に応じてユーザーが決定できます。AQシャード・キューのパフォーマンスおよび順序付けの利点は、シャーディングをユーザーが制御する場合でもそのまま維持されます。アプリケーションでは、次のことを制御できます。
-
キューのシャード数
-
キー・ベースのエンキュー: エンキュー・セッションでエンキューするときにメッセージとともにキーを指定して、メッセージがエンキューされるキューのシャードを選択できます。AQサーバーにより、キーのすべてのメッセージが同じシャードにエンキューされます。1つのシャードは、異なるキーのメッセージを処理できます。
-
スティッキー・デキュー: シャードは、シングル・コンシューマ・キューまたはJMSキューのためのアクティブなデキュー・セッションを1つのみ持つことができます。同様に、シャードは、マルチ・コンシューマ・キューまたはJMSトピックのためのデキュー・セッションをサブスクライバごとに1つのみ持つことができます。そのデキュー・セッションは、セッションの存続期間中はキューのそのシャードに固定されたままになります。そのような機能は、JMSリスナーにも使用できます。
-
関連項目:
Oracle Database Advanced Queuing 12cリリース2 (12.2)の変更内容
Oracle Database 12cリリース2 (12.2)の『Oracle Databaseアドバンスト・キューイング・ユーザーズ・ガイド』における変更点は次のとおりです。
新機能
このリリースの新機能は次のとおりです。
-
シャード・キューのJMSペイロードおよびJMS以外(ADTまたはRAW)のペイロードに対するPL/SQLエンキューおよびデキューのサポート
Oracle Database 12cリリース2 (12.2)は、シャード・キューでJMS、ADTおよびRAWペイロードに対してエンキューおよびデキュー操作を実行するように、PL/SQL APIを拡張およびサポートします。PL/SQL配列APIもシャード・キューをサポートします。既存のJMS以外の多くのアプリケーションで、ほとんど変更することなくシャード・キューを使用できるようになりました。
Oracle Database 12cリリース2 (12.2)以降では、シャード・キューを使用するJMSユーザーは、PL/SQL通知を使用してPL/SQLプロシージャを登録し、正常なエンキューでAQサーバーによって自動的に呼び出されるようにできます。PL/SQL通知を使用すると、サーバーでメッセージを自動的にデキューおよび処理できるため、クライアントがキューでメッセージをポーリングする必要がなくなります。
詳細は、「シャード・キューの管理」を参照してください。
-
シャード・キューの診断性および管理性
12cリリース2 (12.2)以降では、AQシャード・キューは
STREAMS_POOL
のメモリー割当ておよびスループットを最適化するためのメッセージ・キャッシュのアドバイザ、ビューおよび自動管理を提供しています。詳細は、シャード・キューのチューニングを参照してください。
-
Oracle Database Advanced Queuingのより長い識別子
12cリリース2 (12.2)以降では、AQキュー名の最大長が122バイトに増加しています。サブスクライバ名および受信者名の最大長が128文字に増加しています。AQルール・エンジンの場合、ルール名およびルール・セット名の最大長が128バイトになりました。
Oracle Database Advanced Queuing 12cリリース1 (12.1.0.2)の変更内容
Oracle Database 12c リリース1 (12.1.0.2)の『Oracle Databaseアドバンスト・キューイング・ユーザーズ・ガイド』における変更点は次のとおりです。
新機能
このリリースの新機能は次のとおりです。
-
JMSストリーミング
Oracle Database 12c リリース1 (12.1.0.2)では、Advanced Queuingは、大量のメッセージ・データまたはペイロードを送受信するアプリケーション用に、
AQjmsBytesMessage
およびAQjmsStreamMessage
を介した共有キューのエンキューおよびデキューでのJMSストリーミングを導入しました。詳細は、「JMSストリーミング」を参照してください。
Oracle Database Advanced Queuing 12cリリース1 (12.1)の変更内容
Oracle Database 12c リリース1 (12.1)の『Oracle Databaseアドバンスト・キューイング・ユーザーズ・ガイド』における変更点は次のとおりです。
新機能
このリリースの新機能は次のとおりです。
-
Oracle Database 12cリリース1 (12.1)のAdvanced Queuingは、高いパフォーマンスと可用性を持つシャードJMSキューを導入しています。シャード・キューとは、システムで管理されているパーティション化を使用して、独立した複数の物理キューに分割される1つの論理キューです。シャード・キューにより、異なるキュー・シャードにある2つのメッセージ間の順序付けがベスト・エフォートで実行されるため、エンキューおよびデキューのスループットが、特にOracle RACインスタンスで向上します。各シャードは、セッション内のエンキュー時刻に基づいて順序付けされます。シャード・キューは、エンキュー元およびデキュー元がそれら同士で競合しないように、表のパーティションを自動的に管理します。また、シャード・キューは、インメモリーのメッセージ・キャッシュを使用して、パフォーマンスを最適化し、AQ-JMSのエンキューおよびデキューのディスクおよびCPUのオーバーヘッドを削減します。シャード・キューは、Oracle RACインスタンス全体で使用されるキュー、エンキュー率またはデキュー率の高いキュー、またはサブスクライバの多いキューについて推奨されるJMSキューです。
12.2では、JMS以上をサポートするようにシャード・キューが拡張されました。詳細は、「シャード・キュー」を参照してください。
-
結果キャッシュ拡張
Oracle Database 12cリリース1 (12.1)では、ルール・エンジンに、共通で使用される多数のルールのパフォーマンスを向上させる結果キャッシュが導入されました。結果キャッシュでは、属性が同一の式が以前に評価されている場合は、評価フェーズが省略されます。ルールの結果が確定的でない可能性がある場合や、評価されないルールがある場合、または属性に非スカラー・データ型が含まれる場合などには、すべてのルールがキャッシュされるわけではありません。アドバンスト・キューでは、サブスクリプションやそのデキュー・セッションの存続期間が長い場合に、キャッシュが非常に便利です。
-
LONG VARCHAR
のサポートOracle Database 12cリリース1 (12.1)のOracle Database Advanced Queuingでは、
LONG VARCHAR
データ型がサポートされています。 -
3層バックグラウンド・アーキテクチャ
Oracle Database 12cリリース1 (12.1)には、新しい3層設計のAQバックグラウンド・プロセス・アーキテクチャが導入されています。
詳細は、「AQバックグラウンド・アーキテクチャ」を参照してください。
-
Data Guardデータベースのローリング・アップグレードのサポート
Oracle Database Advanced Queuingを使用するデータベースを、Data Guardデータベースのローリング・アップグレードを使用して、新しいOracleデータベースのリリースおよびパッチ・セットにアップグレードできるようになりました(一時ロジカル・スタンバイ・データベースのみ)。ローリング・アップグレードは、Oracle Database 12cリリース1 (12.1)からサポートされるようになりました。
Data Guardデータベース・ローリング・アップグレードにより、ローリング方式で新しいデータベース・リリースまたはパッチ・セットへのアップグレードを行うことができ計画停止時間が短縮されます。このようなアップグレードでのデータベースの合計停止時間は、Data Guardスイッチオーバーを実行するために必要な短い時間に制限されます。
次のパッケージを使用すると、ロジカル・スタンバイを使用したローリング・アップグレードがサポートされます。
-
DBMS_AQ
-
DBMS_AQJMS
-
DBMS_AQADM
(次のプロシージャを除く):-
SCHECULE_PROPAGATION
-
UNSCHEDULE_PROPAGATION
-
ALTER_PROPAGATION_SCHEDULE
-
ENABLE_PROPAGATION_SCHEDULE
-
DISABLE_PROPAGATION_SCHEDULE
-
関連項目:
-
Oracle Database AQパッケージの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください
-