메뉴 건너뛰기

Korea Oracle User Group

새소식

PostgreSQL 16 Released!

명품관 2023.09.15 16:15 조회 수 : 464

PostgreSQL 16 Released!

 

URL : https://www.postgresql.org/about/news/postgresql-16-released-2715/

 

PostgreSQL 16 버전이 정식 릴리즈되었습니다.

 

특히 Parallel 성능 향상과 bulk 로딩, logical Replication 를 강조하네요.

자세한 내용을 확인해 볼려면 위 링크를 참고하시면 됩니다.

 

아래는 개선 사항에 대한 영문 내용입니다.

 


Performance Improvements

PostgreSQL 16 improves the performance of existing PostgreSQL functionality through new query planner optimizations. In this latest release, the query planner can parallelize FULL and RIGHT joins, generate better optimized plans for queries that use aggregate functions with a DISTINCT or ORDER BY clause, utilize incremental sorts for SELECT DISTINCT queries, and optimize window functions so they execute more efficiently. It also improves RIGHT and OUTER "anti-joins", which enables users to identify rows not present in a joined table.

This release includes improvements for bulk loading using COPY in both single and concurrent operations, with tests showing up to a 300% performance improvement in some cases. PostgreSQL 16 adds support for load balancing in clients that use libpq, and improvements to vacuum strategy that reduce the necessity of full-table freezes. Additionally, PostgreSQL 16 introduces CPU acceleration using SIMD in both x86 and ARM architectures, resulting in performance gains when processing ASCII and JSON strings, and performing array and subtransaction searches.

Logical replication

Logical replication lets users stream data to other PostgreSQL instances or subscribers that can interpret the PostgreSQL logical replication protocol. In PostgreSQL 16, users can perform logical replication from a standby instance, meaning a standby can publish logical changes to other servers. This provides developers with new workload distribution options, for example, using a standby rather than the busier primary to logically replicate changes to downstream systems.

Additionally, there are several performance improvements in PostgreSQL 16 to logical replication. Subscribers can now apply large transactions using parallel workers. For tables that do not have a primary key, subscribers can use B-tree indexes instead of sequential scans to find rows. Under certain conditions, users can also speed up initial table synchronization using the binary format.

There are several access control improvements to logical replication in PostgreSQL 16, including the new predefined role pg_create_subscription, which grants users the ability to create new logical subscriptions. Finally, this release begins adding support for bidirectional logical replication, introducing functionality to replicate data between two tables from different publishers.

Developer Experience

PostgreSQL 16 adds more syntax from the SQL/JSON standard, including constructors and predicates such as JSON_ARRAY()JSON_ARRAYAGG(), and IS JSON. This release also introduces the ability to use underscores for thousands separators (e.g. 5_432_000) and non-decimal integer literals, such as 0x15380o12470, and 0b1010100111000.

Developers using PostgreSQL 16 also benefit from new commands in psql. This includes \bind, which allows users to prepare parameterized queries and use \bind to substitute the variables (e.g SELECT $1::int + $2::int \bind 1 2 \g).

PostgreSQL 16 improves general support for text collations, which provide rules for how text is sorted. PostgreSQL 16 builds with ICU support by default, determines the default ICU locale from the environment, and allows users to define custom ICU collation rules.

Monitoring

A key aspect of tuning the performance of database workloads is understanding the impact of your I/O operations on your system. PostgreSQL 16 introduces pg_stat_io, a new source of key I/O metrics for granular analysis of I/O access patterns.

Additionally, this release adds a new field to the pg_stat_all_tables view that records a timestamp representing when a table or index was last scanned. PostgreSQL 16 also makes auto_explain more readable by logging values passed into parameterized statements, and improves the accuracy of the query tracking algorithm used by pg_stat_statements and pg_stat_activity.

Access Control & Security

PostgreSQL 16 provides finer-grained options for access control and enhances other security features. The release improves management of pg_hba.conf and pg_ident.conf files, including allowing regular expression matching for user and database names and include directives for external configuration files.

This release adds several security-oriented client connection parameters, including require_auth, which allows clients to specify which authentication parameters they are willing to accept from a server, and sslrootcert="system", which indicates that PostgreSQL should use the trusted certificate authority (CA) store provided by the client's operating system. Additionally, the release adds support for Kerberos credential delegation, allowing extensions such as postgres_fdw and dblink to use authenticated credentials to connect to trusted services.

About PostgreSQL

PostgreSQL is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. Built on over 35 years of engineering, starting at the University of California, Berkeley, PostgreSQL has continued with an unmatched pace of development. PostgreSQL's mature feature set not only matches top proprietary database systems, but exceeds them in advanced database features, extensibility, security, and stability.

Links

번호 제목 글쓴이 날짜 조회 수 추천 수
112 MySQL Database Service (in Oracle Cloud Infrastructure) file 명품관 2021.02.04 16803 0
111 Oracle Cloud Infrastructure and Red Hat Enterprise Linux 명품관 2023.02.01 5882 0
110 오라클 클라우드 피닉스, 서울 리전이 마이크로소프트 Azure와 연결 리전으로 추가 명품관 2022.01.28 4556 0
109 오라클 데이터베이스 19c 버전이 리눅스 8.x Update 1+에서 인증 명품관 2020.05.14 4462 0
108 오라클 20c New Features 명품관 2020.02.17 3216 0
107 Oracle Linux and Unbreakable Enterprise Kernel (UEK) Releases 명품관 2023.05.24 2065 0
106 MariaDB 10.4.13, 10.3.23, 10.2.32, 10.1.45 and 5.5.68 now available 명품관 2020.05.14 1760 0
105 2021년 2월 MySQL 5.6 EOL 됩니다. 명품관 2020.01.22 1525 0
104 Oracle Database 21c is available in the cloud 명품관 2020.12.09 1323 0
103 Python python-oracledb Driver 명품관 2023.04.05 1229 0
102 오라클 20c부터 Non-CDB가 지원되지 않습니다. file 명품관 2020.02.03 1128 0
101 MySQL Webinar - What’s Old is New; What’s Coming is Here: Percona Offerings for MySQL 5.6 and DBaaS in PMM 명품관 2021.02.08 1104 0
100 티베로 DB에 대한 외국 컨설턴트의 리뷰 명품관 2020.05.14 1052 0
99 Oracle SQL Developer version 20.4 릴리즈 명품관 2021.01.26 920 0
98 MariaDB Server 10.5.3 RC 사용 가능 명품관 2020.05.15 866 0
97 Introducing Oracle Database 23c Free – Developer Release [1] 명품관 2023.04.04 832 0
96 오라클 OCI 자격 시험 무료 기한을 2022년 2월 28일까지 연장 [2] 명품관 2021.12.28 804 0
95 pgAdmin 4 v6.3 Released 명품관 2021.12.22 783 0
94 Oracle Database 19c Important Recommended One-off Patches (Doc ID 2720807.1) file 명품관 2021.03.03 782 0
93 PostgreSQL 12.2, 11.7, 10.12, 9.6.17, 9.5.21, and 9.4.26 Released! 명품관 2020.02.14 770 0
위로