Re: PostgreSQL 12 Press Release - First Draft

"Jonathan S. Katz" <[email protected]> Wed, 21 Aug 2019 17:11:07 -0400
Newsgroups gmane.comp.db.postgresql.advocacy
Message-ID <[email protected]>
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--1ByK02PDzm1nondLrKtyiurFXREo8eYVQ
Content-Type: multipart/mixed; boundary="LGPx9x7zrxWm9JIWsbtFbJy3SRZQH3TOz";
 protected-headers="v1"
From: "Jonathan S. Katz" <[email protected]>
To: Erik Rijkers <[email protected]>
Cc: PostgreSQL Advocacy <[email protected]>
Message-ID: <[email protected]>
Subject: Re: PostgreSQL 12 Press Release - First Draft
References: <[email protected]>
 <[email protected]>
In-Reply-To: <[email protected]>

--LGPx9x7zrxWm9JIWsbtFbJy3SRZQH3TOz
Content-Type: multipart/mixed;
 boundary="------------925B983A0EA8A40B7E1D417D"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------925B983A0EA8A40B7E1D417D
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On 8/21/19 5:02 PM, Erik Rijkers wrote:
> On 2019-08-21 22:43, Jonathan S. Katz wrote:
>> Hi,
>>
>> Attached is a first draft of the press release for PostgreSQL 12.
>=20
> A few typos:
>=20
> 'PostgreSQL 12 also improvements the performance of'=C2=A0 should be
> 'PostgreSQL 12 also improves the performance when'
>=20
> 'with blocking any queries'=C2=A0 should be (I think)
> 'without blocking any queries'
>=20
> 'write-head-log'=C2=A0 should be
> 'write-ahead-log'
>=20
> 'that can be computed its value from other columns'
> 'that can compute its value from other columns'
>=20
> and something is not quite right about the sentence containing:
> 'LDAP servers using if it'
> but I can't figure out what it should be.

Thanks! I incorporated most of your suggestions in the updated copy.

Jonathan

--------------925B983A0EA8A40B7E1D417D
Content-Type: text/markdown; x-mac-type="0"; x-mac-creator="0";
 name="release.en.md"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="release.en.md"

# PostgreSQL 12 Released!

The PostgreSQL Global Development Group today announced the release of
PostgreSQL 12, the latest version of the world=E2=80=99s most advanced op=
en source
database.

PostgreSQL 12 enhancements include notable improvements
to query performance, particularly over larger data sets, and overall spa=
ce
utilization. This release provides application developers with new capabi=
lities
such as SQL/JSON path expression support, optimizations for how common-ta=
ble
expression ("WITH") queries are executed, and generated columns. The Post=
greSQL
community continues to support the extensibility and robustness of Postgr=
eSQL,
with further additions to internationalization, authentication, and provi=
ding
easier ways to administrate PostgreSQL. This release also introduces the
pluggable table storage interface, which allows developers to create thei=
r 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 si=
zes.
The project continues to receive recognition across the industry, includi=
ng
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 enhancemen=
ts to
its indexing system and to partitioning.

B-tree Indexes, the standard type of indexing in PostgreSQL, have been op=
timized
in PostgreSQL 12 to better handle workloads where the indexes are frequen=
tly
modified. Using a fair use implementation of the TPC-C benchmark, Postgre=
SQL 12
demonstrated on average a 40% reduction in space utilization and an overa=
ll gain
in query performance.

Queries on partitioned tables have also seen demonstrable improvements,
particularly for tables with thousands of partitions that only need to re=
trieve
data from a select few. PostgreSQL 12 also improves the performance of
adding data to partitioned tables with "INSERT" and "COPY", and a new par=
tition
can now be attached to a table without blocking queries.

