メイン コンテンツをスキップする 補完的コンテンツへスキップ

Apache Spark BatchのtFileInputDelimitedのプロパティ

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

Spark BatchtFileInputDelimitedコンポーネントは、ファイルファミリーに属しています。

このフレームワークのコンポーネントは、すべてのサブスクリプションベースのビッグデータ対応のTalend製品およびTalend Data Fabricで使用できます。

基本設定

[Define a storage configuration component] (ストレージ設定コンポーネントを定義)

HDFSなどのターゲットファイルシステムへの接続の設定情報を提供するために使用する設定コンポーネントを選択します。

このチェックボックスをオフにすると、ターゲットファイルシステムはローカルシステムになります。

使用する接続設定は同じジョブ内にあることが必要です。たとえば、tHDFSConfigurationコンポーネントをジョブにドロップした場合は、このコンポーネントを選択して、所定のHDFSシステム内で結果を書き込むことができます。

[Property type] (プロパティタイプ)

[Built-in] (組み込み)[Repository] (リポジトリー)のいずれかです。

 

[Built-In] (組み込み): 一元的に保存されるプロパティデータはありません。

 

[Repository] (リポジトリー): プロパティが保存されているリポジトリーファイルを選択します。

プロパティは、リポジトリーツリーのHadoopクラスターノードに一元的に保存されます。

Hadoopクラスターノードの詳細は、Hadoop接続メタデータを管理をご覧ください。

[Schema] (スキーマ)[Edit Schema] (スキーマを編集)

スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。変更を加えると、スキーマは自動的に組み込みになります。

スキーマでのダイナミックカラムは、Talendが提供する8.0.1-R2022-09以降のTalend Studioマンスリーアップデートをインストール済みである場合に利用できます。詳細は管理者にお問い合わせください。ダイナミックカラムを使用できるのはヘッダーの設定時だけです。[Header] (ヘッダー)プロパティの値には、必ず1を入力してください。ダイナミックカラムを使用する場合、カラムはデフォルトで文字列としてロードされます。

 

[Built-in] (組み込み): そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。

 

[Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。

[Folder/File] (フォルダー/ファイル)

ファイルシステムで使用するデータを参照するか、パスを入力します。

設定したパスがフォルダーを指す場合、このコンポーネントによりフォルダーに保管されているすべてのファイル(/user/talend/inなど)が読み取られます。サブフォルダーが存在する場合、[Spark configuration] (Spark設定)タブの[Advanced properties] (詳細プロパティ)テーブルでプロパティspark.hadoop.mapreduce.input.fileinputformat.input.dir.recursivetrueに設定しない限り、サブフォルダーは自動的に無視されます。
  • 使用するファイルシステムに応じて、ジョブに配置されたHDFS向けtHDFSConfigurationコンポーネント、S3向けtS3Configurationコンポーネント、Azure StorageおよびAzure Data Lake Storage向けtAzureFSConfigurationなど、対応する設定コンポーネントを適切に設定します。

読み取るファイルが圧縮されている場合は、拡張子を付けてファイル名を入力します。このコンポーネントは、実行時に自動的に展開されます。サポートされている圧縮形式と対応する拡張子は次のとおりです。

  • DEFLATE: *.deflate

  • gzip: *.gz

  • bzip2: *.bz2

  • LZO: *.lzo

参照用のボタンはSpark Localモードでは機能しません。お使いのディストリビューションで、Talend Studioがサポートしているその他のSpark Yarnモードを使用している場合は、同じジョブ内の設定コンポーネントで接続を適切に設定したことを確認する必要があります。使用されるファイルシステムに応じて設定コンポーネントを使用します。

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

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

[Use S3 Select] (S3 Selectを使用)

クエリーパフォーマンスを向上させるには、このチェックボックスをオンにしてS3 Selectを使用できるようにします。次のパラメーターを該当のフィールドで設定する必要があります。

このチェックボックスは、tS3Configurationコンポーネントをストレージ設定コンポーネントとして使用し、YARNクラスター(Amazon EMRクラスター付き)かDatabricksモードのいずれかでSpark Universalでジョブを実行する場合にのみ利用できます。

  • [Use Gzip compression] (GZip圧縮を使用): ファイルにGZip圧縮を使用する場合はこのチェックボックスを選択します。
  • [Comment character] (コメント文字): コメントに使う文字を入力します。
  • [Null value] (Null値): Nullと見なされる値を入力します。
  • Values can contain quoted record delimiters: このチェックボックスを選択すると、引用符付きレコードの区切り文字が値に含まれるようになります。このオプションはDatabricksでのみ適用されます。

このオプションは、Talendが提供する8.0.1-R2022-12以降のTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。詳細は管理者にお問い合わせください。

[Row separator] (行区切り)

行の終端を識別するために使用される区切り。

[Field separator] (フィールド区切り)

転送されたデータのフィールドを区切る場合は、文字、文字列、正規表現のいずれかを入力します。

ヘッダー

ファイルの先頭でスキップする行の数を入力します。

情報メモ注: このオプションは、大きな数字を入力しなかった場合に正しく動作します。

[CSV options] (CSVオプション)

このチェックボックスを選択すると、[Escape char] (エスケープ文字)[Text enclosure] (テキストエンクロージャー)などCSV固有のパラメーターが含まれます。
情報メモ重要: Sparkのバージョン2.0以降では特殊文字をエスケープする必要があるため、"\"""""\\""\""となります。
Splittable Sparkクラスターを有効にして複数のエグゼキューターを使用し、大きなファイルを並列で読み取るようにするには、このチェックボックスを選択します。

このチェックボックスは、 [CSV options] (CSVオプション)チェックボックスをオンにすると使用できます。

[Use multiline option] (複数行オプションを使用)

このチェックボックスを選択すると、入力ファイルで2行を1行にまとめることができます。

このチェックボックスは、[CSV options] (CSVオプション)チェックボックスをオンにすると使用できます。

[Skip empty rows] (空の行をスキップ)

このチェックボックスを選択すると、空白行はスキップされます。

詳細設定

[Set minimum partitions] (最小パーティションを設定)

このチェックボックスを選択すると、Sparkのデフォルトのパーティショニング動作により入力データから作成されるパーティションの数を制御できます。

表示されたフィールドに、取得するパーティションの最小数を引用符なしで入力します。

一般に、パーティション数の制御においては、少なくとも並列処理を実行するパーティションの数を設定できますが、利用可能なメモリ容量およびネットワークのデータ転送負荷を考慮する必要があります。

[Custom Encoding] (カスタムエンコーディング)

保管データを処理する際、エンコーディングの問題が発生することがあります。このような場合は、チェックボックスをオンにして[Encoding] (エンコーディング)リストを表示します。

次に、リストから使用するエンコーディングを選択するか、[Custom] (カスタム)を選択して手動で定義します。

[Advanced separator (for number)] (高度な区切り文字:数値)

数値に使用する区切りを変更する場合は、このチェックボックスを選択します。デフォルトでは、桁区切りはコンマ(,)で、小数点区切りはピリオド(.)です。

[Trim all column] (カラムをすべてトリミング)

このチェックボックスを選択すると、先行ホワイトスペースおよび後続ホワイトスペースがすべてのカラムから削除されます。このチェックボックスをオフにすると、[Check column to trim] (トリミングするカラムをチェック)テーブルが表示され、トリミングする特定のカラムを選択できます。

[Check columns to trim] (トリミングするカラムをチェック)

このテーブルは使用されているスキーマで自動入力されます。トリミングするカラムに対応するチェックボックスをオンにします。

[Check each row structure against schema] (スキーマに対して各行ストラクチャーをチェック)

このチェックボックスを選択すると、各行のカラム総数がスキーマと一致するかどうかチェックされます。一致しない場合、コンソール上にエラーメッセージが表示されます。

[Check date] (日付をチェック)

このチェックボックスを選択すると、日付形式が入力スキーマに対して厳密にチェックされます。

[Decode String for long, int, short, byte Types] (long、int、short、byte型の文字列をデコード)

16進数文字列または8進数文字列を数値データ型(long、integer、short、またはbyte)に解析する場合は、このチェックボックスを選択します。

使用方法

使用ルール

このコンポーネントは、開始コンポーネントとして使用され、出力リンクを必要とします。

このコンポーネントは、所属するSpark Batchのコンポーネントのパレットと共に、Spark Batchジョブを作成している場合にだけ表示されます。

特に明記していない限り、このドキュメンテーションのシナリオでは、標準ジョブ、つまり従来の Talend Data Integrationジョブだけを扱います。

[Spark Connection] (Spark接続)

[Run] (実行)ビューの[Spark configuration] (Spark設定)タブで、ジョブ全体でのSparkクラスターへの接続を定義します。また、ジョブでは、依存jarファイルを実行することを想定しているため、Sparkがこれらのjarファイルにアクセスできるように、これらのファイルの転送先にするファイルシステム内のディレクトリーを指定する必要があります。
  • Yarnモード(YarnクライアントまたはYarnクラスター):
    • Google Dataprocを使用している場合、[Spark configuration] (Spark設定)タブの[Google Storage staging bucket] (Google Storageステージングバケット)フィールドにバケットを指定します。

    • HDInsightを使用している場合、[Spark configuration] (Spark設定)タブの[Windows Azure Storage configuration] (Windows Azure Storage設定)エリアでジョブのデプロイメントに使用するブロブを指定します。

    • Altusを使用する場合は、[Spark configuration] (Spark設定)タブでジョブのデプロイにS3バケットまたはAzure Data Lake Storageを指定します。
    • オンプレミスのディストリビューションを使用する場合は、クラスターで使われているファイルシステムに対応する設定コンポーネントを使用します。一般的に、このシステムはHDFSになるため、tHDFSConfigurationを使用します。

  • [Standalone mode] (スタンドアロンモード): クラスターで使われているファイルシステム(tHDFSConfiguration Apache Spark BatchtS3Configuration Apache Spark Batchなど)に対応する設定コンポーネントを使用します。

    ジョブ内に設定コンポーネントがない状態でDatabricksを使用している場合、ビジネスデータはDBFS (Databricks Filesystem)に直接書き込まれます。

この接続は、ジョブごとに有効になります。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。