ぴゅーもんブログ

カナダ生まれの日本育ち白イルカ(ベルーガ)のぬいぐるみぴゅーもんのブログです、ハワイにもいったよ〜(不定期のんびり更新)

Oracle&MS ACCESS(へたれな)コネタ どっちが早い

こんなこと書くまでもなく、Oracleでしょうって思ってました。でも条件によってはACCESS(2003)が早い場合もあるんですね。これは、私の体験ではなく聞いた話なので、検証していないのですが、次の条件で速度を比べたらしいです。

  • Windows2003サーバ
  • Oracle10.g
  • Oracleと同一サーバ上のMDBファイル
  • Oracle、ACCESSともに同一スキーマテーブル
  • 同一の更新系SQLを実行
  • データ件数20万件ほど
  • Oracle側はストアードで実装
  • ACCESS側は、クライアントPCにサーバ上MDBをリンクし、ローカルのクエリーを実行
  • Oracle側は、上記クライアント側MDBより、VBAを利用してADO経由で、ストアードを実行
  • サーバー機はクライアント機よりハイスペック(詳細は不明)で、Oracle以外のサービスは利用していない

上記のように圧倒的にOracle側に有利と思われる状況で、結果はACCESSの方が高速であったとらしいです。これは、興味深い結果ですね。この比較は、単純ではないのですが、実際に私がやっていないので、最初効いたときは、信じられなかったのですが、ある条件下(具体的にはもっと調査する必要有り)においての一つの事実であることに違いはありません。
Oracle側のデータベースエンジン以外の高機能な部分があることを差し引いても、こんな結果でいいの?って感じです。確かに、この比較を行なった担当は、Oracleに関してはあまり詳しくない人なのですが、仮に、Oracleのパフォーマンスチューニングが誤っていたとしても、おそらく既定値のまま利用していたのでしょうから、利用しやすさの点で問題があるのではとも思えます。
機会があったら、このストアード実行の詳細環境を、私も調べてみたいです。