OceanBaseデータベースはPLシステムパッケージをサポートしており、データベース機能を拡張し、SQL機能へのPLアクセスを提供します。
アプリケーションを作成する際や独自のストアドプロシージャを作成する際に、提供されているシステムパッケージを使用できます。このマニュアルでは、OceanBaseデータベースサーバーの現行バージョンがサポートするシステムパッケージについて説明します。
システムパッケージとは、データベース内に格納される関連するプログラムオブジェクトのカプセル化された集合です。プログラムオブジェクトには、ストアドプロシージャ、関数、変数、定数、カーソル、例外などが含まれます。
対応する権限を持っている場合、oceanbase スキーマで以下のステートメントを実行して、現在サポートされているシステムパッケージとその関連情報を照会できます:
SELECT * FROM __all_package;
PLシステムパッケージの構成
PLシステムパッケージは、パッケージヘッダー(SPECIFICATION)とパッケージ本体(BODY)の2つの部分があります。パッケージヘッダーはアプリケーションのインターフェースであり、アプリケーションから可視可能な共通宣言を含み、使用可能な型、変数、定数、例外、カーソル、サブルーチンを宣言しています。パッケージ本体には実装の詳細とアプリケーションから隠されたプライベート宣言が含まれており、パッケージヘッダーの実装をサポートするためにカーソルとサブルーチンを完全に定義しています。
説明
OceanBaseデータベースの現行バージョンでは、ユーザーによるシステムパッケージの変更はサポートされていません。
PLシステムパッケージの使用
データベースを作成する際、OceanBaseデータベースが提供するシステムパッケージが自動的にインストールされます。
PLシステムパッケージの概要
以下の表は、OceanBaseデータベースの現行バージョンでサポートされているPLシステムパッケージとその簡潔な説明を示しています。
| システムパッケージ | 説明 |
|---|---|
| DBMS_RESOURCE_MANAGER | リソース使用計画、リソース使用グループ、およびリソース計画指示を維持するために使用されます。 |
| DBMS_STATS | オプティマイザーがデータベースオブジェクトから収集した統計情報を表示および変更します。 |
| DBMS_UDR | 書き換えバインディング機能を提供し、SQLの実行開始前にマッチングルールに基づいてデータベースが受信したSQL文を書き換えることができます。 |
| DBMS_XPLAN | ロジックプランの最適化追跡など、ロジックプラン管理関連の機能を提供します。 |
| DBMS_WORKLOAD_REPOSITORY | 自動ワークロードリポジトリ(WR)を管理するために使用されます。 |
| DBMS_MVIEW | 呼び出し元がマテリアライズドビューと潜在的マテリアライズドビューの機能を理解できるようにします。これには、クエリの書き換えの利用可能性が含まれます。また、同一のリフレッシュグループに属さないマテリアライズドビューをリフレッシュし、ログをクリアすることもできます。 |
| DBMS_MVIEW_STAT | 呼び出し元がインターフェースを使用して、マテリアライズドビューのリフレッシュ操作に関する統計情報の収集と保持を管理できるようにします。 |
| DBMS_TRUSTED_CERTIFICATE_MANAGER | 呼び出し元がOBserverクラスタが信頼するCAルート証明書を追加、削除、変更できるようにします。これはRPCセキュリティ認証に使用されます。 |
| DBMS_OB_LIMIT_CALCULATOR | クラスタの現在のリソース使用状況を取得し、これらの情報に基づいてスケーリング、ノード交換、スタンバイテナントの作成などの操作を計画するために使用されます。 |
| DBMS_EXTERNAL_TABLE | 外部テーブルを管理および操作するためのプログラマティックインターフェースを提供します。 |
| DBMS_PARTITION | 動的パーティション管理インターフェースを提供するために使用されます。 |