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系への移行手順書あり
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自体のオプションで変更できるようにしてくれるらしい
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はまじなんとかして欲しい