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オブジェクトを変更するだけで、すべてのアプリケーションに即座に反映されます。異なるクライアントコードの更新による差異の心配もありません。