PostgreSQL 16 introduces several features and improvements that enhance performance:
FULL
and RIGHT
joins, optimize aggregate functions with DISTINCT
or ORDER BY
, use incremental sorts for SELECT DISTINCT
queries, and optimize window functions for better efficiency. Additionally, PostgreSQL 16 optimizes RIGHT
and OUTER
anti-joins.COPY
are notable, with up to 300% performance enhancement in some scenarios. PostgreSQL 16 also supports load balancing in libpq
clients and introduces CPU acceleration using SIMD
in both x86 and ARM architectures. This leads to performance gains in processing ASCII and JSON strings and in array and subtransaction searches.JSON_ARRAY()
, JSON_ARRAYAGG()
, and IS JSON
. Underscores for thousands separators in numbers and non-decimal integer literals are supported. The psql
commands are enhanced for a better developer experience.pg_stat_io
for granular analysis of I/O access patterns. The pg_stat_all_tables
view now includes a timestamp for the last scan of a table or index. Enhancements to auto_explain
and improved accuracy in pg_stat_statements
and pg_stat_activity
are also included.pg_hba.conf
and pg_ident.conf
files, including regular expression matching for user and database names. New security-oriented client connection parameters, support for Kerberos credential delegation, and the use of the trusted CA store provided by the client's OS are added.These features collectively contribute to better performance, security, and ease of use in PostgreSQL 16.