ページの先頭行へ戻る
Enterprise Postgres 9.5 アプリケーション開発ガイド
FUJITSU Software

12.2.3 確認

対象のSQL文を“EXPLAIN ANALYZE”で実行することで、並列検索が動作したかを確認することができます。

EXPLAIN文の出力結果に実行ノード“Parallel Seq Scan”が出力されているかを確認します。

以下に、EXPLAIN ANALYZEの出力結果例を示します。

postgres=# EXPLAIN ANALYZE select * from test_time where f1 = 0;
                                                        QUERY PLAN
--------------------------------------------------------------------------------------------------------------------------
Gather  (cost=1000.00..23566.58 rows=1 width=8) (actual time=1079.126..1190.999 rows=100 loops=1)
   Number of Workers: 7
   Allocated Workers: 7
   ->  Parallel Seq Scan on test_time  (cost=0.00..22566.48 rows=1 width=8) (actual time=10.102..128.702 rows=12 loops=8)
         Filter: (f1 = 0)
         Rows Removed by Filter: 1249988
Planning time: 0.329 ms
Execution time: 1192.455 ms
(8 rows)

“Parallel Seq Scan”が表示され、実行時の並列度も確認できます。

また、“EXPLAIN”により、SQL文のみの評価として、並列検索が選択されるかを確認することができます。

postgres=# EXPLAIN select * from test_time where f1 = 0;
                                 QUERY PLAN
----------------------------------------------------------------------------
Gather  (cost=1000.00..23566.58 rows=1 width=8)
   Number of Workers: 7
   Allocated Workers: 0
   ->  Parallel Seq Scan on test_time  (cost=0.00..22566.48 rows=1 width=8)
         Filter: (f1 = 0)
(5 rows)