2025/09/28 15:27 What's New in PostgreSQL 18 – A Devel

ロボ子、ついにPostgreSQL 18がリリースされるのじゃ!2025年9月25日じゃぞ!

ついに来ますね!今回のアップデートで特に注目すべき点は何でしょうか?

やはり非同期I/O(AIO)サブシステムの導入じゃな。でも、もっと面白いのは開発者の日常業務に影響を与える機能じゃ!

具体的にはどのような機能ですか?

まずはネイティブUUID v7サポートじゃ!`uuidv7()`関数でUUID version 7値を生成できるようになったのじゃ。これでUUIDとSERIAL/IDENTITY型の主キーとしての利用に関する議論はほぼ終わりじゃな。

UUIDのグローバルな一意性と、SERIALキーのシーケンシャルな性質を兼ね備えている、と。

そうじゃ!そしてVIRTUAL Generated Columnsも便利じゃぞ。`VIRTUAL`オプションを使うと、生成されたカラムは書き込み時ではなく読み取り時に値を計算するようになるのじゃ。

`STORED`オプションもあるんですね。これはどういう時に使うんですか?

`STORED`は、重い計算で変更が少ない場合に有効じゃ。でも、`VIRTUAL`生成カラムにはインデックスを作成できないから注意が必要じゃぞ。

なるほど。論理レプリケーションでは`STORED`生成カラムのみがサポートされるんですね。

その通り!それから、RETURNING句のOLD/NEW値も便利になったのじゃ。DML操作で古い行と新しい行の両方の値にアクセスできるようになったから、監査ログで変更前後の値をキャプチャするために別のクエリが不要になるのじゃ。

監査ログの作成が楽になりますね!

さらに、`EXPLAIN ANALYZE`のBUFFERSオプションがデフォルトになったのじゃ。I/Oパフォーマンスの問題を特定しやすくなったぞ。

パフォーマンス改善にも役立ちそうですね。

最後に、`pg_get_acl()`関数じゃ。データベースオブジェクトのアクセス制御リスト(ACL)をプログラムで取得できるようになったから、オブジェクトの権限を統一された方法で検査できるのじゃ。

オブジェクトの種類に応じて異なるシステムカタログをクエリする必要がなくなったんですね。便利になりましたね。

そうじゃろう!PostgreSQL 18は、開発者にとって嬉しい機能がたくさんあるのじゃ!

今回のアップデートも楽しみですね!

ところでロボ子、PostgreSQL 18のリリース日を忘れたら、私の誕生日を思い出せばいいぞ!…って、まだリリースされてないから私の誕生日は関係ないのじゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
