BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Structure Big DataでのHadoopの未来:DataStax Brisk, EMC, MapR

Structure Big DataでのHadoopの未来:DataStax Brisk, EMC, MapR

原文(投稿日:2011/03/26)へのリンク

Structure Big Dataカンファレンスは新しいHadoopについてのニュースと噂にあふれていた。MapReduceパネルの間に、DataStaxBrisk発表した。これはHadoopのディストリビューションでHadoop分散ファイルシステムの代わりに、Cassandraを使ってデータを保存する。また、EMCはカンファレンスのプログラムに"05.09.11. EMC Greenplum. Apache Hadoop."と書かれた一面広告を出した。カンファレンスのプレゼンターだったGigaOmは密かに活動しているスタートアップ企業MapR Technologiesが"Hadoopのプロプライエタリなバージョンを構築中で、今年後半に発表する"という予測を記事に書いた。カンファレンス後、HadoopはGuardian紙の"Innovator of the Year"に選ばれた。また、ClouderaのエンジニアであるTodd Lipcon氏はHadoopについてEclipseConのキーノートで話した。

GigaOmはMapRについて下記のように報告した。

Hadoop分散ファイルシステムのプロプライエタリな代替品を実装中で、これは現在のオープンソースのバージョンの3倍も高速だと言われている。スナップショット機能を搭載し、NameNodeが単一障害点(SPOF)にならない。また、HDFSとAPIの互換性があると言われているので完全な互換性がある。

DataStax(前Riptano)はCassandraのサポートと商用の製品を提供する。例えば、最近発表されたApache Cassandra向け管理ツールであるOpsCenterだ。製品部門のバイスプレジデントであるBen Werther氏が言うには、BriskはNetflixのような顧客によって導かれている。NetflixはすべてのストリーミングデータをCassandraに保存している。また、分析用途でHiveを使っている。NetflixはHiveへのクリックストリームに関するデータへのクエリ結果を、ETLの遅延なしでインタラクティブに利用したいと考えている。氏の話では、この発表から45日以内にBriskが利用できるようになる予定で、DataStaxはこのディストリビューション向けの商用サポートを提供する。また、OpsCenterを使えば、複数のデータセンターやレプリカセットの管理、Hadoopに対する基本的な監視ができるという。Twitterのリアルタイム分析プロジェクトであるRainbirdはCassandraを利用しており、もうすぐオープンソースで利用できるようになる予定だ。

BriskはApache Hadoop 20.2を基にしている。下記を含む。

  • Cassandraを使ってデータを保存する、Hadoopと互換性のあるファイルシステムCassandraFS
  • Hadoopのジョブ用のCassandraの列への読み取りと書き込みの入出力フォーマット
  • CassandraのデータをHiveで読み取り、書き込みできる。また、データの入れ替えや狭い行のデータを広い行へ変換することもできる。
  • ノードが落ちたときにJobTracker(JT)が再起動するようになった。しかし、氏はBriskはJobTrackerの状態をメモリ内で保持しないと明言した。したがってBriskは新しいJTを起動する一方で、実行中のジョブは完了しない可能性がある。
  • 事前にビルドされた構成。氏は、DataStaxはスタック全体を簡潔にしたとInfoQに話した。定義済みのフラグで構成できるようにしたので、CassandraはリアルタイムでもHadoopのノードとしても利用できる。

CassandraはDynamoアーキテクチャのNoSQLデータベースに着想を得たBigTableだ。Cassandraは当初Facebookで作られ、その後オープンソースになった。しかし、このプロジェクトの主要なコミッタはDataStaxで働いている。プロジェクトのチェアマンも、創立者のJonathan Ellis氏もそうだ。現在、DataStaxはHadoopのコミッタは雇用していない。Cassandraは複数のデータセンター間のデータの複製、レンジスキャンをサポートする。最近になってセカンダリインデックスがサポートされた。また、異なる複製グループへデータを複製できるようになったので、実際に運用をしている環境に影響を与えずに分析ができるようになった。

InfoQは氏にCassandraの成熟について、また、HBaseとの比較について話を聞いた。 特に、Cassandraを作ったFacebookは大規模なメッセージングリアルタイム分析にHBaseを利用している。氏はHadoopは大きなコミュニティを持っているが、HBaseのコミュニティは小さく、そして、Cassandraは大きなコミュニティと勢いを持っていると主張する。DataStaxはバグ修正や未修正バグのバックログ、コミュニティでの議論をマトリクスとして利用し、比較を行っている。過去に起きたCassandraの配置の問題(Diggのような)について尋ねると氏は、"速く成熟"する技術は時期尚早な利用や間違った利用をされる場合があるが、DataStaxはCisco、Rackspace、Constant Contact、Real Networks、Netflixのような広く成功を納めた企業を顧客にしていると答えた。氏はまた、FacebookはHBaseに投資してきたので、CassandraよりもHBaseを使うという決定は実際はたんなる内部決定以上のことだと述べた。氏の考えではストレージの一貫性は単に注目を集めるものにすぎない。というのは、Cassandraは結果整合性をサポートしているし、強い一貫性も実現できるからだ。

Briskはまだ、内部でテストをしている段階だと氏は言う。まだ、ベータ版を利用している顧客もいない。Cassandraの大規模利用について尋ねると、氏が言うには実際に運用している最大の環境は、政府機関によって使われてる700ノードのクラスタだそうだ。トランザクション量からいうと、Twitterは1秒間に200,000回のデータ書き込みを行っている。ストレージでは"数百テラバイト"のデータを保持するクラスタがあるという。

InfoQは氏とリーダエンジニアであるJake Luciani氏にBriskとファイルシステムの実装であるCassandraFSに話を聞いた。現在のHadoop DFS (HDFS)のバージョンとの大きな違いや、HDFSの可能な改善点、CassandraFSの計画は下記の通り。
現在のHDFS HDFSの可能な改善点 CassandraFS
ネームノード(NN)が単一障害点(SPOF) NN SPOFを取り除くためのいくつかの方法を開発中。 CassandraFSはCassandraにデータを保存する。CassandraにはSPOFはない。
ファイルのメタデータは単一のプロセス内のRAMに保持されるので、全体のファイル数は制限される。 連結したHDFSとBookKeeperを使うことでHDFSをスケールする方法を開発中。 CassandraFSは制限のない仮想ファイル環境を提供する。
WANレプリケーションはサポートしない。 WANレプリケーションはサポートしない。 Cassandraは複数のデータセンター間のレプリケーションをサポートする。
Appendをサポート(Hadoop 3のClouderaのディストリビューションとApache Hadoop 0.21) n/a Appendをサポートできるように設計されているが、初回リリースにはサポートされない予定。しかしHDFSのAppendはほとんどHBaseをサポートするために使われてきた。これはBriskが利用している技術とは似ていない。
技術的にはCassandraFSはpathをキーに、inodeをファイルオーナやパーミッション、ブロックのリストなどのメタデータを含むバリューとして扱うテーブルを作成する。そしてこのテーブルがブロックのIDをキーとし、シリアライズされたブロックをバリューとするもうひとつのテーブルを保持する。

Werther氏はBriskは他のHadoopのエコシステムのコードに取り組んでいると言う。Cassandraが生成しなかったログデータを読み込むにはどうすればいいかという質問に対しては、ClouderaのFlumeが使えると答えた。彼らの検証によれば、Briskでも利用できるようだ。また氏はClouderaのHueを紹介した。これはBriskで利用できるHadoop用のブラウザインターフェイスだ。

この記事に星をつける

おすすめ度
スタイル

BT