Hadoopコースを攻略しよう(環境構築編)

この記事では、「Tuning Maniax 2014 - 蒼き調律者たち」Hadoopコースに参加される方に向けて、 MapReduceプログラムの開発環境と、Azure HDInsightを使ったHadoopクラスターの構築方法を紹介します。いざ参戦、チューニング・マニアックスHadoop編さて

佐々木 邦暢(@ksasakims)

2014年4月26日 1:00

この記事では、「Tuning Maniax 2014 - 蒼き調律者たち」Hadoopコースに参加される方に向けて、 MapReduceプログラムの開発環境と、Azure HDInsightを使ったHadoopクラスターの構築方法を紹介します。

いざ参戦、チューニング・マニアックスHadoop編

さてこの競技、簡単に言えば以下のようなものです。

総計1TBのWebアクセスログ(を模して生成されたデータ)を解析し、次の3項目を抽出する時間を競う

  1. アクセス数の多いURL:上位10件
  2. 多く利用されているユーザーエージェント:上位10件
  3. URI毎の平均レスポンスタイム:下位10件(時間が長い方から10件)

解析のための環境としては、Microsoft Azure HDInsightサービスをご利用ください。その上で、どのような処理方式を選択されるかは参加者の自由!オーソドックスにJavaで書くも良し。Streaming APIを駆使して自分の得意な言語で楽しむもまた良し。当然HiveやPIGでの挑戦もOKです。

え、Dryadで殴り込み?もちろん大歓迎!

必要になる環境

この競技に参加するには、次のようなものが必要になります。

  1. Microsoft Azureのサブスクリプション
  2. MapReduceプログラムの開発や、HDInsightクラスターの作成・ジョブ投入等の作業を実行するためのWindowsマシン(「開発環境」)
  3. Hadoopクラスターそのもの。

1. については、大会に参加される皆さんは既に用意されていると思いますので、この記事では2.と3.についてその方法を紹介します。

開発環境の作成

まずは、Windowsマシンを一つご用意ください。Azure管理ポータルへアクセスしてHDInsightクラスターを作成するだけならブラウザさえあれば良いのですが、HDInsightを活用する際に欠かせない以下のツールがWindows環境で動作するのです。

  1. Windows Azure PowerShell
  2. Microsoft HDInsight Emulator for Windows Azure

これらは、普段お使いのPCにそのままインストールしても構いませんが、「自由にソフトをインストールできない環境である」「Surface 2を使っている」「MacBookで生きている」等の理由でインストールできないこともありましょう。

そういったケースを想定して、今回は開発環境自体もAzure仮想マシンで構築する方法をご紹介します。

仮想マシンの作成

Azure仮想マシンのギャラリーには、様々な仮想マシンイメージが用意されていますが、おすすめは最新のWindows Server 2012 R2です。

Azure管理ポータルで「新規」→「コンピューティング」→「仮想マシン」→「簡易作成」とクリックし、必要事項を記入します。

※記事中の図をクリックすると拡大表示します。

  • 「DNS名」に入力した名前が、仮想マシンのホスト名にもなります。リモートデスクトップ接続する時に、この名前を指定することになります。
  • 「イメージ」は”Windows Server 2012 R2 Datacenter”を選択してください。上の図では「R2 Datacenter」の部分が見切れてしまっていますが…
  • 「サイズ」は「基本」階層の"A2"(2コア、3.5GBメモリ。以前は”Mサイズ”と呼んでいたもの)あたりがおすすめです。A1(1コア、1.75GBメモリ)では、EclipseやHDInsight Emulatorを動かすには少々不足かもしれません。
  • 「ユーザー名」と「新しいパスワード」の部分には、管理者となるユーザーの名前とパスワードを指定します(“Administrator”は無効化されています)。
  • 「リージョン/アフィニティグループ」は、仮想マシンの配置場所の指定です。現在、日本には関東と関西の2リージョンありますので、どちらかをお使いください。

※なお、「日本(西)」は東より少々お値段控えめとなっております。

ゲストOSの日本語化

Azure仮想マシンのギャラリーにある標準イメージは、今のところすべて英語版です。簡単に日本語化できますので、方法をご紹介します。

  1. 仮想マシンが出来上がったら、管理ポータル下の黒帯から「接続」を選んでリモートデスクトップ接続します。
  2. ログオンしたら、左下のスタートボタンを右クリックして”Control Panel”をクリックします。
  3. コントロールパネルの”Add a language”をクリックします。
  4. 次の画面でも”Add a language”をクリックして、日本語を追加します。また、”Move Up”で英語より上に持ってきます。さらに”Options”をクリックします。
  5. ”Download and install language pack”をクリックします。
  6. この状態で、しばらく時間がかかりますのでお待ちください。

言語パックのインストール後、再度ログオンすると見事日本語環境になっているはずです。実は、ユーザー毎の表示言語を日本語にしただけで、システムロケールは英語のままなのですが、あまり問題ないのでこのまま行くことにします。

Web Platform Installerのインストール

では、必要な各ソフトウェアをインストールしていきます。まずは、”Web Platform Installer(WebPI)”です。これを使うと各種ソフトウェアパッケージを、その依存モジュールと共にダウンロード・インストールしてくれるものです。

このリンクからwpilauncher.exeを実行してください。
> http://go.microsoft.com/fwlink/?LinkId=255386

インストールが完了すると、自動的にWebPIが立ち上がってきます。

Windows Azure PowerShellと、Microsoft HDInsight Emulator for Windows Azureの二つを「追加」して「インストール」をクリックしてください。

※HDInsight Emulatorは”hdinsight”で検索すると出てきます。

こうなれば完了です。

HDInsight EmulatorはC:\Hadoop配下にインストールされます。

また、C:\Hadoop\javaにJDKがインストールされますので、PATHを通しておきましょう。「管理者として実行」したコマンドプロンプトで次のコマンドを実行するのが楽です。

setx PATH "%PATH%;c:\Hadoop\java\bin" /m
この記事のキーワード :

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30