2014年07月17日 08時00分 UPDATE
特集/連載

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

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

[Archana Venkatraman,Computer Weekly]

関連キーワード

Facebook | RAID | クラスタ | Hadoop


Computer Weekly

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

Computer Weekly日本語版 7月16日号無料ダウンロード

14783.gif

本記事は、プレミアムコンテンツ「Computer Weekly日本語版 7月16日号」(PDF)掲載記事の抄訳版です。本記事の全文は、同プレミアムコンテンツで読むことができます。

なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。


 同社が今回実装したテクノロジーの例として、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の再構築ロジックにバグがあるために、データが壊れるというものがあった。

この記事を読んだ人にお薦めのホワイトペーパー

この記事を読んだ人にお薦めの関連記事

Loading

注目テーマ

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

news100.jpg

電通、サイト解析ツールに調査モニターの属性データをリアルタイム連係する新サービスを提供
電通は、電通マクロミルインサイトと共同で新サービス「Agile Audience Analytics」の提...

news042.jpg

ユナイテッド、DSP「Bypass」にアプリ向け「リテンション広告」機能を提供
ユナイテッドは2016年6月27日、自社が提供するDSP「Bypass」に「リテンション広告」機能...

news036.jpg

Viibarがハリウッドのクリエイター団体「Swanky Flicks」と連携
動画マーケティングを支援する「Viibar」は、ハリウッドのクリエイター団体「Swanky Flic...