徹底比較!! Oracle & PostgreSQL 5

PostgreSQLの適用範囲を考える

ベンチマークで基本能力を比較してみる   さて、これまでアーキテクチャや機能などについてOracleとPostgreSQLを比較してきました。今回からは、実環境でベンチマークを行い性能面での違いを検証してみます。

高橋 強

2005年5月23日 20:00

ベンチマークで基本能力を比較してみる

   さて、これまでアーキテクチャや機能などについてOracleとPostgreSQLを比較してきました。今回からは、実環境でベンチマークを行い性能面での違いを検証してみます。

   まず先に注意していただきたいのですが、ベンチマークというとすぐに結果の数値のみを見て優劣を判断してしまいがちですが、ある限られた環境下でのテスト結果のひとつに過ぎない事を忘れないで下さい。

   特にデータベースを用いたアプリケーションの場合、性能差はデータやアプリケーションに依存する割合が高く、サーバ側の性能のみで論じられるほど簡 単に評価はできません。実際のところは、現実に即した環境下でアプリケーション、データを揃えた上でテストしなければ、そのシステムに対する比較データを 得る事はできません。

   システムやアプリケーションによる総合的なテストは本来の環境で自ら確認していただくとして、ここではもっと単純な部分でOracleとPostgreSQLを比較してみたいと思います。

テスト環境

   小規模サーバ向けのPCにMiracle Linux V3.0(IA32版)をインストールし、OracleとPostgreSQLをインストールします。スペックはPentium 4 3.2GHzの1CPU、2GB Memory、SATAハードディスク2つという環境です。OSがインストールされているディスクに実行モジュールを置いたまま、データベースを構成する ファイルのみを別ディスクに配置しました。

   メモリ上のバッファサイズなどはPostgreSQL、Oracleで共通になるよう調整しました(表1)。

Oracle PostgreSQL 設定サイズ
db_cache_size shared_buffers 200MByte
sort_area_size sort_mem 64K
表1:OracleとPostgreSQLの設定


  他は基本的にデフォルト設定のまま使用しています。また、使用した表(テーブル)の定義は、下記を基本としています。

 

create table 社員表 (
社員番号 number(12) not null, (主キーとする場合もあり)
補足情報 number(12) not null,
氏名 varchar2(16),
役職 varchar2(20),
給与 number(8),
部門番号 number(3),
その他 varchar(80));

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る