Apache Spark BatchのtHConvertFileプロパティ - Cloud - 8.0

Data mapping

Version
Cloud
8.0
Language
日本語 (日本)
Product
Talend Big Data Platform
Talend Data Fabric
Talend Data Management Platform
Talend Data Services Platform
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > 変換処理コンポーネント > データマッピング
データガバナンス > サードパーティーシステム > 変換処理コンポーネント > データマッピング
データクオリティとプレパレーション > サードパーティーシステム > 変換処理コンポーネント > データマッピング

このプロパティはSpark Batchジョブフレームワークで実行されているtHConvertFileを設定するために使います。

Spark Batch tHConvertFileコンポーネントは、変換処理ファミリーに属しています。

このコンポーネントは、ビッグデータ対応のTalend Platform製品およびTalend Data Fabricで利用できます。

基本設定

ストレージ

HDFS環境に接続するには、[Define a storage configuration component] (ストレージ設定コンポーネントを定義)チェックボックスをオンにし、ドロップダウンリストの中から使用するコンポーネントの名前を選択します。

tHDFSConfigurationコンポーネントのドキュメントで説明されているように、このオプションを有効にするには、使用するHDFS環境への接続をあらかじめ設定しておく必要があります。

[Define a storage configuration component] (ストレージ設定コンポーネントを定義)チェックボックスをオンにしない場合、ファイルをローカルでしか変換できません。

コンポーネントの設定

コンポーネントを設定するには、[...]ボタンをクリックし、[Component Configuration] (コンポーネントの設定)ウィンドウで次の手順を実行します。

  1. [Record structure] (レコード構造)フィールドの横にある[Select] (選択)ボタンをクリックし、表示される[Select a Structure] (構造の選択)ダイアログボックスで、ファイルの変換に使う構造を選択して、[OK]をクリックします。

    構造はあらかじめ Talend Data Mapper で作成しておく必要があります。

  2. 使う[Input Representation] (入力表記)をドロップダウンリストから選択します。

    サポートされる入力形式は、Avro、COBOL、EDI、Flat、IDocs、JSON、XMLです。

  3. 使う[Output Representation] (出力表記)をドロップダウンリストから選択します。出力表記に利用できる選択肢は、入力表記に何を選択するかによって異なります。

    サポートされるで出力形式は、Avro、Flat、JSON、XMLです。

  4. [Next] (次へ)をクリックします。

  5. 新しい各レコードの開始位置をコンポーネントに指定します。この操作を行うには、データの構造を完全に理解している必要があります。

    正確な操作方法は、使用する入力表現によって異なり、次のオプションのいずれかを選ぶ必要があります。

    1. データの適切なレコード区切りを選択します。この値は引用符で囲まずに指定する必要があります。
      • [Separator] (区切り文字)では、改行を特定する\nなどの区切り文字指示子を指定できます。

        サポートされている指示子は、Unixタイプの改行では\n、Windowsの場合は\r\n、Macの場合は\r、タブ文字の場合は\tです。

      • [Start/End with] (開始/終了文字)では、<rootなど新しいレコードを示す開始文字、またはレコードの終了を示す文字を指定できます。正規表現にすることもできます。

        [Start with] (開始文字)は改行もサポートし、サポートされている指示子は、Unixタイプの改行では\n、Windowsの場合は\r\n、Macの場合は\r、タブ文字の場合は\tです。

      • Sample File (サンプルファイル): サンプルファイルで署名をテストするには、[...]ボタンをクリックし、サンプルとして使用するファイルを参照し、[Open] (開く)をクリックし、[Run] (実行)をクリックしてサンプルをテストします。

        署名をテストすることで、レコードの総数、レコードの最小長と最大長が、データに基づく値に相当するかを確認できます。このステップでは、サンプルとして使うデータのローカルサブセットがあることを前提とします。

      • [Finish] (終了)をクリックします。

    2. 入力表現がCOBOLまたはフラットで、位置またはバイナリエンコーディングプロパティが指定されている場合は、入力レコード構造の署名を定義します。
      • [Input Record root] (入力レコードルート)は、入力レコードのルートエレメントに相当します。
      • [Minimum Record Size] (最小レコードサイズ)は、最小レコードのバイト単位のサイズです。コンポーネントは新しいレコードを探す時に必要以上に多くチェックを実行するので、この値を低く設定しすぎるとパフォーマンスの問題が生じる可能性があります。

      • [Maximum Record Size] (最大レコード数)は、最大レコードのバイト単位のサイズで、入力の読み取りに割り当てられたメモリ量を判別するために使用されます。

      • [Maximum Block Size (BLKSIZE)] (最大ブロックサイズ(BLKSIZE))は、可変ブロックファイル内の最大ブロックのサイズ(バイト単位)に対応しています。厳密値がない場合は、最大BLKSIZEである32760を入力します。

        ブロック化された可変長署名を使うと、各ブロックがSparkレコードとして抽出されます。各マップの実行は、他のCobol署名と同様に、個々のCobolレコードではなく、ブロック全体を処理します。

      • Sample from Workspace (ワークスペースからのサンプル)またはSample from File System (ファイルシステムからのサンプル): サンプルテストで署名をテストするには、[...]ボタンをクリックしてから、使用するファイルを参照します。

        署名をテストすることで、レコードの総数、レコードの最小長と最大長が、データに基づく値に相当するかを確認できます。このステップでは、サンプルとして使うデータのローカルサブセットがあることを前提とします。

      • [Footer Size] (フッターサイズ)は、フッター(ある場合)のバイト単位のサイズです。ランタイム時にフッターは、最後のレコードに誤って含まれずに無視されます。フッターがない場合はこのフィールドには何も入力しないでください。

      • [Next] (次へ)ボタンをクリックして[Signature Parameters] (署名パラメーター)ウィンドウを開き、レコード入力構造の署名を定義するフィールドを選択し(つまり、新しいレコードの開始位置を識別するため)、[Operation] (オペレーション)カラムと[Value] (値)カラムを更新し、[Next] (次へ)をクリックします。

      • [Record Signature Test] (署名テストを記録)ウィンドウが開いたら、[Back] (戻る)ボタンと[Next] (次へ)ボタンでレコードをスクロールしてビジュアルチェックを実行することで、レコードが正しく描出されていることを確認し、[Finish] (終了)をクリックします。

