Apache Zeppelinがバッチ処理に使える

たまたまバッチ処理をする必要が出てきたので、実装方法を考えたときにApache Zeppelinを使ってDBを更新すればいいじゃんという結論に。
Clone設定と同じように時間指定できるし、Re Runも簡単だし。

ってことを1つのプロジェクトで考えてた時に、
別プロジェクトでsh + python使ってバッチ処理作ってという依頼が。

Webサービスも古臭いなという印象を受けてたので、1ヶ月で見切りをつけた案件をしているチームからの依頼。
やっぱりpythonもすっごく古臭い。

それはともかく、Zeppelinをバッチで使うとなにが嬉しいかまとめてみる。
(大企業でZeppelinのようなものを使ってバッチ処理する世界は5年は先だと思うので)

  1. TeratermなどでのCUI操作が不要になる
  2. テストデータの挿入するなどのSQLを書いたりした場合、Zeppelin上で1元管理できる。実行したいときに再生ボタンを押すだけ!わざわざtxtに書いておかなくても大丈夫だし、それを探す&開く手間が不要。
  3. 接続先の変更が容易(interpreterの設定)
  4. Success/failが簡単に一覧で確認できる
  5. バージョン管理もできる(これちゃんと動いてる?)

メールを飛ばすなどする場合にはまだまだ作りこみが必要かもしれない。
ここは、自分が勉強不足なのか、そもそもバッチ用に作ってないからコンセプトとしてないのかもしれない。
ただ、当たり前にログ監視もできるので、Zeppelinにアクセスすればだいたいわかるとなると便利。

。。。メモリ2Gが最低要件でさえなければ。。。

Leave a Reply

Your email address will not be published. Required fields are marked *