オープンソースのリレーショナルデータベースPostgreSQLの開発チームは、最新バージョンとなる「PostgreSQL 16」を9月14日(現地時間)にリリースした。
PostgreSQL 16では、クエリの並列処理、バルクデータローディング、論理レプリケーションにおける改善が行われ、性能が顕著に向上するとともに、SQL/JSON構文の追加、ワークロードの新たな監視統計、大規模な要素群にわたるポリシーの管理のためのアクセス制御ルールにおける定義の柔軟性向上といった、開発者や管理者向けの多くの機能が搭載されている。
さらに、新たな問い合わせプランナが最適化され、FULLとRIGHTのJOINを問い合わせプランナが並列化できるようになったほか、DISTINCT節またはORDER BY節を使用する集約関数を使ったクエリに対しては、より最適化された計画を生成し、SELECT DISTINCTクエリに対してインクリメンタルソートを利用して、WINDOW関数が最適化されたより効率的な実行が可能になるなど、既存のPostgreSQL機能の性能が向上した。
あわせて、ユーザーがスタンバイインスタンスから論理レプリケーションを実行できるようになり、負荷分散に新たな選択肢が追加されるとともに、論理レプリケーションの性能向上、論理レプリケーションに対するいくつかのアクセス制御における改善が行われている。
また、JSON_ARRAY()、JSON_ARRAYAGG()、IS JSONといったコンストラクタや述語を含むSQL/JSON標準の構文が追加され、アンダースコアを数千の区切り文字(例えば 5_432_000)に使えるようになったほか、0x1538、0o12470、0b1010100111000といった10進数以外の整数リテラルが使用可能になった。
ほかにも、I/Oアクセスパターンの詳細な分析にあたって主要な指標となる pg_stat_ioや、pg_stat_all_tablesビューへのテーブルやインデックスが最後にスキャンされた日時を示すタイムスタンプを記録する新しいフィールドが追加されるとともに、auto_explainの可読性が向上し、pg_stat_statementsとpg_stat_activityで用いられる問い合わせ追跡アルゴリズムの精度向上、pg_hba.confとpg_ident.confファイルの管理が改善され、ユーザー名とデータベース名の正規表現マッチングや外部設定ファイルのincludeディレクティブが使用できるようになるなど、数多くの機能追加・改善が行われている。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です