3
1

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 5 years have passed since last update.

【Talend】テストデータ作成2

Posted at

概要

前回記事 にてテストデータを作るジョブを作成しましたが、データパターンの作成方法をいくつか書いてみます。
他にももっと良い方法などあるかもしれませんが、参考までにご覧ください。

使用環境

TalendOpenStudio 7.1.1

参照

ルーチン一覧

使用方法

tRowGenerator のRowGeneratorエディターにて、カラム別に関数を設定します。
関数欄にて、使用する関数を選択する方法と、
カスタマイズパラメータを選択して、式ビルダで指定する方法があります。
処理の融通が利くので、下記はカスタマイズパラメータを指定して、
式ビルダに設定した場合と考えてください。

testdata_16.jpg

数値ルーチン

  • 連番を取得

関数:Numeric.sequence("連番名", 開始値, 増加値)
戻り値:Integer
式ビルダ設定 例)

Numeric.sequence("s1",5,2)
出力結果
5
7
9
11
13

※5から開始し、2ずつ増えました。
※S1は、ジョブ内でグローバルです。
 resetSequence でシーケンス値をリセットできます。
 マイルーチンなどでシーケンス値を操作することができるでしょう。

  • ランダム値を取得

関数:Numeric.random(最小値, 最大値)
戻り値:Integer
式ビルダ設定 例)

Numeric.random(5,10)
出力結果
8
10
7
6
8
  • ゼロ埋めした値を取得

関数:String.format("フォーマット", Numeric.random(最小値, 最大値))
戻り値:String
式ビルダ設定 例)

String.format("%06d", Numeric.random(5,10)) 
出力結果
000008
000007
000006
000010
000009

TalendDataGeneratorルーチン

  • ランダムな名前

関数:TalendDataGenerator.getFirstName()
戻り値:String
式ビルダ設定 例)

TalendDataGenerator.getFirstName()
出力結果
Andrew
William
Millard
Franklin
Benjamin
  • ランダムな姓

関数:TalendDataGenerator.getLastName()
戻り値:String
式ビルダ設定 例)

TalendDataGenerator.getLastName()
出力結果
Carter
Clinton
Pierce
Kennedy
Hoover

TalendDateルーチン

  • ランダムな日付

関数:TalendDate.getRandomDate("最小日", "最大日")
戻り値:Date
式ビルダ設定 例)

TalendDate.getRandomDate("2017-01-01", "2018-01-01") 
出力結果
2017/02/11 22:13:08
2017/10/22 20:07:50
2017/07/11 19:28:48
2017/12/10 10:48:20
2017/04/13 06:45:41

※ヘルプでは、TalendDate.getRandomDate("format date of the character string", String minDate, String maxDate) となっていましたが、"format date of the character string"は不要です。
スキーマのパターンにて、"yyyy/MM/dd HH:mm:ss"を指定することで時分秒のランダム値を設定することができました。

※また、下記のように戻り値をString型に変換する方法もあります。
この場合は、スキーマのタイプは、Stringを指定します。

TalendDate.formatDate("yyyy/MM/dd HH:mm:ss",TalendDate.getRandomDate("2017-01-01","2019-01-01") ) 
出力結果
2018/07/25 11:45:19
2017/11/05 19:33:12
2018/01/09 10:22:45
2018/01/26 19:19:03
2017/09/23 14:17:14

TalendStringルーチン

  • ランダム文字列を取得

関数:getAsciiRandomString(文字数)
戻り値:String
式ビルダ設定 例)

TalendString.getAsciiRandomString(5) 
出力結果
BBVF4
PjvyB
dluR0
MowPQ
jTxtW
3
1
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
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?