人気ブログランキング | 話題のタグを見る
kazuho.exblog.jp - 奥 一穂の飲んでから書くブログ。なにもかもアルコールのせいです
ムーアの法則とウェブサービスへの投資予測
 多くのウェブサービスでは、時間の経過とともにデータ量が増えて行きます。それにともない、HDD やメモリの増設が必要になるわけですが、ではいったい、どの程度の投資が必要になるか、どう計算すればいいのでしょう。

 半導体業界の有名な経験則として「ムーアの法則」と呼ばれるものがあります。半導体の集積密度は18ヶ月〜2年で倍になる、というものです。メモリのバイト単価はこの法則に反比例注1、つまり18ヶ月〜2年で半額になる、と考えることができます。また、HDD の容量の拡大はより急速で、バイト単価は12ヶ月〜18ヶ月程度で半額になる、と考えればいいかと思います。

 というわけで、この指数関数の傾きが1になるところを求めることで、最大の設備投資が必要になる時期がわかります。あとは、その時期に必要となる記憶容量と予測単価 (これはやはり、ムーアの法則から算出することができます) から、その時期の投資額を算出することができます。これがサービスのランニングコストの最大値になります。

 以下は、いくつかのパターンについて実際に計算してみた値です。

 集積度倍増の期間 最大の投資が必要になる時期 同時期の予測単価(現在比)
     12ヶ月          6ヶ月後          0.71
     18ヶ月         20ヶ月後          0.46
     24ヶ月         36ヶ月後          0.35

 たとえば、搭載メモリ量が重要なサービスを開発しているとします。そして、1年後のメモリ必要量を16GBと予測していたとします。メモリの単価が24ヶ月で半減すると仮定すると、最大の投資が必要になるのは3年後だということが、上の表より分かります注2。3年後のメモリ必要量は、毎年1回投資するとした場合 16GB*(3+1)=6448GB です。そして、同時期の予測単価は現在比で0.35になっているので、最大の投資額は、現在の 64GB*0.35=22GB に相当する額ということがわかります。あれ、現在必要な投資額と大して変わりませんね。実はそうなんです。

 ウェブサービスは実際には、数ヶ月〜1年程度後の需要を見越して構築されます。つまり、ムーアの法則を加味すると、1年後の需要予測を満たすウェブサービスであり、以後2年間同程度(かちょっと上)の資本投下を行えるのであれば、時間の経過に伴うデータ量の増加は問題にならないのです。より半減期が短い HDD 容量が重要な場合だと、1年目さえ乗り切れれば、翌年以降の投資額は低減していくことになります。

 ウェブサービスを開発していると、時々、データサイズが時間とともに増えていくけど問題ないの?、と聞かれることがあります。そういった場合の答えとして、「重要なのはデータサイズではなく設備投資コストであり、ムーアの法則を加味するとうんぬん」という答えが成り立つよ、ということは、覚えておいて損はないのではないか、と思います。

追記: あるいは、こういうイケイケドンドンの投資予測が成り立ってしまうのが、ネット業界の面白さでもあるのだと思います。これが、他の業界との差異であり、また (他の業界の慣習に慣れた人から) 白眼視されがちな理由でもあるのかな、と思いました。

注1: チップの面積あたりの製造原価が変化せず、かつ市場原理が働いていれば、そうなります。
注2: メモリの増設ではなく機材の買い替えを前提としています。往々にしてそのほうが安かったりするので。

# by kazuhooku | 2007-10-13 11:01 | 雑想
非同期処理はウェブアプリのスケーリングの次のトレンドになら「ない」
 「Don'tStopMusic - DB分散の次は非同期処理がウェブアプリのスケーリングのトレンドになる」の件、自分は否定的。

 理由は単純。非同期処理でしか書けないような重たい処理をサーバで大量に走らせるような高コストのウェブサービスは、B2C では成立しづらいと思うから。もちろん非同期で書くことにメリットがあるケースもある (キャッシュの更新とか、参照頻度が低い情報の更新とか) だろうけど、非同期処理はニッチに留まると思う。まあ、トップのごく一部のサービスでは、使われるようになるかもしれないけど。それくらい。

 ついでに。同期処理であること (正確にはサーバサイドのアプリケーションロジックが同期的に記述できること) が、ウェブアプリのプログラミングが簡単な理由だし、それはウェブの普及の欠かせざる要因だったはず。いまさら非同期処理に戻りたくないと思う。
# by kazuhooku | 2007-10-02 12:43 | 雑想
Re: ソーシャルブックマークとrel="nofollow"
naoyaグループ - naoyaの日記 - ソーシャルブックマークと rel="nofollow"について。

 例えば、自分のブックマークは、かなりマイクロブログ的な使い方をしている。ブログエントリからのリンクを全部 rel="nofollow" にしちゃうようなブログサービスっておかしいと思いませんか?

 ソーシャルブックマークには、自動生成されるリンクファーム的な部分と、個別ユーザーのブログ的な部分がある。たとえば、前者のみ rel="nofollow" とし、後者はしない。システム全体として二者択一するのではなく、そのリンクが自動的に生成されたものなのか、それともユーザーの操作によって張られたものなのか、で区別するのが本来なのではないか、と思った。
# by kazuhooku | 2007-09-25 17:34 | 雑想
アロンソが失格にならない件
 機密情報をそれと知って受け取っていたという事実は認定するけど、証拠を提示した場合は免責するよって言った以上、処分はしないってことなのか。そんなチャンピオンシップに何の価値があるんだろう。

F1通信:FIAからアロンソ ハミルトン デ・ラ・ロサへの書簡内容:FIA公式プレスリリース
F1通信:FIA世界モータースポーツ評議会「裁定」全文:FIA公式プレスリリース
# by kazuhooku | 2007-09-22 20:37 | 雑想
アセンブラは遠くになりにけり
 一連のマシン語関連のやりとりを見ていると、時代を感じずにはいられないな。かつては「富豪的プログラミング」という語もあったわけだけど、いまや「富豪」であることが普通になっている。
# by kazuhooku | 2007-09-19 20:46 | 雑想