![]() ![]() ![]() ![]() 次世代ファイルシステムの行方この記事のURLhttp://japan.internet.com/webtech/20071129/6.html
著者:佐藤剛宣
国内internet.com発の記事
前回は、大局的な方向性をつかもうと、
今日直面している現実の問題から離れ、遠い将来を眺めてみました。
性能の向上自体には、働き方を変えるほどのインパクトはない、
そう考えましたが、どうやら現実の問題は性能向上一色のようです。
chunkfs、btrfs、 ext4 といった Linux の次世代ファイルシステムが解決しようとしている課題、 それは、今日では考えられない巨大なディスクを扱いながら、 ファイルシステムの検査や修復を、 超高速またはオンライン(サーバーやアプリケーションを動かしながら)で行うことです。 近い将来ディスクのサイズで予想されているのは、 エクサ(またはヘクサ)という単位で、 ギガ、テラ、ペタの次に来る、 10億ギガ相当だそうです。 こんなファイルシステムだと、既存のファイルシステムとツールを使用した場合、 ファイルシステムの検査や修復に119年もかかってしまう、 と IBM リナックステクノロジーセンターの Mathur 氏は、 第9回リナックスシンポジウムで説明しています。 こういう競争によって、 Windows のディスクデフラグは、 ひょっとしたら自動的にバックグラウンドで実行できちゃうようになるかもしれません。 ただしこれは主にサーバー関連の話です。 カーナビゲーションシステムやデジタルビデオなど、組込みの分野では、 また別の厄介な問題があります。 組込みシステムでは、原価やバッテリ寿命に大きな影響があるので、 CPU やメモリなどいろんなリソースの制約が大きいだけでなく、 性能の最低値(最悪値)が一定以上であることが要求されます。 第1回目のコラムで書いたように、 普段全くストレスなく使えるときもあれば、 固まってしまってどうにもならないこともあります。 例えばそんなことが、ケータイで発生したら、間違いなく故障だと思いますよね。 最悪な場合はエレベーター事故のように、人命に関わる場合も出てきます。 そのため、組込み機器では、最悪値も重要視します。 最高と最低のぶれが大きい場合は、信頼性が低い、という結論になります。 「シークをいかに減らすか」ということは、 今日のコンピュータ性能向上の課題ですが、 信頼できる安定した結果が欲しい組込み機器では(キャッシュのような機能に頼りにくいため)、非常に重要な命題になります。 実際どうするかというと、ハードディスク上のデータの配置を最適化して、 1回のシークで連続する領域を一気に先読みしてシークを最小限にすることで、 必要な性能を確保するのです。 実際カーナビゲーションシステムなど、 圧倒的な性能が要求されるシステムでは、 既成のデータベースが全く相手にならない、驚くべき性能が実現されています。 残念ながら、この要求に答えてくれるような次世代ファイルシステムは、 私が知る限りまだ登場していません。 独自に構築するシステムと、 Linux のような汎用的なシステムの間にはだかる大きな壁のようで、 特定の用途に使われる組込み機器と、 不特定の用途を想定する PC との違いは、 ひょっとしたら埋まらないのかもしれません。 ただし、ハードディスクの先、 フラッシュメモリを使用した SSD の時代を見据えている Linux のファイルシステムは着々と進行中で、 この問題を一気に解決する可能性を秘めています。 以上、今回は今日ファイルシステムが直面している課題について取り上げました。 次回はファイルシステムに着目する最終回ですが、 単体のファイルシステムから目を転じ、 それらが協調して1つのコンピューターとして性能を発揮できるようにしてくれる、 縁の下の力持ちを取り上げます。
記事提供:db4objects
|