PostgreSQL team announces the first beta release of PostgreSQL 11 which contains sneak peek into all the features that will be available in the release candidate of PostgreSQL 11 which is likely to be released in late 2018.
The major features are centered around database simplicity, handling large datasets, and various performance bottlenecks. We can expect some minor changes before the final release is out. Since it is still in beta release, it is strongly advised you don’t run them in the production environment to avoid any hassle.
PostgreSQL is an open source relational database management system which has grown in popularity over the years. With the constant development of more than 30 years, PostgreSQL is one of the popular database used today. It has been called the DBMS of 2017 because of its powerful database management system that offers better reliability, robustness, and performance measures.
Some of the noteworthy changes available in PostgreSQL 11 Beta 1:
Partitioning plays an integral part in splitting a large dataset into smaller pieces in order to carry out complex operations with ease. PostgreSQL 11 contains several new features and improvements to working with data in partitions:
- New feature, hash partitioning, allows you to partition using a hash key
- You can now use UPDATE statements to a partition key in order to move the affected rows to the appropriate partitions
- PostgreSQL 11 supports enhanced partition elimination during query processing and execution thus leading to improved SELECT query performance
- Complete support for PRIMARY KEY, FOREIGN KEY, triggers, and indexes on partitions
- A new feature has been added which allows the query to distribute grouping and aggregation to partitioned tables before the final aggregation. However, in order to enable the settings, you need to set enable_partitionwise_aggregate = on in your configuration file, since it is disabled by default.
New features have been added to build a smooth parallel query infrastructure to manage and carry out workloads efficiently and effectively thus providing significant performance enhancements.
- We now have parallelized hash joins and CREATE INDEX for B-tree indexes
- We can use parallelized features on certain queries with UNION
SQL stored procedures
A new feature SQL stored procedures is introduced by the PostgreSQL team which allows users to use embedded transactions such as BEGIN, COMMIT/ROLLBACK and more within a procedure.
- Now you can optimize the execution of code, and operations; and even make required changes during the run time. Thus it stands out as a perfect framework which gives you a leeway to allow future optimizations in the workflow.
- In case you are building PostgreSQL 11 from source, you can enable JIT compilation using the –with-llvm flag.
In PostgreSQL 11, window functions will support all options in SQL:2011 standard
- PostgreSQL 11 supports channel binding for SCRAM authentication, thus providing the required security feature to prevent man-in-the-middle attacks.
- PostgreSQL team has upgraded this feature since SCRAM authentication was already available. This was used to improve the storage and transmission of passwords on the basis of standard protocol.
Simplicity and user experience improvements
Although PostgreSQL provides a healthy set of features, not all of them can be easy-to-use in development and production environments. The PostgreSQL team has therefore brought many new improvements to better the user experience.
Now you can quit the PostgreSQL command-line (psql) using keywords like quit and exit.
Additional improvements and features
Many other new improvements and features have been added to the PostgreSQL 11. You can refer the release notes for complete list of new and changed features in the roadmap.
If you want to contribute to the project and want to test this new release in order to find bugs and issues, download PostgreSQL 11 Beta 1, from their official page. You can find existing open issues in the PostgreSQL wiki. In case you want to report any bugs or issues you can use report bugs form available on the PostgreSQL website.