tFileInputJSON MapReduceプロパティ(非推奨) - 7.3

JSON

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 Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > ファイルコンポーネント > JSON
データガバナンス > サードパーティーシステム > ファイルコンポーネント > JSON
データクオリティとプレパレーション > サードパーティーシステム > ファイルコンポーネント > JSON
Last publication date
2024-02-22

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

MapReducetFileInputJSONコンポーネントは、MapReduceファミリーに属しています。

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

MapReduceのフレームワークは、Talend 7.3以降非推奨となります。Apache SparkのTalendジョブを使って、インテグレーションタスクを実行します。

基本設定

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

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

 

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

 

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

後続するフィールドは、取得されたデータを使用して事前に入力されます。

File Jsonノードの詳細は、 Talend Studio ユーザーガイドで「JSONファイルスキーマを設定」をご覧ください。

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

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

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。

  • [View schema] (スキーマを表示): スキーマのみを表示する場合は、このオプションを選択します。

  • [Change to built-in property] (組み込みのプロパティに変更): ローカルで変更を行うためにスキーマを組み込みに変更する場合は、このオプションを選択します。

  • [Update repository connection] (リポジトリー接続をアップデート): リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。変更を現在のジョブにのみ反映する場合は、変更後、[No] (いいえ)を選択し、[Repository Content] (リポジトリーコンテンツ)ウィンドウで再びこのスキーマのメタデータを選択します。

 

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

 

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

[Read By] (読み取り)

ファイル内のJSONデータを抽出する方法を選択します。

  • Xpath: XPathクエリーに基づいてJSONデータを抽出します。

  • JsonPath: JSONPathクエリーに基づいてJSONデータを抽出します。より良いパフォーマンスを得るためには、JSONPathでデータを読み取ることをお勧めします。

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

データが抽出されるHDFS上のファイルまたはフォルダーへのパスを入力します。

入力したパスがフォルダーを指す場合、そのフォルダーに格納されているすべてのファイルが読み込まれます。

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

  • DEFLATE: *.deflate

  • gzip: *.gz

  • bzip2: *.bz2

  • LZO: *.lzo

[Run] (実行)ビューの[Hadoop configuration] (Hadoop構成)タブで使用するHadoopディストリビューションの接続が正しく構成されていることを確認する必要があることにご注意ください。

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

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

エラーの発生した行をスキップし、エラーが発生していない行の処理を完了するには、このチェックボックスをオフにします。エラーをスキップしたら、[Row] (行)> [Reject] (リジェクト)リンクを使用してエラーの発生した行を収集できます。

[Loop Json query] (Jsonクエリーをループ)

ループのベースとなるノードのJsonpathまたはXPathを入力します。

[Read By] (読み取り)ドロップダウンリストから[Xpath]を選択した場合は、代わりに[Loop Xpath query] (Xpathクエリーをループ)フィールドが表示されます。

[Mapping] (マッピング)

スキーマで定義されたカラムを対応するJSONノードにマップするには、このテーブルを完成させてください。

  • [Column] (カラム): [Column] (カラム)セルには、定義されたスキーマカラム名が自動的に入力されます。

  • Json query/JSONPath query(Jsonクエリー/JSONPathクエリー): 目的のデータを保持するJSONPathノードを指定します。JSONPath式の詳細は、http://goessner.net/articles/JsonPath/をご覧ください。

    このカラムは、[Read By] (読み取り)リストからJsonPathが選択されている場合のみ利用できます。

  • [XPath query] (XPathクエリー): 目的のデータを保持するXPathノードを指定します。

    このカラムは、[Read By] (読み取り)リストからXpathが選択されている場合のみ利用できます。

  • [Get Nodes] (ノードを取得): このチェックボックスをオンにすると、すべてのノードのJSONデータを抽出、または特定のノードの横にあるチェックボックスをオンにしてそのノードのデータを抽出します。

    このカラムは、[Read By] (読み取り)リストからXpathが選択されている場合のみ利用できます。

詳細設定

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

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

[Validate date] (データの検証)

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

[Encoding] (エンコーディング)

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

グローバル変数

グローバル変数

ERROR_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。

Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。

フィールドまたは式に変数を入れるには、Ctrl + スペースを押して変数リストにアクセスし、リストから使用する変数を選択します。

変数の詳細は、Talend Studioユーザーガイドをご覧ください。

使用方法

使用ルール

Talend Map/Reduceジョブでは開始コンポーネントとして使用され、出力リンクとして変換コンポーネントが必要になります。一緒に使用される他のコンポーネントもMap/Reduceのコンポーネントでなければなりません。Hadoopで直接実行できるネイティブMap/Reduceコードを生成します。

Map/Reduceジョブがワークスペースで開かれると、tFileInputJSONとMapReduceファミリがStudioの[Palette] (パレット)に表示されます。

Talend Map/Reduceジョブの詳細は、Talend Big Data入門ガイドTalend Map/Reduceジョブを作成、変換、設定する方法のセクションをご覧ください 。

本書では、特に明記されていない限り、標準ジョブ、つまり従来の Talend データ統合ジョブ、およびMap/Reduce以外のジョブのシナリオで説明しています。

[Hadoop Connection] (Hadoop接続)

[Run] (実行)ビューの[Hadoop Configuration] (Hadoop設定)タブを使用して、ジョブ全体で特定のHadoopディストリビューションに対する接続を定義する必要があります。

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

前提条件

Talend Studio との操作を確実に行うには、Hadoopディストリビューションを適切にインストールする必要があります。以下のリストに、MapR関連の情報などを示します。

  • MapRクライアントは必ずStudioのあるマシンにインストールして、そのマシンのPATH変数にMapRクライアントライブラリーを追加します。MapRのドキュメンテーションによると、各OSバージョンに対応するMapRクライアントのライブラリーは、MAPR_INSTALL\ hadoop\hadoop-VERSION\lib\nativeにあります。たとえば、Windows版のライブラリーは、\lib\native\MapRClient.dllにあるMapRクライアントのjarファイルにあります。詳細は、MapRからhttp://www.mapr.com/blog/basic-notes-on-configuring-eclipse-as-a-hadoop-development-environment-for-maprをご覧ください。

    指定のライブラリーを追加しないと、no MapRClient in java.library.pathというエラーが発生する可能性があります。

  • たとえば、[Window] (ウィンドウ)メニューの[Preferences] (環境設定)ダイアログボックスにある[Run/Debug] (実行/デバッグ)ビューの[Job Run VM arguments] (ジョブ実行VMの引数)エリアで、-Djava.library.path引数を設定するために使われます。この引数により、そのMapRクライアントのネイティブライブラリーへのパスがStudioに渡されるので、サブスクリプションベースのユーザーはデータビューアーをフルに活用して、MapRに保存されたデータをStudioでローカルに表示できます。

Hadoopディストリビューションのインストール方法は、使用しているHadoopディストリビューションに対応するマニュアルをご覧ください。