みなさん、こんにちは!
今回は、バッチジョブや移行ツールを作る時に使用している超・超便利ツール(というか開発環境)である、Talend Open Studioについて、書いていこうと思います。
サクッとTalendのメリットだけを知りたい方は、こちらの記事をご覧ください⇒ETL開発ツールは比較するまでもなくTalend一択だと思う。コスト重視なら特に
Talend Open Studioとは?
Talend Open Studioは、Talend社の提供するオープンソースかつフリーなETLツールです。(以降、Talendと呼称した場合は、Talendという企業ではなく、Talend Open Studioというツールを指します)
ETLとは、Extract, Transform, Loadの略で、データを抽出⇒変換⇒出力することを指します。
ビッグデータという言葉が巷で流行り出したころから、ETLツールも注目を浴びることになります。
で、このTalendですが、無償のツールですが、とても強力です。
このツールを使用することでバッチプログラムがさくっと作れます。
私が現在携わっているプロジェクトでも、Talendを使用してバッチ開発を行っていますが、開発効率はとても良いです。
もしTalend無しで同じジョブを開発するとなると…もう考えただけでも恐ろしいです。
できあがるプログラムは、Javaですので、Talendで作成したジョブを動かすためにはJREが必要になります。
この点だけはTalend導入における障壁になりえるかもしれません…
Talendを使うと何が便利なの?
Talendのメリットは、下記のような所にあると思います。
- GUIで開発を行える ⇒ 処理フローに集中して開発ができる, コーディング量が圧倒的に減る
- 既存のコンポーネント(処理部品)が充実している
- 外部連携用のコンポーネントも配布されている ⇒ (AWS, SalesForce, SAPなど…)
- コンポーネント開発も可能 ⇒ 独自開発が容易
どうやって開発するの?
簡単なケースであれば、殆どコーディングはいりません。
基本的には、パレットからアイコンを画面上に落とし、そのアイコン同士をリンク(線で繋ぐ)することでバッチフローを実現していきます。
開発者は、主に1つ1つのアイコンに与えるパラメータを編集したり、データの項目をどう編集するかを定義していく形です。
具体的に、開発画面は以下のようになっています。
こんな感じの画面で開発を行っていきます。
①がメインの開発エリアです。ここに、画像のようなアイコンを置いていき、それらを結合することでフローを描きます。
②がプロジェクトのファイル/フォルダのビューワです。編集対象を選んだりします。
③がパレットです。①に落っことすアイコンは、ここから選択します。
④が…色々あるんですが、例えばバッチジョブを実行/デバッグ実行したり、コンテキスト(パラメータみたいなもの)を編集したり、画面の1コンポーネント(①でアイコンとして表示されているやつです)に与えるパラメータを設定したりするエリアです。他にも自分のよく使うタブを表示したりできます。
このように、バッチのフローをデザインしていくと、それが1つのプログラムになる、という優れものです。
まとめ
- TalendOpenStudioとは、無償のETLツールで、で簡単にバッチジョブを開発できる
- GUIで開発できる
次は、Talendで開発を行うのに必要な環境構築を行っていきます。
次回記事はこちら⇒【Talend Open Studio 入門01】開発環境の構築。Talendをインストールしよう