[Talend]ユーザーコンポーネントを利用してみた
はじめに
こんにちは。DI部の大高です。
Talend Open Studioには非常に沢山のコンポーネントが存在しますが、更にTalend Exchangeで公開されているユーザーコンポーネントを追加して利用することができます。
今回は「Talend Exchange」を利用したユーザーコンポーネントの追加についてご紹介したいと思います。
前提条件
Talendのバージョンは「Talend Open Studio for Big Data」の「Version 7.0.1」で検証しています。
Talend Studioの設定
まずはじめに、ユーザーコンポーネントのフォルダパスをTalend Studioで設定しておきます。これにより、設定したフォルダ配下にあるコンポーネントをパレットに読み込んで利用できるようになります。
設定するには、メニューの「ウィンドウ」から「Preferences」を開き、「Talend > コンポーネント」を開きます。
ここの「ユーザーコンポーネントフォルダ」に任意のフォルダを指定して「OK」をクリックします。これで、このフォルダ配下にあるコンポーネントはTalend Studioで利用できるようになります。
Talend Exchangeへのアクセス
Talend Exchangeのコンポーネントを利用するには、2つの方法があります。
1つはブラウザでTalend Exchangeへ接続してコンポーネントをダウンロードして利用する方法、もう1つはTalend StudioからTalend Exchangeへ接続してコンポーネントをダウンロードして利用する方法です。
以下でそれぞれ説明していきます。
ブラウザによるアクセス
まずはブラウザで以下にアクセスをします。
アクセスすると、「Latest」、「Popular」、「Highly Rated」が表示されるので「View All >」のリンクからお好みのコンポーネントを探してください。また、検索バーからコンポーネント名で検索もできます。
今回は試しに「tGoogleGeocoder」というコンポーネントを選んでみました。
コンポーネントを見つけたら、「DOWNLOAD IT FOR FREE」ボタンをクリックしてコンポーネントをダウンロードします。その際に、Talend Exchangeにログインする必要があります。アカウントを作成していない場合は新規にアカウントを作成してください。
クリックすると、さらに確認ダイアログが表示されますので、「accept」にチェックを入れて「CONFIRM」ボタンをクリックします。
すると、「DOWNLOAD」ボタンが現れますので、クリックするとダウンロードができます。
Talend Studioによるアクセス
次は、Talend Studioによるアクセスです。Talend Studioを開き、上部の「Exchange」ボタンをクリックします。
この際にTalend Studioでまだ一度もログインをしていない場合にはログインダイアログが出てきます。こちらもブラウザでのアクセスと同様に、アカウントを作成していない場合は新規にアカウントを作成してください。
既にアカウントを作成済みの場合は「マイアカウントで接続」をクリックしてフォームを切り替えて接続します。
接続後には一旦ダイアログが消えますので再度「Exchange」ボタンをクリックします。すると、Talend Exchangeの画面が開きます。
ブラウザでのアクセスとUIが変わっており、シンプルな感じです。こちらでもコンポーネント名で検索が可能です。
ただ、私が試したときには何故か検索すれども検索結果にないも表示されないということがありましたので、その場合にはブラウザでアクセスするとよいかと思います。
先ほどブラウザでダウンロードしたコンポーネントは「Downloaded Extensions」に出てきましたので、こちらから「インストール」をクリックしてみました。
すると、ダイアログが表示されてどこかにコンポーネントがダウンロードされたようですがパレットには何も追加されませんでした。
そこで、「workspace/.metadata/.log」に出力されるTalend Studioのログを見たところ、どうもZIPファイルの解凍がうまくいかずにエラーになっているようでした。
一旦、Studioからのインストールは諦めて、ブラウザでダウンロードしたコンポーネントの設定をすすめます。
ユーザーコンポーネントの配置
ダウンロードしたコンポーネントはZIP圧縮されていますので、解凍してTalend Studioに設定したユーザーコンポーネントフォルダに置いてあげます。
今回の例でいうと、以下のような階層になります。
C:\opt\Talend\TOS\BD\7.0.1\components ┗ tGoogleGeocoder ┣ tGoogleGeocoder_java.xml ┣ tGoogleGeocoder_begin.javajet ┣ ...
ユーザーコンポーネントの利用
これで、ジョブからユーザーコンポーネントが利用できるようになりました。しかし、配置をしてもすぐにパレットには反映されませんので、一度Talend Studioを再起動するか、ユーザーコンポーネントの設定画面で一度適当なフォルダに設定してから、再度ユーザーコンポーネントフォルダを設定してあげるとパレットに表示されるようになります。
確認したところ、無事に表示されていました!
使ってみる
ついでなので、試しに使ってみました。
ユーザーコンポーネントはTalend Exchangeにコンポーネントの説明を記載してくれる方や、別途サイトを設けて解説をされてくれる方などもおりますが、特に何も書いていないケースもあります。
今回の「tGoogleGeocoder」も特に説明はなかったので勘で使ってみます。
コンポーネント設定は、以下のようになっておりGoogle MapsのAPIキーと、ジオコーディングしたい住所を設定するようです。これにより、緯度経度が出力されるコンポーネントとなっていました。
が、最近のGoogle Maps APIに対応していないコンポーネントであったため、実行してもエラーになるだけでした!残念でした!
このあたりもユーザーコンポーネントを利用する楽しみのひとつ、ということで…。
まとめ
以上、ユーザーコンポーネントの紹介でした。
今回は残念な結果となりましたが、実はユーザーコンポーネントには有用なコンポーネントが沢山あり、以前に私も利用した「tJSONDoc」などはとても便利で助けられたコンポーネントでしたので、是非利用してみてください。
それでは。