tMysqlOutputを使用してカラムの挿入とデータの変更を行う - 7.3

MySQL

Version
7.3
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > DBコンポーネント > MySQL
データガバナンス > サードパーティーシステム > DBコンポーネント > MySQL
データクオリティとプレパレーション > サードパーティーシステム > DBコンポーネント > MySQL

このJavaシナリオは、tRowGeneratorを使用してランダムデータを作成し、tMap コンポーネントを使用して、変更するカラムを複製し、最終的にtMysqlOutputコンポーネントを使用して、SQL式をベースに挿入するデータを変更することを目的とする、コンポーネント3つのジョブです。

Talendでサポートされているテクノロジーの詳細は、Talendコンポーネントを参照してください。

  • コンポーネントtRowGeneratortMap、およびtMySQLOutput[Palette] (パレット)からデザインワークスペースにドロップします。

  • [Row Main] (行>メイン)リンクを使用して、tRowGeneratortMap、およびtMysqlOutputを接続します。

  • デザインワークスペースでtRowGeneratorを選択して[Basic settings] (基本設定)ビューを開きます。

  • [Edit schema] (スキーマを編集)の[...]ボタンをクリックし、tMapコンポーネントに渡すデータを定義します(このシナリオではnameおよびrandom_dateという2つのカラム)。

  • [OK]をクリックしてダイアログボックスを閉じます。

  • [RowGenerator Editor]の3点ボタンをクリックしてエディターを開き、生成するデータを定義します。

  • 対応する[Functions] (ファンクション)フィールドをクリックし、2つのカラムのそれぞれにファンクションを選択します。最初のカラムにはgetFirstNameを、2番目のカラムにはgetrandomDateを選択してください。

  • [Number of Rows for Rowgenerator] (Rowgeneratorの行数)フィールドに10と入力してファーストネームの行を10行生成し、[Ok]をクリックしてエディターを閉じます。

  • tMapコンポーネントをダブルクリックして、マップエディターを開きます。マップエディターが開き、tRowGeneratorコンポーネントの入力メタデータが表示されます。

  • マップエディターの[Schema editor] (スキーマエディター)パネルで、出力テーブルの[+]ボタンをクリックして行を2つ追加し、最初の行をrandom_date、2番目の行をrandom_date1として定義します。

このシナリオでは、出力コンポーネント内のデータを変更するために、random_dateカラムを複製し、スキーマを変更しようとしています。

  • マップエディターで、random_date行を入力テーブルから出力テーブルのrandom_date行とrandom_date1行にドラッグします。

  • [OK]をクリックして、エディターを閉じます。

  • デザインワークスペースでtMysqlOutputコンポーネントをダブルクリックして[Basic settings] (基本設定)ビューを表示し、パラメーターを定義します。

  • [Property Type] (プロパティタイプ)[Repository] (リポジトリー)に設定し、[...]ボタンをクリックして[Repository content] (リポジトリーコンテンツ)ダイアログボックスを開き、正しいDB接続を選択します。対応するフィールドに接続の詳細が自動的に表示されます。

    注:

    [Repository] (リポジトリー)[Metadata] (メタデータ)エントリにDB接続の詳細を保存していない場合は、プロパティタイプリストで[Built-in] (組み込み)を選択し、接続の詳細を手動で設定します。

  • [Table] (テーブル)フィールドの横にある[...]ボタンをクリックし、変更するテーブル(このシナリオではDates)を選択します。

  • [Action on table] (テーブルへのアクション)リストで[Drop table if exists and create] (テーブルがある場合はテーブルをドロップして作成します)を選択し、[Action on data] (データへのアクション)リストからInsertを選択します。

  • 必要に応じて、[Sync columns] (カラムの同期)をクリックして、tMapコンポーネントからのカラムと同期します。

  • [Advanced settings] (詳細設定)タブをクリックして対応するビューを表示し、詳細パラメーターを設定します。

  • [Additional Columns] (追加のカラム)エリアで、カラムに対して実行する変更を設定します。

    このシナリオでは、random_date_1One_month_laterカラムに置換されます。また、データそのものが、ランダムに取得されたrandom_date_1カラムの日付に1か月を追加するSQL式を使用して変更されます。たとえば、2007-08-12は2007-09-12となります。

    -[Name] (名前)セルにOne_Month_Laterと入力します。

    -[SQL expression] (SQL式)セルに、実行する追加スクリプト(このシナリオでは"adddate(Random_date, interval 1 month)")を入力します。

    -[Position] (位置)リストで[Replace] (置換)を選択します。

    -[Reference column] (参照カラム)リストでRandom_date1と入力します。

注:

このジョブのために、1つのインスタンスをOne_Month_Laterカラムに置換する前に、DBテーブル内のrandom_date_1カラムを複製しました。この対処法の目的は、実行する変更を前もって表示できるようにすることです。

  • ジョブを保存し、[F6]を押して実行します。

DBテーブル内でrandom_date1カラムが新しいOne_month_laterカラムに置換され、ランダムに生成された各日付に1か月が追加されます。