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

tHDFSList

tHDFSListは、ファイルマスクパターンを基にファイルまたはフォルダーのリストを取得し、各ユニティで繰り返し処理を実行します。

デフォルトで、このコンポーネントはTalend Studioと共には出荷されていません。機能マネージャーを使ってインストールする必要があります。 詳細は、機能マネージャーを使って機能をインストールをご覧ください。

tHDFSListの標準プロパティ

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

標準tHDFSListコンポーネントは、ビッグデータファミリーとファイルファミリーに属しています。

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

基本設定

プロパティ 説明

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

接続の詳細を設定する方法を選択します。

  • [Built-In] (組み込み): このコンポーネントの接続の詳細がローカルに設定されます。関連するすべての接続のプロパティ値を手動で指定する必要があります。

  • [Repository] (リポジトリー): [Repository] (リポジトリー) > [Metadata] (メタデータ)で一元的に保存された接続の詳細が、このコンポーネントによって再使用されます。

    このチェックボックスの横にある [...] ボタンをクリックし、表示された [Repository Content] (リポジトリーのコンテンツ)ダイアログボックスで、再使用する接続の詳細をオンにすると、関連するすべての接続のプロパティに値が自動的に入力されます。

[Use an existing connection] (既存の接続を使用)

このチェックボックスをオンにして、[Component List] (コンポーネントリスト)で、定義済みの接続詳細を再利用するHDFS接続コンポーネントをクリックします。

ジョブに親ジョブと子ジョブが含まれている場合、[Component List] (コンポーネントリスト)には同じジョブレベルの接続コンポーネントのみが表示されます。

[Hadoop version] (Hadoopのバージョン)

使用しているディストリビューションのHadoopバージョンを選択します。

[Scheme] (スキーム) [Scheme] (スキーム)ドロップダウンリストから、使用するファイルシステムのURIスキームを選択します。このスキームは
  • HDFS
  • WebHDFSである場合があります。WebHDFS with SSLはまだサポートされていません。
  • ADLS サポート対象はAzure Data Lake Storage Gen1のみです。

このリストにあるスキームは、使用しているディストリビューションによって異なります。また、特定のディストリビューションでこのリストに表示されるスキームのみが、Talendによって正式にサポートされています。

スキームをオンにすると、WebHDFS用のwebhdfs://localhost:50070/などの対応する構文が、クラスターのNameNodeロケーションのフィールドに表示されます。

ADLSを選択した場合、定義の必要な接続パラメーターは以下のとおりです。
  • [Client ID] (クライアントID)フィールドと[Client key] (クライアントキー)フィールドに、開発中である現行のジョブがAzure Data Lake Storageへのアクセスに使うアプリケーションを登録する際に生成された認証IDと認証キーをそれぞれ入力します。

    使用するアプリケーションにAzure Data Lakeへのアクセス権があることを確認します。Azureでこのアプリケーションの[Required permissions] (必要な権限)ビューをチェックしてください。詳細は、AzureのドキュメンテーションであるAssign the Azure AD application to the Azure Data Lake Storage account file or folderをご覧ください。

  • [Token endpoint] (トークンエンドポイント)フィールドで、Azureポータルの[App registrations] (アプリの登録)ページの[Endpoints] (エンドポイント)リストから取得できるOAuth 2.0トークンエンドポイントをコピーして貼り付けます。

デモンストレーション動画については、Configure and use Azure in a Jobをご覧ください。

[NameNode URI] (ネームノードURI)

Hadoopシステムのマスターノード、Hadoop NameNodeのURIを入力します。たとえば、NameNodeとしてmasternodeという名前のマシンを選択した場合、その場所はhdfs://masternode:portnumberになります。 WebHDFSを使用している場合、ロケーションはwebhdfs://masternode:portnumberとなります。WebHDFS with SSLはまだサポートされていません。

[Use Kerberos authentication] (Kerberos認証を使用)

Kerberosセキュリティを実行しているHadoopクラスターにアクセスする場合は、このチェックボックスをオンにし、表示されるフィールドにネームノードとしてKerberosのプリンシパル名を入力します。これにより、ユーザー名を使って、Kerberosに保存された認証情報に対して認証を実行できます。

接続しているHadoopのディストリビューションによってはこのチェックボックスが表示されないこともあります。

MapRチケットを使用した認証 MapRチケットを使用して認証するには、このチェックボックスをオンにして、次の情報を入力します。
  • ユーザー名: ユーザー名を入力します。
  • グループ: グループの名前を入力します。
  • パスワード: パスワードを入力してMapRチケットを認証します。
  • クラスター名: 使用したいクラスターの名前を入力します。
  • チケットの有効期間: チケットの有効期間(秒単位)を入力します。例: 86400L(Lは長整数に相当)
