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 | 動的パーティション管理インターフェースを提供します。 |
| DBMS_JAVA | データベース内でJavaプログラムの統合と管理を行い、Javaストアドプロシージャ、関数、およびセキュリティポリシーの実装をサポートします。 |
| DBMS_PYTHON | データベース内でPythonプログラムの統合と管理を行い、Pythonストアドプロシージャ、関数、およびセキュリティポリシーの実装をサポートします。 |
| DBMS_OB_LIMIT_CALCULATOR | クラスタの現在のリソース使用状況を取得し、これらの情報に基づいてスケーリング、ノードの置き換え、スタンバイテナントの作成などの操作を計画するために使用されます。 |
| DBMS_DATA_DICT | データディクショナリのスケジューリングを制御します。 |