2011-01-01から1年間の記事一覧

HadoopでのMapReduce実行方法

HadoopでのMapReduce実行方法は以下の5つあるだろう。 Javaでごりごり実装 Asakusaつかって実装 Hadoopストリーミングを使って実装 Pig使う Hive使う 僕自身はもっぱらHiveだ。 Asakusaは全然わからないのでここでは触れないが、それ以外は象本読んで何とな…

HiveでMySQLを使ったLocal Metastoreの設定方法

情報はあるけど一応めもっとくCloudera版のHive 0.7.1をインストールするとデフォルトではEmbeded Metastoreになっている。この状態だとHiveのメタデータの管理がDerbyという組み込みDBを使っているので、単一プロセスからしか接続できない。なので複数のプ…

クラウド時代、ビッグデータ時代に求められるスキルは何なのか?

Google App EngineやAmazon EC2、Microsoft Azure、SalesforceなどのSaaS/PaaS/IaaSが広まるにつれて、 またHadoopやNoSQLのようなビッグデータを扱う技術が登場し広まるにつれて、 従来のシステム開発とは求められるスキルも変わってくるのではないかと思い…

Hadoopの異端さが面白い

Hadoopはほんとブームです。バブルだと言っていい気がします。各種セミナーはすぐに埋まりますし、実際に聞きに行くと会場は満員です。この分野は日本だとNTTデータが先頭をきったように見えます。 NTTデータ、Hadoopの商用ディストリビューション「CDH3」を…

Hadoop 0.23が近づいてきた

元ネタはHortonworksのこちらのブログ記事 http://www.hortonworks.com/preparing-for-next-release-of-apache-hadoop/0.23用のリリースブランチも作成されましたね。http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/スライドはこちら Apa…

Facebookのデータウェアハウス

HDFS: Data warehousing at Facebook のリンク先にある論文http://borthakur.com/ftp/sigmodwarehouse2010.pdfではFacebookがどのようにデータウェアハウスを構築しているかが書かれています。興味深い論文なのですが気になった点を書きます。全体のシステム…

次世代MapReduceがtrunkにマージされた

元ネタはこちら http://www.hortonworks.com/nextgen-mapreduce-hits-apache-hadoop-mainline/Twitterのタイムラインがこれでちょっとホットになりましたね。次世代MapReduceが何かってのはこちら http://d.hatena.ne.jp/nokuno/20110216/1297808478 アップ…

Hiveのjoinの最適化

元ネタはこちら Join Optimization in Apache HiveHiveは0.7からjoinが最適化されています。どのように最適化されたのか上記の資料をひもといてみます。 いままでのjoinいままでのjoinはいわゆるソートマージジョインです。 mapフェーズでテーブルのデータを…

OracleからHiveへのマイグレーション資料

