オープンソースのリレーショナルデータベースPostgreSQL開発チームは、最新バージョンとなる「PostgreSQL 15」を10月13日(現地時間)にリリースした。
「PostgreSQL 15」では、インメモリおよびディスク上のソートアルゴリズムを改善することによって、ベンチマークにおいてはソートされるデータ型によって25~400%の速度向上を実現している。row_number()、rank()、dense_rank()、count()をウィンドウ関数として使用した場合もパフォーマンス向上の恩恵を受けられるほか、SELECT DISTINCTを用いたクエリは並列に実行されるようになった。
また、外部データラッパであるpostgres_fdwによる非同期コミットがサポートされるようになったほか、ライトアヘッドログ(WAL)ファイルがLZ4およびZstandard(zstd)圧縮をサポートしている。
さらに、SQL標準のMERGEコマンドが使用可能となり、INSERT、UPDATE、DELETEアクションを1つの条件付きSQLステートメントに記述できるようになった。あわせて、正規表現を使用して文字列を検査するための新たな関数regexp_count()、regexp_instr()、regexp_like()、regexp_substr()が追加され、以前のリリースで導入されたmultirangeデータ型を集約する関数range_aggも拡張されている。また、ビューの作成者ではなく呼び出し元の権限を使用してデータをクエリするビューをユーザーが作成可能なsecurity_invokerオプションも用意され、新たな保護レイヤを追加することでビューの呼び出し元が基礎となるデータを操作するための、適切な権限を与えられるようになった。
ほかにも、パブリッシャに行フィルタリングと列リストが導入され、ユーザーがテーブルからデータのサブセットを複製できるようになるとともに、競合するトランザクションの再生をスキップする機能、エラーが検出された場合にサブスクリプションを自動的に無効にする機能といった競合管理を簡素化する機能が追加されている。さらに、新たなログ形式としてjsonlog形式が導入され、定義されたJSON構造を使用してログデータを出力可能になり、構造化されたログシステムによるPostgreSQLログの処理に対応するなど、数多くの機能追加、改善が実施された。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です