Hadoopの疑似分散モードと完全分散モードを試す:きょうから試せる Hadoop“スモールスタート”ガイド(4)(4/4 ページ)
実際にHadoopで処理を実装していきながら「Hadoopは、誰にだって扱える」を体感しましょう。今回は「Hadoopの疑似分散モード」「完全分散モードでHadoopクラスタを構築する手順」を解説します。
S3をファイルシステムとして利用する
HadoopのファイルシステムとしてHDFSを利用するという前提でここまで説明してきましたが、実際にはHadoopはファイルシステムの部分を抽象化していて、HDFSもその実装のひとつにすぎません。例えばファイルシステムとしてAWSの提供しているS3(Amazon Simple Storage Service)を利用することもできます※12。
※12 (参考リンク)HadoopのファイルシステムとしてS3を利用する
S3を使うための実装には以下のような2種類があり、それぞれs3nもしくはs3というURIスキームで表現されます。
- S3ネイティブファイルシステム(s3n://xxx)
- S3ブロックファイルシステム(s3://xxx)
S3ネイティブファイルシステムは普通にS3上のファイルを読み書きするファイルシステムでS3自体の制限として5GB以上のファイルは扱えません。一方、S3ブロックファイルシステムは5GB以上のファイルも扱えますが、Hadoop用に特化しているため他のアプリケーションからは見れません。S3ブロックファイルシステムはS3のレガシーファイルストレージであるため、基本的にはS3ネイティブファイルシステムを利用することが推奨されています。
全ノードでcore-site.xmlに以下のようにfs.s3n.awsAccessKeyIdとfs.s3n.awsSecretAccessKeyを設定して認証できるようにすれば、S3ネイティブファイルシステムでS3上のデータにアクセスできるようになります。
S3上のデータを操作する際にはこのようにs3n://[バケット名]/を付けてください。
アクセスキーやシークレットキー、バケット名については別項で取り扱うので、詳しくは本書を参照してください。
もっと手軽にHadoopを扱いたいには
さて、ここまで素のHadoopを使ってきましたが、いかがだったでしょうか。各サーバ間でパスワード無しでSSHログイン可能にしたり設定ファイルを適切に設定したりと、いろいろと面倒な手順もあり大変だったかと思います。加えて、Hadoopはまだまだ新しい技術なので、日々バグ報告が行われてそれに対する修正が行われたり、機能が追加された新バージョンが公開されたりしています。
そういった修正の中にはHadoopを利用するうえで致命的なものやセキュリティ的な問題のものもあるため、できるだけすぐに取り込んで安全に利用できる環境にしたいところですが、検証を行って動作に問題が無い状態を確認しつつそういった修正を取り込んでいくのは正直なところなかなか大変です。日々発生するさまざまな修正を簡単に取り込みつつ、もっと簡単にHadoopを利用していく方法は無いのでしょうか。
Hadoopには他にも色々な利用方法があります。前回と今回は素のHadoopの利用方法について説明してきましたが、他にもCloudera社が提供しているCDH(Cloudera's Distribution including Apache Hadoop)やMapR社が提供しているMapRなど、その辺りをサポートしてくれるディストリビューションも存在します。
ただ、いずれにしても運用の手間は掛かってしまうだろうというのが筆者の考えです。データ解析を専門的に行うようなチームがあって、修正を取り込んだり、Hadoop自体のバージョンをアップデートさせたりといった作業が苦にならないのであれば良いのですが、実際には少人数、もしくはひとりでHadoopを利用しているケースも多いのではないでしょうか。そういった場合、なかなか修正の取り込みやバージョンアップにまで手が回らないのではないかと思います。
Hadoopファーストガイド
佐々木達也著
秀和システム 2400円(税別)
「ビッグデータ(=従来のコンピュータシステムでは、しまったり、探し出したり、調査したり、人間にわかりやすく加工したりが難しい、とても大きなデータ)なんて自分には関係ない」そう思っているエンジニアに贈る「Hadoop」の体験型入門書です。数億のユーザを抱えるSNSの利用データのように「雲をつかむような話」ではなく、Webサイトエンジニアや普通のプログラマが親しみを感じられるような普通のデータと、Amazon EMRという手軽な実験環境を使い、実際にHadoopを動かしてみます。手軽に短い時間で分散処理のメリットを体験することで、手元の業務に眠っているかもしれないビッグデータの活用に可能性を見出せるかも知れません。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- もし、あなたが「“ビッグデータプロジェクト”を任せる。何とかするように」と言われたら
「ビッグデータプロジェクトを始めることになった」ら、具体的に何をするのか。本連載は、「ビッグデータプロジェクトの“進め方”」を業務視点/ビジネス視点の両面から体系的に理解し、具体的に実践していく方のためのナレッジアーカイブです。第1回目は、「ビッグデータとは何か」の基礎と、「ビッグデータ基盤の概要とメリット」を解説します。 - Hadoopは「難しい・遅い・使えない」? 越えられない壁がある理由と打開策を整理する
ブームだったHadoop。でも実際にはアーリーアダプター以外には、扱いにくくて普及が進まないのが現状だ。その課題に幾つかの解決策が出てきた。転換期を迎えるHadoopをめぐる状況を整理しよう。 - いまさら聞けないHadoopとテキストマイニング入門
Hadoopとは何かを解説し、実際にHadoopを使って大規模データを対象にしたテキストマイニングを行います。テキストマイニングを行うサンプルプログラムの作成を通じて、Hadoopの使い方や、どのように活用できるのかを解説します - 欧米の金融業界は今、どうHadoopを活用しているか
Hadoopは、欧米の金融関連サービス業界でどう活用されているか。米Hortonworksの金融サービス業界担当ゼネラルマネージャーへのインタビューで得た情報を、2回に分けてお届けする。今回は金融業界におけるHadoopのユースケースを概観する。