第8回:PostgreSQLの適用範囲を考える 〜 ベンチマークテスト (3/3)

徹底比較!! Oracle & PostgreSQL
徹底比較!! Oracle & PostgreSQL

第8回:PostgreSQLの適用範囲を考える 〜 ベンチマークテスト

著者:ミラクル・リナックス  高橋 強   2005/8/12
前のページ  1  2  3
Oracleとの比較


OracleとPostgreSQL(VACUUM未実行)
図3:OracleとPostgreSQL(VACUUM未実行)

   上記は同じテストを行った場合のOracleの結果とVACUUMを実行しなかった(3回目、4回目の間ではデータ更新も発生しないので、同じ条件でしかありません)場合のPostgreSQLを比べてみたものです。

   PostgreSQL単独で見た場合、図1の結果と比べると、VACUUMが実行されないために、3回目と4回目ではデータファイルのサイズに違いはなく、レスポンスタイムもほとんど同じ結果となりました。

   一方のOracleの場合、表は個別のデータファイルと対応しないため、社員表を構成するエクステント全体の総ブロック数からそのサイズをだしています。この値は複数回の50万件更新後でも、まったく変わりはありませんでした。レスポンスタイムも悪化は見られずほぼ一定の結果でした。

   Oracleは「該当行を直接書き換える」ので表データ全体のサイズが変わらず、データ数やその位置にも変化がないため、検索時間にも影響がでません。

※注: updateする列「その他」は可変長文字列であり、その列長を大きく増やした場合は行サイズが大きくなり、結果として使用ブロック数が増加したり、位置が変わる場合があり得ます。このテストでは列長はほとんど変えずにテストを行っています。またHWM(High Water Mark)以後の未使用ブロックも計算に含まれています。
ベンチマーク総論

   数回に渡ってOracleとPostgreSQLを使いベンチマークテストを行ってきましたが、どちらにも得手不得手がある事がご理解いただけたでしょうか?

   登録・削除はPostgreSQL、検索・更新についてはOracleの方に分がありそうです。ただし、繰り返しになりますが結果の数値だけを単純に見るのではなく、「それらの差が何処から生まれてくる物であるのか」という事を知るための情報の1つと考えて下さい。

   このテストの主たる目的は構造の違いから発生するパフォーマンス上の影響を確認するという意味合いが強く、純粋にパフォーマンスの善し悪しを判断するためのものではない事もまたご理解いただけるかと思います。

   ポイントとなるのは、以下の通りです。

  • PostgreSQLが追記型である点

  • OracleのREDO、UNDOの構造の複雑さ

  • PostgreSQLのVACUUM

  • インデックス作成列の選別
   それぞれの良い点悪い点がどういった理由に起因するかがある程度思い描ければ、実システムの構築でも考慮すべき点に気付く事ができ、要件のプライオリティやバランスの中でDBの選定に役立てる助けになる物と考えます。

前のページ  1  2  3


ミラクル・リナックス
著者プロフィール
ミラクル・リナックス株式会社  高橋 強
1993年某SIベンダへ入社後、Oracle、DB関連のコンサルティング、チューニング、社内案件の技術支援などを10年ほど担当。2004年ミラクル・リナックス株式会社へ入社。


INDEX
第8回:PostgreSQLの適用範囲を考える 〜 ベンチマークテスト
  VACUUM実行の有無によるパフォーマンスの影響
  テスト其の伍 〜 VACUUMの影響
Oracleとの比較
徹底比較!! Oracle & PostgreSQL
第1回 データベースソフトウェアの選択基準とは
第2回 アーキテクチャ比較  プロセス構造の違い
第3回 アーキテクチャ比較  ファイル構造の違い PostgreSQLの特徴
第4回 PostgreSQLの適用範囲を考える 〜 機能比較
第5回 PostgreSQLの適用範囲を考える 〜 データ登録のパフォーマンス
第6回 PostgreSQLの適用範囲を考える 〜 データ検索のパフォーマンス
第7回 PostgreSQLの適用範囲を考える 〜 更新・削除のパフォーマンス
第8回 PostgreSQLの適用範囲を考える 〜 ベンチマークテスト
第9回 PostgreSQLの適用範囲を考える 〜 管理・運用編
商用&OSSデータベースの現状と今後
第1回 シェアの差はそのままデータベースの実力の差か?〜RDBMS各々のメリットとデメリット比較〜
第2回 止まらない安心&止まっても安心?〜有名ブランドだけが可用性を保証できるのか?
第3回 1台なら大丈夫。つないでいっても大丈夫?〜OSSのスケーラビリティの実際
第4回 商用 vs. OSSの単純な機能比較では話にならない 〜 データベースのセキュリティを考える
第5回 ホントにつながる?商用とOSSの異種データベース接続を見てみよう
第6回 「バックアップとは何か」から見た、商用 vs OSSデータベースの違いとは?
第7回 ラクする?こだわる?データベースのパフォーマンスチューニング

人気記事トップ10

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