Talend Spark BatchまたはStreamingジョブでのレシピの操作の実行 - 2.5

Talend Data Preparation ユーザーガイド

author
Talend Documentation Team
EnrichVersion
7.0
2.5
EnrichProdName
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 Real-Time Big Data Platform
task
データクオリティとプレパレーション > データクレンジング
EnrichPlatform
Talend Data Preparation

tDataprepRunコンポーネントを使用すると、Talend Data Preparationで作成した既存のプレパレーションをビッグデータジョブで直接再使用できます。

つまり、Spark StreamingまたはSpark Batchジョブで、同じモデルを持つ入力データに対してプレパレーションを適用するプロセスの操作が可能になります。

次の簡単なジョブについて見てみましょう。

  • HDFS上の.csvファイルから顧客データを読み取る。
  • 既存のプレパレーションをこのデータに適用する。
  • その結果をHiveデータセットに出力する。

これらの操作を実行するには、ジョブの入力データと同じスキーマでデータセット上にプレパレーションを事前に作成しておく必要があります。ここでは、既存のプレパレーションはdatapreprun_sparkといいます。このプレパレーションは、世界中の顧客の名前、メールアドレス、サブスクリプション日、居住国などのデータが保管されたデータセット上に作成されています。このシンプルなプレパレーションは、中国とロシアの顧客のみを維持するようにフィルターをデータに適用し、データ形式を調整し、メール部分を抽出します。

1つの行またはセルにしか影響しない処理がプレパレーションに含まれている場合、ジョブの実行中、tDataprepRunコンポーネントによってこれらの処理はスキップされます。[Make as header] (ヘッダーとしてマーク)または[Delete Row] (行の削除)ファンクションは、ビッグデータなどのコンテキストでは機能しません。

手順

  1. 新しいSpark BatchまたはSpark StreamingジョブをTalend Studioで作成します。
  2. デザインワークスペースでtHDFSConfigurationtFileInputDelimitedtDataprepRuntHiveOutputコンポーネントを追加します。
  3. 2つの[Row] (行) > [Main] (メイン)リンクを使って、tFileInputDelimitedtDataprepRuntHiveOutputをリンクします。
  4. tHDFSConfigurationコンポーネントを選択し、[Run] (実行)タブをクリックして[Spark Configuration] (Spark設定)タブを設定します。

    tHDFSConfigurationコンポーネントの設定方法の詳細は、tHDFSConfiguration properties for Apache Spark BatchまたはtHDFSConfiguration properties for Apache Spark Streamingを参照してください。

  5. tFileInputDelimitedコンポーネントを選択し、[Component] (コンポーネント)タブをクリックして基本設定を設定します。

    tFileInputDelimitedコンポーネントのスキーマは必ず、tDataprepRunコンポーネントによって予測されるスキーマに一致させてください。つまり、入力スキーマは、datapreprun_sparkプレパレーションが最初に作成されたデータセットと同じである必要があります。

  6. tDataprepRunコンポーネントを選択し、[Component] (コンポーネント)タブをクリックして基本設定を定義します。
  7. [URL]フィールドに、Talend Data Preparation WebアプリケーションのURLを入力します。

    ポート9999Talend Data Preparationのデフォルトポートです。

  8. [Username] (ユーザー名)フィールドと[Password] (パスワード)フィールドに、接続情報を二重引用符で囲んで入力します。Talend Data Preparation
  9. [Choose an existing preparation] (プレパレーションを選択)をクリックして、Talend Data Preparationで使用可能なプレパレーションのリストを表示し、[datapreprun_spark]を選択します。

    互換性のない処理を含み、1つの行またはセルにしか影響しないプレパレーションの横に警告が表示されます。

  10. [Fetch Schema] (スキーマを取得)をクリックして、プレパレーションのスキーマを取得します。この場合は、datapreprun_sparkです。

    tDataprepRunコンポーネントの出力スキーマには、各プレパレーションステップで行われた変更が反映されています。スキーマでは、たとえば、追加または削除されたカラムが考慮されます。

  11. tHiveOutputコンポーネントを選択し、[Component] (コンポーネント)タブをクリックして基本設定を定義します。
  12. [Sync columns] (カラムの同期)をクリックして、tDataprepRunコンポーネントから継承された新しい出力スキーマを取得します。
  13. ジョブを保存し、[F6]を押して実行します。

タスクの結果

datapreprun_sparkのすべてのプレパレーションステップがデータ統合ジョブのフローから直接データに適用されます。