技術の進歩って・・・・

PCの世界は停滞しているように思えます。
私の会社にいるPCは5年前の物でも3Gに近い周波数のCPUです。
実際のところ速いとはとても言えませんが 実感上現在の普及機のCore2Duoの2.4GぐらいのCPUでクロックは同等程度とデュアルコアになったものの速くなったのか疑問なところもあります。
ベンチマーク上は速いのですが、実際使ってみるとソフトウエアの豪華装備などで負荷が重くなっていることもありその当時のWordやExcelを使っていると そうそう遅くも感じないわけです。
勿論、予測変換もなければ 動的にビューが出たりもしないわけなのですが。
実際に恐らくWindowsXPを入れてみれば体感できるのでしょうが そうでないので解らないのだとは思います。
 
そんな時に 現在1台のサーバーを入れ替えるべくテストを行っています。
元々は Pentium4ベースのXeon 3.2GのPCサーバーのDBを現行のものに移し替えるという作業です。
今回のサーバーは特に速いものではないのですが 現行Xeonの6コア3Gのものとクロック的には少し落ちていますが 6台分の速度という事となります。
DBサーバーとして使う上で メモリーは重要なファクターですが Windows2000の頃のサーバーですのでメモリーは2G搭載だったのです。
それが今回のものは24Gまで搭載しており 当然OSも64Bitのものとなっています。
DBのサイズは無駄なものがてんこ盛り(笑 でテンポラリーまで含めて9Gぐらいのサイズです。(エクスポートしたテキストでのサイズ)
これを一括で条件立てて更新するSQLを複数回実行して 実業務に近い環境を作ってのテストを行いました。
 
当然古いしいステムで実行すると10数分で結果の返ってくる 営業時間にはとても実行できないヘビーな処理でした。
で、新しいサーバーで実行すると その回答までの時間は僅か7秒でした。
当然、数回実行してキャッシュの効果が確認できる状況での話なので 一概に速度比較というのは正しくはないのですがその時間で実行できたという事実は変わりません。
具体的な結果でいえば、読みだされたDBは一時的にメモリー上にキャッシュとして置かれているものに対して処理が実行されたと推測され メモリー上での処理であれば驚くほど速くなったはずです。
モリーの量から考えても、DBすべてがキャッシュに入ってもおかしくない量だからです。
実業務に移ったとしても、常時更新されるマスター類も 近々のデータなどは間違いなくキャッシュされているわけで それらの処理にかかる次回というのは 秒かかるかかからないかのものときっとなることでしょう。
 
じゃあ、コンピューターが速くなったのか?というと 実はCPUよりメモリーの効果が大きかったのでは??という側面もありますが 基本的に外部記憶装置やメモリーへのアクセス速度が速くなったことも効果を高めているはずです。
もし、このサーバーを入れ替えたら この処理に関しては・・・と楽しみなところではあるわけですが
実際のところこの5年程でやはり 大きく進歩しているのだと感じることが出来た部分です。
一つは技術の問題。
もう一つは、価格の問題で 恐らくどうしてもと言えばその当時も24Gのメモリーを搭載した機器をそろえることが出来たのだとは思いますが 現在のサーバー価格は5年前のそれと同等だという事も大きなポイントです。
知らないうちにというか 知っていたはずなのに 進歩から関係ないと目をそらしていたのかもしれません。