Mentre Mysql e SqlServer godono la loro immeritata fama, Postgresql zitto zitto negli ultimi anni sta aggiungendo funzionalità succose nel proprio engine. Oltre al supporto nativo NoSql, campi array e campi json, a breve nelle future versioni di Postgresql (si presume a partire dalla 9.6) si potrà godere di un notevole boost di performance nelle interrogazioni grazie alle interrogazioni sequenziali eseguite in parallelo, sfruttando dunque più cpu.
L’annuncio è fresco fresco e potete leggere maggiori dettagli in questa pagina. Se la pigrizia è uno dei vostri peccati capitali, vi mostrerò semplicemente la differenza riportata in uno dei test eseguiti dagli sviluppatori:
rhaas=# select * from pgbench_accounts where filler like '%a%'; aid | bid | abalance | filler -----+-----+----------+-------- (0 rows) Time: 743.061 ms rhaas=# set max_parallel_degree = 4; SET Time: 0.270 ms rhaas=# select * from pgbench_accounts where filler like '%a%'; aid | bid | abalance | filler -----+-----+----------+-------- (0 rows) Time: 213.412 ms
Nel secondo blocco sono stati impostati 4 gradi di parallelismo che ha ridotto il tempo di esecuzione della query di circa il 70%. Ovviamente non tutte le interrogazioni avranno risultati così felici, ma il vantaggio potenziale è pur sempre un ottimo risultato.