[Input] (入力)

[...]ボタンをクリックして、入力ファイル保存先へのパスを定義します。

引用符の間に手動でパスを入力することもできます。

Output (出力)

[...]ボタンをクリックして、出力ファイル保管先へのパスを定義します。

引用符の間に手動でパスを入力することもできます。

アクション

ドロップダウンリストから以下を選択します。
  • [Ceate] (作成): 変換プロセスで新しいファイルを作成する場合。

  • [Overwrite] (上書き): 変換プロセスで既存のファイルを上書きする場合。

[Open Structure Editor] (構造エディターを開く)

[...]ボタンをクリックして、 Talend Data Mapper [Structure Editor] (構造エディター)で編集する構造を開きます。

詳細は、 Talend Data Mapperユーザーガイドをご参照ください。

[Merge result to single file] (結果を1つのファイルにマージ)

デフォルトでは、tHConvertFileはいくつかのパーツファイルを作成します。これらのファイルを1つのファイルにマージするには、このチェックボックスをオンにします。

ソースとターゲットファイルの管理では、次のオプションを使います:
  • [Merge File Path] (マージファイルパス): すべての部分からのマージされたコンテンツを含むファイルへのパスを入力します。
  • [Remove source dir] (ソースディレクトリーを削除): このチェックボックスをオンにすると、マージ後にソースファイルが削除されます。
  • ターゲットファイルを上書き: このチェックボックスをオンにすると、対象の場所に既に存在するファイルが上書きされます。このオプションでフォルダーは上書きされません。
  • [Include Header] (ヘッダーを含める): マージされたファイルの先頭にCSVヘッダーを追加するには、このチェックボックスをオンにします。このオプションはCSV出力にのみ使います。他の表記の場合、ターゲットファイルには影響しません。
警告: このオプションをAvro出力で使うと、無効なAvroファイルが作成されます。各部分はAvroスキーマヘッダーで始まるため、マージされたファイルには複数のAvroスキーマがあり、これは無効です。

詳細設定

[Die on error] (エラー発生時に強制終了)

このチェックボックスをオンにすると、エラー発生時にジョブの実行が停止されます。

このチェックボックスをオフにすると、エラーをスキップしてジョブの実行プロセスを続行できます。

使用方法

使用ルール このコンポーネントは、HDFSストレージへの接続を定義するtHDFSConfigurationコンポーネントと一緒に使うか、ローカルファイルのみの変換用にスタンドアロンとして使います。
Talend Runtimeとの使用 データマッピングコンポーネントが含まれているジョブやルートを Talend Runtimeと共にデプロイしたい場合は、まずTalend Data Mapper機能をインストールする必要があります。詳細は、 Talend Runtimeと共にTalend Data Mapperを使用をご覧ください。