[Use a keytab to authenticate] (Keytabを認証に使用)

[Use a keytab to authenticate] (Keytabを認証に使用)チェックボックスをオンにして、所定のkeytabファイルを使ってKerberos対応のシステムにログインします。keytabファイルには、Kerberosのプリンシパルと暗号化されたキーのペアが含まれています。使用するプリンシパルを[Principal] (プリンシパル)フィールドに入力し、keytabファイルへのアクセスパスを[Keytab] フィールドに入力します。このキータブファイルは、ジョブが実際に実行されているマシン(Talend JobServerなど)に保存する必要があります。

keytabが有効なジョブは、プリンシパルに任命されたユーザーでなくても実行できますが、使用するkeytabファイルの読み取り権限が必要です。たとえばuser1というユーザー名でジョブを実行し、使用するプリンシパルがguestの場合、user1に使用するキータブファイルの読み取り権限があることをご確認ください。

[User name] (ユーザー名)

[User name] (ユーザー名)フィールドは、認証にKeroberosを使っていない場合に利用できます。[User name] (ユーザー名)フィールドに、ディストリビューションにログインするためのユーザー名を入力します。このフィールドを空白のままにすると、Talend Studioをホストするマシンのユーザー名が使用されます。

Group (グループ)

HDFSインスタンスが起動された認証ユーザーを含めたメンバーシップを入力します。このフィールドは、使用しているHadoopのディストリビューションによっては、表示されないことがあります。

HDFS Directory (HDFSディレクトリー)

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

FileListタイプ

繰り返し処理を行わせる入力のタイプをリストから選択します。

  • Files (ファイル): 一連のファイルの場合。
  • Directories (ディレクトリー): 一連のディレクトリーの場合。
  • Both (両方) 一連のファイルとディレクトリーの場合
Include subdirectories (サブディレクトリーを含める) 選択した入力ソースタイプにサブディレクトリーが含まれる場合、このチェックボックスをオンにします。
[Case Sensitive] (大文字と小文字を区別) リストから大文字/小文字モードを設定して、ファイル名に対して大文字と小文字を区別するフィルターを作成するかどうかを決めます。
Use Glob Expressions as Filemask (ファイルマスクとしてグロブ表現を使用する) このチェックボックスは、デフォルトで選択されています。グローバル表現(グロブ表現)を使って結果をフィルター処理します。
ファイル [+]ボタンをクリックして、必要な数のフィルター行を追加します。

Filemask (ファイルマスク): 追加したフィルター行に、特殊文字または正規表現を使ってファイル名またはファイルマスクを入力します。

[Order by] (並べ替え順) 最初にフォルダーが並び、次にファイルが並びます。フォルダーとファイルのソート順を、以下を基準に優先付けることができます。
  • By default (デフォルトの順序): アルファベット順、最初にフォルダー、次にファイル。
  • By file name (ファイル名順7): アルファベット順または逆のアルファベット順。
  • By file size (ファイルサイズ順): 最小から最大、または最大から最小。
  • By modified date (変更日順): 最終変更日から初回変更日、または初回変更日から最終変更日
情報メモ注:

[By file name] (ファイル名順)のソートで同一のファイル名がある場合は、[By modified date] (変更日順)が優先します。[By file size] (ファイルサイズ順)のソートで同一のファイルサイズがある場合は、[By file name] (ファイル名順)が優先します。[By modified date] (変更日順)のソートで同一の日付がある場合は、[By file name] (ファイル名順)が優先します。

順序 以下のラジオボタンのいずれかをクリックして、ソート順を選択します。
  • ASC: 昇順。
  • DESC: 降順。

詳細設定

プロパティ 説明
Use Exclude Filemask (ファイルマスクの除外を使用する) このチェックボックスをオンにすると、[Exclude Filemask] (ファイルマスクを除外)フィールドを有効にして、ファイルタイムに基づくフィルター処理条件を除外できます。

[Exclude Filemask] (ファイルマスクを除外): [Basic settings] (基本設定)ビューの[Filemasks] (ファイルマスク)から除外するファイルタイプをこのフィールドに入力します。

情報メモ注:

このフィールドのファイルタイムは二重引用符で囲み、コンマで区切る必要があります。

