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 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
ジョブデザインと開発 > サードパーティーシステム > ファイルコンポーネント > JSON
データガバナンス > サードパーティーシステム > ファイルコンポーネント > JSON
データクオリティとプレパレーション > サードパーティーシステム > ファイルコンポーネント > JSON

これらのプロパティを使って、[MapReduce]ジョブフレームワークで実行されているtFileInputJSONを設定します。

MapReduce tFileInputJSONコンポーネントは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クエリー)

ループの基になっているJSONフィールド内のノードを指すパスを入力します。

[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] (カスタム)を選択して、手動で定義します。

グローバル変数

[Global Variables] (グローバル変数)

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

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

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

変数の詳細は、『 Talend Studio ユーザーガイド』を参照してください。

使用方法

[Usage rule] (使用ルール)

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

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

Talend Map/Reduceジョブの詳細は、『 Talend Open Studio for Big Data入門ガイド 』の Talend Map/Reduceジョブを作成、変換、設定する方法の項目を参照してください。

本書では、特に明記されていない限り、[Standard] (標準)ジョブ、つまり従来の 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ディストリビューションに対応するマニュアルを参照してください。