Starting with version 9.6 PostgreSQL supports parallel queries. The support for parallelism has been improved gradually over time and version 11 has added even more functionality to this important feature. In this section, we will take a look at how parallelism works and what can be done to speed up things.
Before digging into the details it is necessary to create some sample data as shown in the following section:
test=# CREATE TABLE t_parallel AS SELECT * FROM generate_series(1, 25000000) AS id;SELECT 25000000
After loading the initial data, we can run our first parallel query. A simple count will show, what a parallel query looks like in general:
test=# explain SELECT count(*) FROM t_parallel; QUERY PLAN ...