[Hadoop properties] (Hadoopプロパティ)
Talend Studio では、Hadoopディストリビューションの処理を実行するエンジンに、デフォルト設定を使用しています。特定の場合にカスタム設定を使用する必要がある場合は、カスタマイズするプロパティをこのテーブルで設定します。設定後、カスタマイズしたプロパティによってこれらのデフォルトのプロパティが実行時に上書きされます。
  • [Repository] (リポジトリー)に一元的に保管されたメタデータを使用している場合、テーブルにはそのメタデータで定義されたプロパティが自動的に継承されます。[Property type] (プロパティタイプ)[Repository] (リポジトリー)から[Built-in] (組み込み)に変更しないと、テーブルは編集できなくなります。

Hadoopやその関連システム(HDFS、Hiveなど)で必要なプロパティの詳細は、使用しているHadoopディストリビューションのドキュメンテーションか、ApacheのHadoopドキュメンテーションをご覧になって、必要なバージョンのドキュメンテーションを選択してください。以下のリンクでは、一部のプロパティについて実例を紹介しています。
[tStatCatcher Statistics] (tStatCatcher統計) このチェックボックスをオンにすると、ジョブレベルやコンポーネントレベルでジョブ処理メタデータが収集されます。

グローバル変数

変数 説明
グローバル変数

CURRENT_FILE: 現在のファイル名。これはFlow変数で、文字列を返します。

CURRENT_FILEDIRECTORY: 現在のファイルディレクトリー。これはFlow変数で、文字列を返します。

CURRENT_FILEEXTENSION: 現在のファイルの拡張子。これはFlow変数で、文字列を返します。

CURRENT_FILEPATH: 現在のファイルパス。これはFlow変数で、文字列を返します。

NB_FILE: これまでに繰り返しが行われたファイルの数。これはFlow変数で、整数を返します。

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

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

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

変数の詳細は、コンテキストと変数を使用をご覧ください。

使用方法

使用方法のガイダンス 説明
使用ルール tHDFSListは、定義されたHDFSディレクトリー内にある、繰り返し処理を実行するファイルまたはフォルダーのリストを提供します。
[Dynamic settings] (ダイナミック設定)

[+]ボタンをクリックしてテーブルに行を追加し、[Code] (コード)フィールドにコンテキスト変数を入力して、ジョブ内で計画した複数の接続からHDFS接続をダイナミックに選択します。この機能は、異なるHDFSシステムまたは異なるディストリビューション内のファイルにアクセスする必要がある場合、特に、 Talend Studio を介さずにジョブをデプロイおよび実行する必要がある時など、ジョブの設定を変更できない環境で作業している場合に役立ちます。

[Dynamic settings] (ダイナミック設定)テーブルは、[Basic settings] (基本設定)ビューで[Use an existing connection] (既存の接続を使用)チェックボックスがオンになっている時のみ利用可能です。ダイナミックパラメーターを定義すると、[Basic settings] (基本設定)ビューの[Component List] (コンポーネントリスト)ボックスは利用できなくなります。

ダイナミックパラメーターの定義法を示すユースケースについては、コンテキストベースのダイナミック接続によってデータベースからデータを読み取りと、ダイナミックにロードされた接続パラメーターを使って異なるMySQLデータベースからデータを読み取りをご覧ください。ダイナミック設定とコンテキスト変数の詳細は、ダイナミックスキーマコンテキストグループを作成し、その中でコンテキスト変数を定義をご覧ください。

[Connections] (接続)

外部リンク(このコンポーネントから別のコンポーネントへのリンク):

[Row] (行): 繰り返します。

[Trigger] (トリガー): サブジョブがOkの場合、サブジョブがエラーの場合、コンポーネントがOkの場合、ifを実行、コンポーネントがエラーの場合

受信リンク (あるコンポーネントからこのコンポーネントへのリンク):

[Row] (行): 繰り返します。

[Trigger] (トリガー): [Run if] (条件付き実行)、[On Subjob Ok] (サブジョブがOKの場合)、[On Subjob Error] (サブジョブがエラーの場合)、[On Component Ok] (コンポーネントがOKの場合)、[On Component Error] (コンポーネントがエラーの場合)、[Synchronize] (同期)、[Parallelize] (並列)

接続の詳細は、ジョブにおける接続の使い方をご覧ください。

前提条件

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

  • MapRクライアントは必ずTalend Studioのあるマシンにインストールして、そのマシンのPATH変数にMapRクライアントライブラリーを追加します。MapRのドキュメンテーションによると、各OSバージョンに対応するMapRクライアントのライブラリーは、MAPR_INSTALL\ hadoop\hadoop-VERSION\lib\nativeにあります。たとえば、Windows版のライブラリーは、\lib\native\MapRClient.dllにあるMapRクライアントのjarファイルにあります。

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

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

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

制限事項

JRE 1.6+が必要です。

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

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