読者です 読者をやめる 読者になる 読者になる

WinFS についてのビル・ゲイツ氏の最も新しい言及

.NET Vista

CNET Japan の翻訳記事に,ビル・ゲイツ氏の WinFS に関する言及がありました.

--あなたが以前から提唱してきたプロジェクトのひとつに、Windows用のまったく新しいファイルシステムWinFS」があります。フルタイムの仕事から身を引くことを発表した際、あなたは新しいファイルシステムの必要性を今後も提唱し続けてくれるよう、Ray Ozzie氏を説得するつもりだと述べました。この件はどうなっていますか。

ある種のリッチクエリでは、構造化型のモデルが求められていることに変わりはありません。しかし、電子メール、ファイル、写真などを全く同列で扱うためには、単なる検索インデックス以上のものが必要です。検索インデックスには一般に思われているよりも大きな可能性があると思いますが、将来的にはデータベース型のモデルが必要になるでしょう。

われわれはSQL技術を広い範囲で利用しています。リッチストレージの分野では、常にSQLが基本のコードベースとなっています。私は今でも次のメジャーリリースか、次の次のリリースにこのモデルを搭載できると考えています。実現すれば、これは大きなブレークスルーとなるでしょう。

--RayとSteveも同じ考えなのですか。それとも、これは依然として2008年(Gates氏が事実上の引退を決めている年)までに片づけなければならないものなのでしょうか。

SteveというのはSteve Sinofskyのことですか、それともSteve Ballmer?

--Steve Ballmer氏です。

私の直感が外れるとすれば、それはたいてい「何か」ではなく、タイミングの問題であることをSteveは知っています。問題は「いつか」であり、「もし」ではありません。しかし、メモリサイズとパフォーマンスに関しては、Steveはチームに判断をゆだねることになるでしょう。

われわれは非常に明確な基準に基づいて、リリースに搭載する機能を決めています。主な機能を選ぶ時は、その機能が十分に熟しているかどうかを考えます。Rayは必ず、最適のタイミングを選んでくれるでしょう。

それに、私は完全にいなくなるわけではありません。2008年半ば以降も、会社の近くで活動しているはずです。タブレット(PC)、WinFSなど、私が密接に関わってきたものについては、これからも私に先導役が期待されるでしょう。私もその役割を務めたいと思っています。

