オープンソースリレーショナルデータベースの最新バージョン「PostgreSQL 16」がリリースされた。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
PostgreSQLグローバル開発グループは2023年9月14日(米国時間)、オープンソースリレーショナルデータベースの最新バージョン「PostgreSQL 16」をリリースしたと発表した。
PostgreSQL 16は、クエリの並列処理、バルクデータローディング、論理レプリケーションが大幅に改善され、性能が向上した。SQL/JSON構文の追加、ワークロードの新しい監視統計、大規模な要素群にわたるポリシーを管理するためのアクセス制御ルール定義の柔軟性向上など、開発者や管理者向けの機能も多数改善されている。
PostgreSQLコアチームのメンバーであるデーブ・ページ氏は、PostgreSQL 16を次のように紹介している。「リレーショナルデータベースのパターンが進化する中で、PostgreSQLは大規模なデータの検索と管理における性能向上を続けている。PostgreSQL 16はユーザーに、ワークロードをスケールアップおよびスケールアウトするためのより多くの方法を提供するとともに、ユーザーが洞察を得たり、データ管理を最適化したりするための新しい方法も提供する」
PostgreSQLグローバル開発グループはPostgreSQL 16の特徴を、「パフォーマンスの向上」「論理レプリケーション」「開発者体験」「モニタリング」「アクセス制御とセキュリティ」の5つの観点から以下のように説明している。
クエリプランナは、FULLとRIGHTの「JOIN」を並列化する、DISTINCT節またはORDER BY節を使用する集約関数を使ったクエリに対して、より最適化された計画を生成する、「SELECT DISTINCT」クエリに対してインクリメンタルソートを利用する、WINDOW関数を最適化し、より効率的に実行されるようにする――ことが可能だ。
論理レプリケーションを使用すると、PostgreSQLの論理レプリケーションプロトコルを解釈できる他のPostgreSQLインスタンスやサブスクライバーに、データをストリームできる。PostgreSQL 16では、論理レプリケーションの機能や性能が以下のように強化された。
例えば、下流のシステムに変更を論理的に複製するために、スタンバイインスタンスを使用できる。
例えば、新しい定義済みロール「pg_create_subscription」(ユーザーが新しい論理サブスクリプションを作成できるようにする)が追加された。
これには「\bind」が含まれ、パラメーター化されたクエリを準備して、bindを使用して変数を置換できる。
PostgreSQL 16はデフォルトでICUをサポートして構築され、環境からデフォルトのICUロケールを決定し、ユーザーが独自のICU照合規則を定義できる。
これは、I/Oアクセスパターンを詳細に分析するための主要I/O指標の新しい情報源になる。データベースワークロードの性能をチューニングする上では、I/O操作がシステムに与える影響を理解することが重要だ。
ユーザー名とデータベース名の正規表現マッチングや外部設定ファイルのincludeディレクティブが使用できるようになった。
サーバからどの認証パラメーターを受け付けるかどうかをクライアントに指定できるようにする「require_auth」や、PostgreSQLがクライアントOSから提供された信頼された認証局(CA)ストアを使用することを示す「sslrootcert="system"」など、セキュリティ指向のクライアント接続パラメーターが幾つか追加された。
Copyright © ITmedia, Inc. All Rights Reserved.