White scenery @showyou, hatena

If you have any comments, you may also send twitter @shsub or @showyou.

Hadoop なう

タイトルは最近の流行からHadoop 倒壊とか書こうと思いましたがHadoopは倒壊しておりません。

https://twitter.com/DeNAPR/status/407831958916313088 )

1. はじめに

この記事はshowyouの主観に基づくものであり、所属する会社等を代表する記事ではないことをご承知ください。

また諸事情により若干情報が古いところもあるかもしれません。その場合twitter:showyouあたりに連絡ください。

2. Hue

実は@shiumachi氏にHue勉強会の講演呼ばれてたのですが、体調不良もあり出られませんでした。

なので簡単な利用事例書きます。

HueはV1から利用。screen知らない分析者がHive長時間実行中退席してクエリ止めちゃうの防ぐ為

ただしHue1は重いため、Hue2を早々に導入しました。

(Hue1=ウィンドウからまるまるブラウザ上で再現, Hue2=Twitter Bootstrap使ったWebアプリ)

本来CDH4(WebHDFS)向けだったがわざわざHoop改造して通信可能にしました。

-> その後u5でWebHDFSサポートされたのでこの問題は解消しています

でもHue3はさすがにCDH3+WebHDFSだめだよなぁ。。。

Hue(2以降)自体はPython + DjangoなのでPython使いの自分には便利です。

Djangoのappディレクトリ以下に追加することでHueへの機能追加が容易です。

例:

Hue上掲示板アプリを作るとか

3. CDH3の安定とCDH4の黒歴史

CDH3がど安定(NameNodeのSPOFの問題はありましたが)

ただし幾つかパッケージは本家から導入(HiveとかPigとか)。自前ビルドもある

HiveはSocket解放しないバグもあったし・・ https://issues.apache.org/jira/browse/HIVE-3335

CDH4は初期に不安定な印象があり、3からのスムーズな移行がない為スルー。

Impala使いたくなったが、既にCDH5βが存在(4からの移行はスムーズらしいけど)。だったらCDH5β使っちゃおうかな?

HDP Hadoop1.0系(HDP1.3)から2.0系への移行手順書あり

http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.0.6.0/bk_installing_manually_book/content/upgrade-3.html

Greenplum

早い&コミュニティ版もあるので、場合によっては使えるかも

(費用対効果でるなら買う手もあり。サーバの値段との兼ね合い)

4. 今後の方針1

A. Hadoop1.0系, Map/Reduceの整備はそろそろみんなやってるよねー(去年も言った気が)

B. データ取得周り: Flume, Fluentdあたり?

C. Who’s map/reduce next?

MapReduceも結構早いが、それでもまだレスポンスが遅い > Impala, Drill, Shark, Prest?  or Redshift? Pivotal HQ? Treasure Data? BigQuery?

またMapReduceが適さないところでは jubatus, jiraphあたりも?

(日本からこういうアルゴリズムって出ないね)

余談:

Impala -> Hiveとの日付計算がずれます

日付計算関数from_unixtime()

Hive 地域ごとの時間(日本ならGMT+9)

Impala(GMT)

Impalaでは仕様とのこと。

だけどHiveを普通に使う人は引っかかるだろ

問い合わせたところ、将来的にImpala自体のオプションで変更できるようにしてくれるらしい

https://issues.cloudera.org/browse/IMPALA-97?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Shark/Spark

自分が試した感じ、スタンドアロンはよかったがマルチノードがうまくいかなかった。

現在はCDHにSpark入ってる?ようなのでこれからはいいかも

D. 見える化の不足

Hive, Pig等で集計した結果の表示に制約がある

例:(全部の集計してない、ユニークユーザ数など)ドリルダウン表示したい!ー>できない!遅い!

現状対処法:

R, python(matplotlib) -> スクリプトかけない分析者っているんですよ・・また、ある地点からの集計をかけるのが大変

BIツール -> 有償が多い割に、いろいろ機能的に残念なことが多い(Hadoopの連携に詳しくないとか)

一方でPCの状態を見るツールはやたら出ている  http://showyou41.dyndns.org/blog/?p=621

この差は? > クエリ実行部分がUSの人間から見てもむずいらしい

見える化ツールのうち、OpenTSDBはHBase, DatadogはRedis + Postgre

現状 Excel + Impalaでグラフかけるっぽいものがあると嬉しがられるかも

つーかBIはまじなんとかして欲しい