OracleからHiveへのマイグレーション資料をSlideShareで見つけたのでメモっておく。Oracle用のSQL, UDFをHiveでどう置き換えるかが書かれている。 全部で177ページもあるが、Hiveの内部構造(アーキテクチャ、クエリをどのように解析して実行計画つくって最…

Hiveの開発環境構築方法

Hiveのビルドエラー対応メモ - wyukawa’s blog でも少し書いたが、毎回忘れている気がするのでとりあえずめもっとく。gitはおそいのでsvnからソースを取ってくる svn checkout http://svn.apache.org/repos/asf/hive/trunk hive-trunkこんな感じでビルド。Hi…

Hive 0.6, 0.7の新機能メモ

Hiveいじる人がいっぱいいる場合はMySQLのデータベース名みたいなスキーマというか名前空間が絶対必要そうなんだが、そうでもないのかな。例えばFaceBookとか尋常でないテーブル数になってそうだけど、どうやってんのかな。Hiveを複数インストールしてんのか…

Hadoopのソースを読む際の参考資料

毎回探している気がするのでリンクだけめもっとく。 すべてHadoopソースコードリーディングというイベント時の発表資料です。■MapReduce関連 Google スライド - オンラインでプレゼンテーションを作成/編集できる無料サービスです Hadoopソースコードリーデ…

細かすぎて伝わらないHiveのTips

なんかドキュメントには書いてないっぽいんだけど地味に気づいたことを書いときます。 Tipsというほどではないメモですね。2つあります。1つめHiveQLのコメントは--です。例: --hoge SELECT * FROM aaa ANTLRの文法を定義したファイルであるHive.gは下記…

サッカー見に行ってきた

etc

今回はなでしこです。日テレ・ベレーザ vs 伊賀フットボールクラブくノ一 の試合を平塚競技場まで見に行ってきましたベルマーレ平塚の試合とは異なり、無料、メインスタンドのみ解放、平塚駅からシャトルバス無し、でした。人は結構入ってましたね。3750人入…

Hiveメモ

HiveのTipsかもしれないものを2つ知ったのでいちおうメモっとく。何でこうなるかはわかってない。バージョンは0.6ね。まず1つめaaaとbbbという2つのテーブルがあって、それぞれcolumn1というパーティションキーがあって、 このキーで結合しつつcolumn1が1…

象本第二版の翻訳出たよ

Hadoop 第2版作者: Tom White,玉川竜司,兼田聖士出版社/メーカー: オライリージャパン発売日: 2011/07/23メディア: 大型本購入: 9人 クリック: 182回この商品を含むブログ (24件) を見る第ー版の翻訳、第二版の原書(のepubデータ)を持っている身としては第…

Hiveについての情報源

とりあえずめもっとく■本家 Top Apache Hive TM Wiki Home - Apache Hive - Apache Software Foundation JIRA - ASF JIRA リポジトリ Subversion http://svn.apache.org/repos/asf/hive/trunk Git git://git.apache.org/hive.git http://github.com/apache/h…

Hiveのソースを解説した良い資料をslideshareで見つけたよ

以前Hiveのソースを読んだ旨を Hiveのソースを見てみた。 - wyukawa’s blog に少し書きましたが、slideshareで良い資料を見つけたのではっときます。 Hive Anatomy View more presentations from nzhang Design - Apache Hive - Apache Software Foundation …

HDFSのファイル書き込み部分のソースを読んでみた Part2

前回はこちら HDFSのファイル書き込み部分のソースを読んでみた - wyukawa’s blogResponseProcessorスレッドをstartする前にnextBlockOutputStreamメソッドを呼び出しデータノードと接続します。 // get new block from namenode. if (blockStream == null) …

Hiveでの空文字、NULLの扱い

ちょっと混乱したけど、どうもこういうことっぽい。 カラムの型 テーブルにロードするファイルでの値 HDFS上の値 selectした場合の表示 IS NULL判定結果 int 空文字でない文字列 空文字でない文字列 NULL true int 空文字 空文字 NULL true string NULLとい…

Hiveを動作させる場合の環境の切り替え方法

Hiveでテストする場合の話ですが、データ量が少ないならVirtualBox上のLinuxにCDHを擬似分散で入れてHiveを動かしてテストすればいいと思います。ただある程度のデータ量がないとテストにならないという場合もあるでしょう。本番環境で試行錯誤したいという…

HDFSのファイル書き込み部分のソースを読んでみた

対象は0.20.2です。該当ソースはDFSClientの内部クラスのDFSOutputStreamとそのさらに内部クラスのDataStreamerとResponseProcessorです。この辺は象本や徹底入門にも書かれていますが、それを参考に少し読んでみましたのでメモっときます。なお動かしてはい…

シェルスクリプトのテスト

以前シェルスクリプトのテストについて少し書きました。シェルスクリプトの開発環境 - wyukawa’s blog最近実際にテストを始めたのでどうやっているかを書いてみたいと思います。やりたいことはHiveQLをキックするシェルスクリプトのテストです。ブラックボッ…

Hiveのソースを見てみた。

対象はCloudera版の0.7どこがエントリポイントかっていう話がまずあるわけだが、hiveコマンドをたたくとこうなりますよね。 $ hive Hive history file=/tmp/wyukawa/hive_job_log_wyukawa_201107032314_538554893.txt >hiveコマンドの実態である$HIVE_HOME/b…

HiveのSequenceFileとかパーティションとか

Hiveに関するまとまった情報源として書籍なら徹底入門があります。とはいえそんなに突っ込んだことは書かれていないので、本家のWikiを参照することになると思います。https://cwiki.apache.org/confluence/display/Hive/Home最近Confluenceに変わりましたね…

HadoopのSequenceFileのフォーマット

Hadoopのワードカウントの例だとテキスト形式の入力ファイルが出てきますが、 Hadoopではそれ以外にもバイナリ形式のKey-Valueレコードを保存するためのフォーマットとしてSequenceFileというのがあります。Hadoopは容量が少ないファイルを大量に扱うのは苦…

Coders at Work プログラミングの技をめぐる探求

Coders at Work プログラミングの技をめぐる探求作者: Peter Seibel,青木靖出版社/メーカー: オーム社発売日: 2011/05/25メディア: 単行本(ソフトカバー)購入: 11人 クリック: 360回この商品を含むブログ (36件) を見る以下Amazonから抜粋 プログラマであ…

シェルスクリプトの開発環境

モダンとまではいかなくてもシェルスクリプトの開発環境ってみんなどうしてるのかなあと思う今日この頃。今はHiveでデータをうごうごいじったりするのにシェルスクリプト使っているんだけどなんだかスクリプト地獄になってきている気がするんだよなあ。前の…

CDH3のインストール

至る所に書かれてますがメモっとく。環境はMac10.6.7上のVirtualBox4.0.8上のCentOS5.6にCDH3を擬似分散モードでインストールします。ディスク容量はデフォルトの8Gより大きくした方がよさげ。なぜなら後で気軽に増やせないからw増やすには 可搬性疑似仮想ア…

ゆとりなJavaプログラマが読むといいかもしれないオープンソースソフトウェア

Java出来ますって言ってるのにOpenJDKのコードをチェックアウトした事も無いようならモグリである可能性は高い。 一歩先行くJavaプログラマが読むべきオープンソースソフトウェア10選 - 設計と実装の狭間で。 OpenJDKのコードをチェックアウトした事も無いモ…