7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ほぼSalesforce !! Qiitan と カレンダーと 3年目のWebエンジニアAdvent Calendar 2022

Day 10

Talend Open Studioをはじめてみる(初心者)

Last updated at Posted at 2022-12-10

はじめに

OSSツールのTalend Open Studioが無料でも色々できると聞いたので
試してみようと思います。
ゴールは、BigQuery or CSV → 加工 → Salesforceの流れです。
今回はインストールから簡単な動作確認までやってみます。

Talend Open Studioとは

OSSツールのTalend Open Studioを使用すると、基本的なデータパイプラインの構築を即座に開始できます。 ローカルにインストールされた、自分で制御可能なオープンソース環境から、シンプルなETLおよびデータ統合タスクを実行し、データのグラフィカルなプロファイルを取得して、ファイルを管理します。

JavaベースのETLツールで、GUIでの配置設定
Javaでの加工処理の記述も可能

環境

  • macOS 12.4
  • java version "11.0.15.1" 2022-04-22 LT
  • Talend 8.0.1

12/11日現在、記事中ではTalend 8.0.1を使用していますが
Talend 8.0.1でエラーが発生する現象が起きているので、
7系をインストールすることをお勧めします。

Javeのセットアップ

この記事では、既に実行するmacでセットアップ済みのため書きません。

インストールする

1.必要な項目を入力しインストーラーをダウンロードする

Talend Open Studio:オープンソース(OSS)のETLと無料のデータ統合 _ Talend _ Talend.png

ダウンロードしたdmgを開きインストラーを起動してください。

2.インストール

インストール先はデフォルトのままにしました。

スクリーンショット 2022-12-10 23.29.54.png

スクリーンショット 2022-12-10 23.30.03.png

スクリーンショット 2022-12-10 23.30.14.png

触ってみる

CSV取り込み→不要カラム削除→CSV書き込み

この流れを作ろうと思います。

1.プロジェクトの作成

デフォルトの状態で作成しました。

スクリーンショット 2022-12-10 23.43.07.png

画面の構成要素について

リポジトリ

ジョブの作成、メタデータの管理をする。

スクリーンショット 2022-12-10 23.47.13のコピー3.png

デザインワークスペース

ジョブのデザインやレイアウトを行う。
実際にGUIでデータの変換や転送処理を並べたりする

スクリーンショット 2022-12-10 23.47.13のコピー2.png

設定タブ

デザインワークスペースで選択した要素のプロパティの表示・編集を行うエリア

スクリーンショット 2022-12-10 23.47.13.png

パレット

データの入出力に関係するコンポーネント等が置いてある。
BigQueryのコンポーネントもある。

スクリーンショット 2022-12-10 23.47.13のコピー.png

2. CSVファイルを取り込む

用意したCSVはこちら

member.csv
Id, FullName
1, "FirstName_1 LastName_1" 
2, "FirstName_2 LastName_2" 

tFileInputDelimitedの定義-CSV読み取り

tFileInputDelimitedコンポーネントを使います。
パレットからデザインワークスペースにドラッグ&ドロップします。

スクリーンショット 2022-12-11 0.25.32.png

配置したコンポーネントをクリックし、設定を編集します。
作成したファイルへのパスへファイル名/ストリームを変更、フィールド区切り","に変更しました。

スクリーンショット 2022-12-11 0.29.39.png

読み取り対象のデータ定義を行う

スクリーンショット 2022-12-11 1.07.35.png

tLogRowコンポーネントを配置し、CSVが読み取れるか確認

コンポーネントを配置し、モードをテーブルに変更

スクリーンショット 2022-12-11 0.39.02.png

実行してみる

実行タブから実行ボタンをおしてみると以下のエラーが!

スクリーンショット 2022-12-11 0.44.53.png

どうやらTalend 8.0.1で12/11日現在
設定のローカル言語が日本語だとエラーが起きるそうだ。

記事の通り
Preferences>Talend>国際化を開く
日本語からEnglishに変更し Apply and Closeをして再起動してみる。

スクリーンショット 2022-12-11 0.43.21.png

再起動し、実行することができました。
無事CSVが読み取れていることを確認できました。

スクリーンショット 2022-12-11 1.11.42.png

3. 不要カラム削除

tMapの定義-CSVマッピング

tMapをCSVの入力とログ出力の間に配置しました

スクリーンショット 2022-12-11 1.21.32.png

tMapをダブルクリックしマッピングをします。

スクリーンショット 2022-12-11 1.26.18.png

左側が元のデータ、右側が出力データです。
右側のFullNameカラムをremoveし、左のIdと右のIdをドラッグ&ドロップで紐づけました。

スクリーンショット 2022-12-11 1.27.32.png

実行してみる

Idのみの出力になりました!
次はCSVに出力してみようと思います。

スクリーンショット 2022-12-11 1.31.11.png

4. CSV出力

tFileOutputDelimitedの定義-CSV出力

tFileOutputDelimitedLog出力の後ろにつけました。

tFileOutputDelimitedの設定に関しては、
区切り文字を","にヘッダーを含めるにチェックを入れました。

スクリーンショット 2022-12-11 1.36.43.png

CSV出力されました。

out.csv
Id
1
2

最後に

普段はEmbulkを触っているのでこういったGUIのものを触るのは初めてですが、
慣れれば複雑なものを加工するみたいなことはできそうです。
個人的には、定期実行とか転送はしないけどデータの加工だけしたい!みたいなときにCSVとかで吐き出して有効活用して効率あげたいなと思いました。
コンポーネントのこと覚えるのがまだまだ時間かかりそうです。

では次は、BigQuery→加工→CSV
という流れに挑戦してみようと思います。

参考にさせていただいた記事

7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?