ただ,これをもって「WinFS は死んだわけではない」と言うのは早計でしょう.まずはそれ以前に LINQ の "Point of No Return" を迎え,何らかの方針が見えてくることかと思います.
統合イノベーションのジレンマに関する記事『“アジャイルイノベーション”に舵を切るMS――開発文化を根本的に見直』については以前 (id:NyaRuRu:20060919#p1) 詳しく書きましたが,「日経パソコン PC online」の『記事の芽』で書かれた以下の記事も,面白いところを突いているように思います.

一時はあれほどまでにフィーチャーされていたWinFSが、どうしてこのような末路をたどったのか。ブログでの発表以来ずっと考え続けてきたのですが、いまだによく分かりません。開発チームもそのあたりは明言を避けているので、正しい答えは闇の中。WinFSの構想が壮大すぎて技術的なハードルが高かったのだろうとか、ファイルの多くは構造化が難しいデータなので、Vistaが採用している全文検索技術の方がシンプルでなじむ面もあったのではないかなどと想像をめぐらせています。

そんな中、WinFS発表当時のことを調べたくなり、弊社雑誌の過去記事を読み返してみたときのこと。2003年の開発者会議で、ビル・ゲイツ会長自身が披露したWinFSのデモを紹介した記事の中に、こんな記述を見つけました。

WinFSを動かすにはかなりのコンピューター負荷がかかる。でもゲイツ氏によれば、2006年にはクロックが4G〜6GHzのデュアルコアCPU、2GB超のメモリー、1TB超のハードディスクが一般的になっているので制約はなくなる」。

今、時はまさにゲイツ氏が予想した2006年ですが、そんなパソコンが一般的でないのはご存知の通り。うーん、やっぱりWinFSが頓挫した最大の理由は、パフォーマンスなのかも。

個人的には,CPU 速度よりもメモリ搭載量の伸びが思ったより低かったのがポイントかなと思います.PDC 2003 で華々しく Longhorn の花火が打ち上げられたのは 2003年10月のことですが,それ以来の 1 年おきのメモリ価格を,『AKIBA PC Hotline!』で調べてみました.帯域は増加しつつも,容量と値段がほぼ横ばいで維持されたため,メモリ搭載量自体の伸びは随分と抑制されてきたことが推測されます.

【DIMM】 在庫ショップ数 実売価格範囲 平均 前回比
(SDR SDRAM)  
PC133 CL3 512MB 25 5,950〜 9,800 8,104 +95
PC133 CL3 256MB 26 3,930〜 7,980 4,936 -13
PC133 CL3 128MB 24 2,270〜 4,000 2,983 -95
PC100 CL2 256MB 23 3,777〜 7,280 5,233 -248
PC100 CL2 128MB 19 2,270〜 4,000 2,977 -46
(DDR SDRAM)  
PC3200 512MB 32 7,779〜11,580 9,064 -134
PC3200 256MB 32 3,960〜 5,699 4,598 -9
PC2700 512MB 32 7,879〜 9,999 8,559 -72
PC2700 256MB 31 3,920〜 5,480 4,401 -74
PC2100 512MB 31 7,779〜 9,877 8,531 -41
PC2100 256MB 31 3,877〜 4,980 4,251 -58
PC2100 128MB 12 2,250〜 2,680 2,385 -79
【DIMM】 在庫ショップ数 実売価格範囲 平均 前回比
(SDR SDRAM)  
PC133 CL3 512MB 20 7,750〜13,800 9,392 -53
PC133 CL3 256MB 20 4,150〜 7,770 5,229 -21
PC133 CL3 128MB 17 2,415〜 4,935 3,623 +155
PC100 CL2 256MB 16 4,180〜 9,420 6,762 +199
PC100 CL2 128MB 14 2,320〜 4,935 3,883 +64
(DDR SDRAM)  
PC3200 512MB 30 8,120〜11,780 9,221 +260
PC3200 256MB 30 4,120〜 6,000 4,832 +163
PC2700 512MB 27 7,850〜10,500 8,899 -57
PC2700 256MB 28 4,120〜 5,355 4,485 -22
PC2100 512MB 24 7,880〜10,500 8,759 +108
PC2100 256MB 25 3,880〜 5,355 4,451 +81
(DDR2 SDRAM)  
PC2 4300 512MB 22 13,800〜23,000 16,946 +290
PC2 4300 256MB 23 6,980〜10,680 8,501 -254
【DIMM】 在庫ショップ数 実売価格範囲 平均 前回比
(SDR SDRAM)  
PC133 CL3 512MB 15 6,880〜 9,980 8,024 -30
PC133 CL3 256MB 16 3,450〜 5,680 4,148 -80
PC133 CL3 128MB 12 2,200〜 3,980 2,857 +69
(DDR SDRAM)  
PC3200 1GB 24 9,880〜14,200 11,630 +71
PC3200 512MB 25 4,380〜 6,400 5,037 -100
PC3200 256MB 24 2,394〜 4,280 2,799 -23
PC2700 512MB 22 4,380〜 6,980 5,177 +54
PC2700 256MB 23 2,394〜 3,680 2,723 +10
PC2100 512MB 16 4,440〜 5,980 5,019 +13
PC2100 256MB 15 2,380〜 3,380 2,676 +17
(DDR2 SDRAM)  
PC2 5300 512MB 12 5,480〜12,480 8,045 -105
PC2 4300 1GB 22 8,770〜11,800 9,992 -402
PC2 4300 512MB 25 3,940〜 6,300 4,647 -213
PC2 4300 256MB 19 2,079〜 3,990 2,639 -140
【DIMM】 在庫ショップ数 実売価格範囲 平均 前回比
(SDR SDRAM)  
PC133 CL3 512MB 16 6,380〜 8,480 7,045 +35
PC133 CL3 256MB 18 3,203〜 4,980 3,899 +34
PC133 CL3 128MB 13 1,880〜 2,780 2,392 +18
(DDR SDRAM)  
PC3200 1GB 19 11,800〜15,800 13,038 +15
PC3200 512MB 17 6,280〜 7,854 6,894 +52
PC3200 256MB 16 2,593〜 4,180 3,433 +38
PC2700 512MB 17 4,980〜 8,280 6,770 +171
PC2700 256MB 16 2,550〜 4,180 3,476 +87
PC2100 512MB 12 5,780〜 7,980 6,771 +152
PC2100 256MB 15 2,550〜 3,980 3,431 +89
(DDR2 SDRAM)  
PC2 6400 1GB 15 13,780〜17,800 14,903 +106
PC2 6400 512MB 15 6,770〜 9,240 7,710 +72
PC2 5300 1GB 18 12,780〜14,800 13,574 +255
PC2 5300 512MB 17 5,970〜 7,980 6,681 +56
PC2 4300 1GB 19 11,280〜15,800 12,431 -153
PC2 4300 512MB 18 5,760〜 8,080 6,648 -137
PC2 4300 256MB 13 2,970〜 4,180 3,369 -130
【SO-DIMM】 在庫ショップ数 実売価格範囲 平均 前回比
(DDR2 SDRAM)  
PC2 5300 1GB 14 11,800〜17,800 14,904 +251
PC2 5300 512MB 14 5,980〜 8,980 7,374 +93
PC2 4300 1GB 13 10,800〜17,980 14,774 -74
PC2 4300 512MB 13 5,980〜 9,180 7,423 +120

プログラマの立場としては,メモリの帯域が数倍程度増えるぐらいなら,搭載量自体が数倍になってくれた方が,アルゴリズムの選択の幅も広がって,より新しい可能性にチャレンジできるように思います.が,現実はなかなかそうは行かないと.
とはいえ,ReadyBoost のような,メインメモリと HDD の間のとんでもないレイテンシ・ギャップの間を補完するアプローチも実現し始めましたし,今後まだまだ改善の余地はありそうですね.
個人的には,1 万円ぐらいで MSDN Library のレスポンスや使用感が大幅に改善する専用ハードウェアが出たら真っ先に買うのですが…… 4 GB ぐらいの高速 USB メモリを応用して,簡単に実現できたりしないものですかね?