たごもりすメモ

コードとかその他の話とか。

ShibUIを公開した

HadoopSCRでしゃべったときにデモったりNHNテクノロジーカンファレンスでデモったりしたHiveクエリのスケジュール実行および結果のグラフ登録をやる社内用のアプリケーションがあったんだけど、コードの整理をやるついでに社内依存部分を切り分けたりしたので、ついでに外部から見られる場所に置いてみた。

tagomoris/shibui · GitHub

自分が以前書いたHiveクライアントWebアプリケーションであるところの shib や、daily/hourlyでの数値データを記録してグラフ化するkazeburoさんの HRForecast と連携して機能するようになっているので、これらのインストールが必須。なのでだいぶ使用までの敷居が高いし、どうかなと思ったんだけど、まあ外にあった方がある意味でメンテナンス性も上がるので、とりあえず。
READMEを読めばわかるが、何もないところからだとセットアップの道程がけっこう長い。けど所によっては使えればだいぶ便利かも。責任は取りませんが。

またNHNテクノロジーカンファレンスでは見せるのを忘れてた機能として、Hiveクエリの生成機能があります。クエリを手でイチから書くのが難しい人向けに、条件とか欲しいデータを入れてみるとなんとなくHiveクエリが出てくる。集計関数とかあったら GROUP BY とかもよろしく突っ込んでくれる。

それなりに便利だとは思いますが、以下のような問題点があります。

  • ORDER BY を指定する機能が現状ない(LIMIT句を入れる制約をどうインターフェイスに落とすかが難しくてまだ付けられてない)
    • フォームでぽちぽちやって出てきたクエリに追加すれば良い程度なので優先度だいぶ低い……。
  • 完全に内部のテーブル定義を前提にしてるのでそのまま外部で使える人はおそらく皆無

PerlJavascriptとHTML(というかXlate::Kolon)をがしがし書き換えないと使えないと思うので、使いたければ超気合いを入れて自分の環境に合わせて改変して使ってください。Twitterで質問くれれば答えられる限りでは答えます。でもたぶんPerlがそこそこ書けないと厳しいと思う……。。