PLは手続き型言語(Procedural Language, PL)です。SQLを拡張したもので、通常のSQL文にプログラミング言語の特性を加え、データ操作やクエリ文をPLコードの手続き的なコードの中に組織し、論理判断やループなどの操作を通じて複雑な機能を実現します。
PLを使用することで、高度な機能を備えたプログラムを記述でき、業務ロジックをデータベース内部にカプセル化して、より高い抽象性と安全性を提供するとともに、ネットワークのやり取りを削減し、呼び出し速度を向上させることで、全体のパフォーマンスを高めることができます。
PLの主な利点は以下のとおりです:
パフォーマンスの向上
PLを使用してデータベースとやり取りする場合、処理ロジックはすべてデータベースサーバー側で行われ、必要な結果のみがクライアントに返されます。これにより、アプリケーションサーバーとデータベースサーバー間のデータ交換が大幅に削減され、ネットワークリソースと処理時間が節約されます。
PLオブジェクトはデータベース内にプリコンパイルされた形で格納されます。通常のSQLと比較して、オプティマイザーによるPLの最適化レベルが高く、実行効率も優れています。
開発の容易さ
PLの多くの特性により、開発者は設計やエラーのトラブルシューティングに費やす時間を節約できます。開発者はOceanBaseデータベース独自の開発者センター(OceanBase Developer Center, ODC)を使用して効率的に開発できます。
詳細については、OceanBase公式WebサイトのODC関連ドキュメントを参照してください。
移植性
データベース開発者にとって、PLは汎用的な標準言語です。PLアプリケーションは、任意のOceanBaseデータベース上で実行できます。
管理の容易さ
PLオブジェクトはデータベース内に格納されます。アプリケーションの変更やバージョンのイテレーションを行う際、データベース内のPLオブジェクトを変更するだけで、すべてのアプリケーションに即座に反映されるため、異なるクライアントコードの更新に伴う差異の問題を心配する必要はありません。