There are additional enhancements to indexing in PostgreSQL 12 that affec=
t
overall performance, including lower overhead in write-ahead log generati=
on for
GiST, GIN, and SP-GiST indexes, the ability to create covering indexes (t=
he
"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 he=
lp with
columns that are nonuniformly distributed.

## Enhancements to SQL Conformance & Functionality

PostgreSQL is known for its conformance to the SQL standard =E2=80=93 one=
 reason why it
was renamed from "POSTGRES" to "PostgreSQL" =E2=80=93 and PostgreSQL 12 a=
dds several
features that build on the implementation of the SQL standard and offer e=
nhanced
functionality.

PostgreSQL 12 introduces the ability to run queries over JSON documents u=
sing
JSON path expressions defined in the SQL/JSON standard. Additionally, cer=
tain
JSON path expressions can utilize the existing indexing mechanisms for do=
cuments
stored in the JSONB format to efficiently retrieve data.

Common table expressions, aka "WITH" queries, can now be automatically in=
lined
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 n=
ot
recursive, does not have any side-effects, and is only referenced once in=
 a
later part of a query.

PostgreSQL 12 also introduces generated columns, which is a type of colum=
n that
can be computed its value from other columns in the same table. Currently=
,
PostgreSQL only supports "stored generated columns," where the computed v=
alue 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-insensiti=
ve or
accent-insensitive comparisons.

## Authentication

PostgreSQL expands on its robust authentication method support with sever=
al
enhancements that provide additional security and functionality in
PostgreSQL 12. This release introduces both client and server-side encryp=
tion
for authentication over GSSAPI interfaces, as well as the ability for Pos=
tgreSQL
to discover LDAP servers if PostgreSQL is compiled with OpenLDAP.

Additionally, PostgreSQL 12 now supports a form of multifactor authentica=
tion. A
PostgreSQL server can now require an authentication client to provide a v=
alid
SSL certificate with their username using the "clientcert=3Dverify-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 avo=
id
downtime scenarios for lengthy index rebuilds.

Additionally, PostgreSQL 12 can now enable or disable page checksums in a=
n
offline cluster using the "pg_checksums" command. Previously page checksu=
ms, a
feature to help verify the integrity of data stored to disk, could only b=
e
enabled at the time a PostgreSQL cluster was initialized with "initdb."

For a full list of features included in this release, please read the=C2=A0=
release
notes, which can be found at: https://www.postgresql.org/docs/12/static/r=
elease-12.html

## About PostgreSQL

PostgreSQL=C2=A0is the world's most advanced open source database, with a=
 global
community of thousands of users, contributors, companies and organization=
s. The
PostgreSQL Project builds on over 30 years of engineering, starting at th=
e
University of California, Berkeley, and has continued with an unmatched p=
ace of
development. PostgreSQL's mature feature set not only matches top proprie=
tary
database systems, but exceeds them in advanced database features, extensi=
bility,
security, and stability.

Learn more about PostgreSQL and participate in our community at=C2=A0Post=
greSQL.org.

--------------925B983A0EA8A40B7E1D417D--

--LGPx9x7zrxWm9JIWsbtFbJy3SRZQH3TOz--

--1ByK02PDzm1nondLrKtyiurFXREo8eYVQ
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE+oS2la8r95ogZD/x8QSccp8cZScFAl1ds2sACgkQ8QSccp8c
ZScg7Q/9HhAT87H/wQLm2tfLPTaFgIBrKWGvrzWabdFUiOlelKtsJMPNmtl4BiEo
sE13IPIRUH9Si43ozpQVuCIrUN6MV23g3wTch7JRihCG5p20Qn2jjL10qMwBuLDU
0zMOYPvUT+39MyEauHv/DBAMFCUEof0MoLyOcmrT3wOKWyuy/jEudd8MQSgJi5vs
wS5bTztqQnATMOzzWx8cP6nyrjOgovFtJQnBHkUQZUkAAUmlAdoJqDQCnquEJLD8
WdJZqs3+YYNw4wH3eyZC7zoCdHB+QpAX0kly26Vkt50jrXmAIGRfXtVi+VJy6DeY
7sMsY9lOy8TYh+fgW2U0EAANTiNEXES288TfO5q8ypvRXNPz6fkgaSq1cdTka2oD
ynNWRkbW145A/W4yPhKrtJX4m4NQme0b+vJCysGAD1fLUJl9UaRHejzEENYa1Uur
N5ED5K8sbh18tMzQ86gsRnXfEtSk66ftb+Ohy9r1O0ORxpLWDTHzz6PiV+gtnBj9
Ju/+BkSTveeKXwC9e4rpRfl56Kf359uCrw6t4JaLz9nSaM/yYKf1sisb22dCAHmZ
eBHzmjsgjPx1QnhHHRUBYkUj2e1EltUNGW7NC78TLaUC4L2fUvPaJa7lAjPdYOwH
+0tiBlen4xbNeLCjQFxFmTlt3cMN4KGTU5SWf01HsBTfjToqaCw=
=HW6k
-----END PGP SIGNATURE-----

--1ByK02PDzm1nondLrKtyiurFXREo8eYVQ--