Linuxの次世代ファイルシステムは「バターFS」!?TweetNewsInsightext3は遅く、ext4は設計が古い。「ext3は......古くて遅い。次バージョンのext4も基本的にext3と同じ問題を抱え込んでいる。ext4で解決されるext3の欠点は一部に過ぎない」。Japanの主催で行われたシンポジウムで講演した米グーグルのアンドリュー・モートン氏は、こう話し、現在Linuxはファイルシステムに課題を抱えていると指摘する。Linuxで使われているファイルシステムにはいろいろあるが、現在最も広く使われているのはext2の後継として開発されたext3と呼ばれるファイルシステムだ。耐障害性のあるジャーナリング・ファイルシステムとして、ext3以外にもJFS、ReiserFS、XFSなどがLinuxでサポートされているが、これらはデ・ファクト・スタンダードとして利用されているext3に比べるとマイナーな存在だ。「XFSはパフォーマンスは良いが、サポートが十分ではなく、ベンダがサポートしたり機能を拡張したりするのが難しい」(モートン氏)。Btrfsがわれわれすべてを救ってくれる順当な進化となるext4はext3の欠陥を引き継いでいるうえに、「開発テンポは非常に遅い」(同氏)。した事情からモートン氏が期待をかけるのが「Btrfs」(バターFS)だ。Mason)氏が開発したもので、現在GPLライセンスの元にオープンソースで開発が進められている。TechCasts」で行ったインタビュー(mp3)の中で、Btrfsを開発した動機について次のように述べている。「ext3で大きなディスク上にファイルシステムを作ることは簡単だが、大量のデータを管理するのは難しい。ディスクやデータのエラーを処理し、一貫性を保つのは極めて困難だ」。ext3でも16TBのファイルシステムは作成できるが、ファイルシステムの検査・修復を行うのは事実上不可能というほど時間がかかるという。Btrfsに取り入れられる機能としてメイソン氏は、スナップショット、オンライン・ファイルシステム・チェッカー、オンライン・デフラグメンテーション、オンライン・リサイズ、オブジェクトレベルでのストライピングとミラーリング、マルチデバイスサポート、ファイルシステム全体でのバリデーションや圧縮の機能を挙げる。OSで標準となっているファイルシステム「ZFS」と共通した項目が多い。この点についてメイソン氏は「ええ、かなりの部分が共通しています。その理由の1つはZFSもBtrfsも同じような時期に開発したものだからという事実に由来します」。System)のスタイルを踏襲しているもので、ZFSやBtrfsは“コピー・オン・ライト”と呼ばれるテクニックをベースに設計された新しい世代のファイルシステムだという。メイソン氏はミドルレンジサーバで良く使われているext3を置き換えることを主眼にしていると話す。ext2、ext3、ext4と後方互換性を保ったまま拡張してきたファイルシステムは限界のようだ。Linuxで使える高機能な次世代ファイルシステムは、どれも主流となるほど求心力を持たなかった。サンのZFSはライセンスの互換性がないため、Linuxカーネルに取り入れられず、今のところユーザー空間で動かすモジュールになっている。Reiser)氏が妻を殺害した容疑で2008年4月に第一級殺人罪の評決を受け、その後、2008年7月7日に司法取引に応じて罪状を認めたことから、長らく不安視されてきたReiserFSの次期バージョン、Reiser4の開発の先行きはますます不透明さを増している。した背景から、GPLベースの高機能な次世代ファイルシステムが待望されているのだろう。メイソン氏はBtrfsの機能をリストアップしてプロジェクトを発表したとき、開発者コミュニティから「予想したよりはるかに大きな反響があった」という。現在のところ、Btrfsがext3を置き換えて主流となっていくかは分からない。モートン氏は「私が知る限り、オラクルが保証していたほど外部の開発者が関わっていない。Btrfsをメインラインにマージすればいいのかもしれない」と開発プロセスの問題も指摘する。モートン氏はファイルシステムに関して、別の問題も指摘する。「SSDに対して準備ができていないうちに、市場でSSDがあふれかえり、Linuxの対応が遅れるかもしれない」(モートン氏)。ドライブが回転するハードディスクと、可動部がなくランダムアクセスに強いSSDとでは物理的特性がまったく異なる。このため、SSDを明示的にサポートするファイルシステムが必要だという。モートン氏は講演の中で、ファイルシステムの話題のほかにも、Linux開発ツリーとパッチ管理の問題、トラブルの多いx86アーキテクチャの問題、リアルタイムカーネルがメインラインに統合されつつあること、仮想化関連ではKVMサポート関連で頻繁な変更があること、システムの挙動を監視・分析するTrace関連がホットトピックとなっていることなどに触れた。(2017/7/27)本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、コマンド名からプロセスIDを探す「pidof」コマンドです。(2017/7/21)今回は、コマンドライン環境でのジョブコントロールを試してみましょう。(2017/7/21)本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、プロセスごとのCPUの使用率やI/Oデバイスの使用状況を表示する「pidstat」コマンドです。(2017/7/20)本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、I/Oデバイスの使用状況を表示する「iostat」コマンドです。統合型マーケティング支援市場のB2B、B2C別の規模推移および予測です。国内企業に新型コロナウイルスの影響を聞いています。