失敗から成功まで、HDFSでRAIDを利用するFacebookの挑戦バグや失敗をどう解決した?

FacebookはHadoop分散ファイルシステムにRAIDを展開して、容量削減を実現した。だが、当初は期待通りに削減できず、データの破損に悩まされた。彼らはいかにして課題を解決したのだろうか。

2014年07月17日 08時00分 公開
[Archana VenkatramanComputer Weekly]

 米Facebookは2013年、大規模なHadoop分散ファイルシステム(HDFS)にRAIDを展開して、空き容量を数十Pバイト増やすと同時にデータの複製(レプリケーション)処理を減らした。しかしこのプロジェクトを進める間に、同社のエンジニアリングチームはデータの破損や大規模なディレクトリシステム全体にわたるRAIDの実装に苦戦するなど、数多くの課題に直面した。

 同社が今回実装したテクノロジーの例として、HDFS内のErasure Codingが挙げられる。これによってHDFSでデータの複製が発生する要因を減らしている。

 RAID(Redundant Array of Independent Disks)は、同一のデータを複数のHDDに保存する(すなわち冗長性を持たせる)手法である。HDFSは、Hadoopが使用するプライマリストレージシステムだ。HDFSはHadoopクラスタ全体にわたって、データへのアクセスについて高いパフォーマンスを実現する。また、ビッグデータの管理とビッグデータのアナリティクスをサポートしているという点で、HDFSは重要なツールとして大規模組織からの注目を集めている。

 HDFSで複製できるファイルは、デフォルトでは3つまでとなっている。Facebookのエンジニアリングチームによると、この制約のためにメディア容量の大きなオーバーヘッドが発生することがあったという。そこで同社はHDFSのRAIDテクノロジーを活用し、データの複製の実行回数を減らすとともに、使用する領域のオーバーヘッドを減らすことにも成功した。

 「2013年、当社のデータウェアハウスのHDFSクラスタに全面的にRAIDを展開した。クラスタでデータの複製が発生する要因を減らすことで、2013年末までに数十Pバイトのメディア容量を節減できた」と、Facebookのエンジニアリングチームは同社の公式ブログに投稿している。

 ただし、数百Pバイトの大規模なHDFSクラスタにRAIDを展開する過程で、Facebookは幾つもの課題に直面した。「そこでわれわれが学んだ教訓を共有したいと思った」と、同社エンジニアリングチームはブログに記している。

メディア容量を節約する工夫

 FacebookがRAIDを本番環境に展開した当初、節減できたメディアの容量は予測よりもずっと少なかった。「調査の結果、RAIDに深刻な問題があることが分かった。われわれは『微小ファイル問題』の洗礼を受けた」とエンジニアはブログに記している。

 エンジニアリングチームは、ファイルサイズが論理ブロック10個程度の場合に、容量の節減効果が最も大きくなることを発見した。それよりもファイルが小さくなると、容量削減の効果は落ちる。2ブロック以下のファイルでは、RAIDの容量削減効果は全くなくなる。

 同チームの分析では、本番環境のクラスタに保存されているファイルのうち50%以上が、その小さすぎる(2ブロック以下の)ファイルだった。

 この問題の解決策として、ITチームは複数ブロックをまとめてグループ化した。「微小ファイル問題への対策として、ある単純な観察結果から発想を得て、ディレクトリRAIDを開発した。その観察結果とは、(Hadoop MapReduceのツールである)Hiveを使用していると、リーフディレクトリ下のファイルは、作成後ほとんど変更されないということだ。だとすると、リーフディレクトリ全体を1つのファイルとして扱えばファイルのサイズが(見かけ上は)大きくなる。そのファイルをRAIDに展開すればいいと考えた」(エンジニアリングチームのブログ投稿記事より)

データ破損の防止策

 HDFSでRAIDを利用する際のもう1つの課題として、RAIDの再構築ロジックにバグがあるために、データが壊れるというものがあった。




続きを読むには、[続きを読む]ボタンを押して
会員登録あるいはログインしてください。






ITmedia マーケティング新着記事

news193.jpg

IASがブランドセーフティーの計測を拡張 誤報に関するレポートを追加
IASは、ブランドセーフティーと適合性の計測ソリューションを拡張し、誤報とともに広告が...

news047.png

【Googleが公式見解を発表】中古ドメインを絶対に使ってはいけない理由とは?
Googleが中古ドメインの不正利用を禁止を公式に発表しました。その理由や今後の対応につ...

news115.jpg

「TikTok禁止法案」に米大統領が署名 気になるこれからにまつわる5つの疑問
米連邦上院が、安全保障上の理由からTikTokの米国事業の売却を要求する法案を可決し、バ...