public inbox for [email protected]
help / color / mirror / Atom feedFrom: Jonathan S. Katz <[email protected]>
To: Peter Eisentraut <[email protected]>
To: PostgreSQL Advocacy <[email protected]>
Subject: Re: PostgreSQL 12 Press Release - First Draft
Date: Mon, 2 Sep 2019 11:36:24 -0400
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
<[email protected]>
<[email protected]>
On 9/2/19 11:19 AM, Jonathan S. Katz wrote:
> Hi Everyone,
>
> On 8/25/19 5:01 AM, Peter Eisentraut wrote:
>>
>> The file you attached contains a confusing selection of non-ASCII
>> characters such as curly quotes and non-breaking spaces. Nothing wrong
>> with using those, of course, but it's not done consistently and looks
>> gratuitous. You should look into cleaning that up so that this doesn't
>> get messed up further by downstream processors of the press release.
>
> Please see attached for the latest draft. I tried to move this closer to
> the final markdown version (e.g. to Peter's point above) though there is
> some additional formatting I will provide before the final one.
And no sooner do I say that do I find additional broken formatting.
Please see attached with updates.
Jonathan
Attachments:
[text/markdown] release-v4.en.md (6.5K, ../[email protected]/2-release-v4.en.md)
download | inline:
# PostgreSQL 12 Released!
The PostgreSQL Global Development Group today announced the release of PostgreSQL 12, the latest version of the world's most advanced open source database.
PostgreSQL 12 enhancements include notable improvements to query performance, particularly over larger data sets, and overall space utilization. This release provides application developers with new capabilities such as SQL/JSON path expression support, optimizations for how common-table expression ("WITH") queries are executed, and generated columns. The PostgreSQL community continues to support the extensibility and robustness of PostgreSQL, with further additions to internationalization, authentication, and providing easier ways to administrate PostgreSQL. This release also introduces the pluggable table storage interface, which allows developers to create their own methods for storing data.
**HOLD FOR QUOTE**
PostgreSQL benefits from over 20 years of open source development and has become the preferred open source relational database for organizations of all sizes. The project continues to receive recognition across the industry, including being featured for the second year in a row as the "DBMS of the Year" in 2018 by DB-Engines and receiving the "Lifetime Achievement" open source award at OSCON 2019.
## Overall Performance Improvements
PostgreSQL 12 provides significant performance and maintenance enhancements to its indexing system and to partitioning.
B-tree Indexes, the standard type of indexing in PostgreSQL, have been optimized in PostgreSQL 12 to better handle workloads where the indexes are frequently modified. Using a fair use implementation of the TPC-C benchmark, PostgreSQL 12 demonstrated on average a 40% reduction in space utilization and an overall gain in query performance.
Queries on partitioned tables have also seen demonstrable improvements, particularly for tables with thousands of partitions that only need to retrieve data from a limited subset. PostgreSQL 12 also improves the performance of adding data to partitioned tables with "INSERT" and "COPY", and includes the ability to attach a new partition to a table without blocking queries.
There are additional enhancements to indexing in PostgreSQL 12 that affect overall performance, including lower overhead in write-ahead log generation for GiST, GIN, and SP-GiST indexes, the ability to create covering indexes (the "INCLUDE" clause) on GiST indexes, the ability to perform K-nearest neighbor queries with the distance operator ("<->") using SP-GiST indexes, and CREATE STATISTICS now supporting most-common value (MCV) statistics to help with columns that are nonuniformly distributed.
Just-in-time (JIT) compilation using LLVM, introduced in PostgreSQL 11, is now enabled by default. JIT compilation can provide performance benefits to the execution of expressions in WHERE clauses, target lists, aggregates, and some internal operations, and is available if your PostgreSQL installation is compiled or packaged with LLVM.
## Enhancements to SQL Conformance & Functionality
PostgreSQL is known for its conformance to the SQL standard - one reason why it was renamed from "POSTGRES" to "PostgreSQL" - and PostgreSQL 12 adds several features that build on the implementation of the SQL standard and offer enhanced functionality.
PostgreSQL 12 introduces the ability to run queries over JSON documents using JSON path expressions defined in the SQL/JSON standard. Such queries may utilize the existing indexing mechanisms for documents stored in the JSONB format to efficiently retrieve data.
Common table expressions, aka "WITH" queries, can now be automatically inlined by PostgreSQL 12, which in turn can help increase the performance of many existing queries. In this release, a WITH query can be inlined if it is not recursive, does not have any side-effects, and is only referenced once in a later part of a query.
PostgreSQL 12 introduces "generated columns." Defined in the SQL standard, this type of column computes its value from the contents of other columns in the same table. In this version, PostgreSQL supports "stored generated columns," where the computed value is stored on the disk.
## Internationalization
PostgreSQL 12 extends its support of ICU collations by allowing users to define "nondeterministic collations" that can, for example, allow case-insensitive or accent-insensitive comparisons.
## Authentication
PostgreSQL expands on its robust authentication method support with several enhancements that provide additional security and functionality. This release introduces both client and server-side encryption for authentication over GSSAPI interfaces, as well as the ability for PostgreSQL to discover LDAP servers if PostgreSQL is compiled with OpenLDAP.
Additionally, PostgreSQL 12 now supports a form of multifactor authentication. A PostgreSQL server can now require an authenticating client to provide a valid SSL certificate with their username using the "clientcert=verify-full" option and combine this with the requirement of a separate authentication method (e.g. "scram-sha-256").
## Administration
PostgreSQL 12 introduces the ability to rebuild indexes without blocking writes to an index via the "REINDEX CONCURRENTLY" command, allowing users to avoid downtime scenarios for lengthy index rebuilds.
Additionally, PostgreSQL 12 can now enable or disable page checksums in an offline cluster using the "pg_checksums" command. Previously page checksums, a feature to help verify the integrity of data stored to disk, could only be enabled at the time a PostgreSQL cluster was initialized with "initdb."
PostgreSQL 12 also introduces progress reporting statistics for the "CREATE INDEX", "REINDEX", "CLUSTER", and "VACUUM FULL", operations, and to the "pg_checksums" command via the "--progress" flag.
For a full list of features included in this release, please read the release notes, which can be found at: https://www.postgresql.org/docs/12/static/release-12.html
## About PostgreSQL
PostgreSQL is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. The PostgreSQL Project builds on over 30 years of engineering, starting at the University of California, Berkeley, and 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.
Learn more about PostgreSQL and participate in our community at PostgreSQL.org.
[application/pgp-signature] signature.asc (833B, ../[email protected]/3-signature.asc)
download
view thread (15+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected]
Subject: Re: PostgreSQL 12 Press Release - First Draft
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox