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 | データディクショナリのスケジューリングを制御するために使用されます。 |
| DBMS_SCHEMA | Schemaのマルチバージョン履歴データ(Schema History)の回収とRoot Service自己検査(Root Inspection)の手動トリガー機能を提供します。 |