5番目となる接続コストについて同氏は「“PostgreSQLは接続コストが重い”と言われていることと、“MySQLはマルチスレッドのモデルだから速い”と言われていることを検証したかった」と、その狙いを説明している。そうした背景の下で行った接続コストの結果だが、実際には「PostgreSQLは意外に速い」という結果になっている。
このテストは、クライアントの数を0から1000台まで増やして、最初のクエリを投げられるまでの時間を計測するというものだが、PostgreSQLは総じてMySQLより速い処理時間となっている。しかし、クライアントの数が20台の付近では、MySQLよりも時間がかかってしまうという結果だ。なぜ、このような結果になるかについては原因が不明であり「今後検証していかないといけない」としている。
PostgreSQLは遅くない
こうした検証結果からPostgreSQLの特徴について、片岡氏は「INSERTとUPDATEが遅い」としながらも、「“SELECTが遅い”というのは間違い、むしろ速い」とまとめている。また、8.1まではカラム数が多いと遅いという傾向だったが、バージョンが上がる度に性能は確実に向上していると説明している。
さらに1サーバ多クライアントでの結果から、PostgreSQLは多クライアント環境で速いとしたうえで、「クライアント数をどうやって制限するかを考えるとよりも、サーバのメモリを増やして同時接続できる数を増やすという考え方をしたほうがいい。そうすれば結果として楽になれる」と語っている。
「“遅い”と言われるPostgreSQLだが、現行のバージョンであれば、ほかのOSSのRDBMSと比較して十分に速いことがわかった。商用のRDBMSと比較しても遜色はない。ただし絶対にチューニングは必要だ」
片岡氏はまた、こうも語っている。
「実務とかけ離れたベンチマークをしたことで、それぞれのDBMSが持つ“色”が見えてきた。つまり、それぞれのDBMSには性格、クセがある。その性格を理解して、もっとも効率のいい使い方をするべきだろう」