- PostgreSQL 16 cải thiện đáng kể về tính song song của truy vấn, nạp dữ liệu khối lượng lớn và sao chép logic để nâng cao hiệu năng
- Bổ sung thêm nhiều cú pháp SQL/JSON, thống kê giám sát mới cho khối lượng công việc và mang lại tính linh hoạt cao hơn khi định nghĩa các quy tắc kiểm soát truy cập
Cải thiện hiệu năng
- Bộ lập kế hoạch truy vấn giờ đây có thể song song hóa các phép nối FULL và RIGHT, tạo kế hoạch tối ưu hơn cho các truy vấn dùng mệnh đề DISTINCT hoặc ORDER BY, tận dụng incremental sort cho truy vấn SELECT DISTINCT và tối ưu hóa window function
- Việc nạp dữ liệu hàng loạt bằng COPY được cải thiện cả trong tác vụ đơn lẻ lẫn đồng thời, trong một số trường hợp hiệu năng tăng tới 300%
- Bổ sung tăng tốc CPU dùng SIMD trên kiến trúc x86 và ARM, giúp cải thiện hiệu năng khi xử lý chuỗi ASCII và JSON, mảng và tra cứu subtransaction
Sao chép logic
- Giờ đây có thể thực hiện sao chép logic từ instance standby, mở ra các lựa chọn phân phối công việc mới
- Có thể dùng standby thay vì primary đang bận để sao chép các thay đổi xuống downstream
- Hiệu năng sao chép logic cũng được cải thiện
- Subscriber có thể dùng các worker song song để áp dụng các giao dịch lớn
- Với các bảng không có khóa chính, có thể dùng chỉ mục B-tree để tìm hàng thay vì quét tuần tự
- Trong một số điều kiện nhất định, có thể tăng tốc đồng bộ bảng ban đầu bằng cách dùng định dạng nhị phân
Trải nghiệm nhà phát triển
- Bổ sung thêm nhiều cú pháp từ tiêu chuẩn SQL/JSON, bao gồm các constructor và predicate như JSON_ARRAY(), JSON_ARRAYAGG(), IS JSON
- Có thể dùng dấu gạch dưới trong số theo nhóm hàng nghìn (5_432_000)
psql được bổ sung \bind, cho phép viết truy vấn có tham số và thay thế bằng biến
- Cải thiện hỗ trợ cho sắp xếp văn bản
Giám sát
- Thêm
pg_stat_io, cung cấp các metric cho phép phân tích chi tiết mẫu truy cập I/O
- Thêm các trường timestamp vào view
pg_stat_all_tables để ghi lại thời điểm bảng hoặc chỉ mục được quét lần cuối
- Ghi log các giá trị được truyền vào câu lệnh có tham số để
auto_explain dễ đọc hơn
Kiểm soát truy cập và bảo mật
- Cung cấp các tùy chọn chi tiết hơn cho kiểm soát truy cập
- Cải thiện các tính năng bảo mật khác, bao gồm quản lý các tệp
pg_hba.conf và pg_ident.conf, cùng việc bổ sung nhiều tham số kết nối client hướng đến bảo mật
1 bình luận
Ý kiến trên Hacker News
\bind, đang được ưa chuộng vì cho phép chạy các truy vấn có tham số giống hệt như ứng dụng vẫn làm.debug_io_direct.