tPigLoad標準プロパティ - 7.2

Pig

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

このプロパティは[Standard] (標準)ジョブフレームワークで実行するtPigLoadの設定で使用されます。

Standard tPigLoadコンポーネントはビッグデータファミリーおよび変換処理ファミリーのコンポーネントです。

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

基本設定

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

[Built-In] (組み込み)または[Repository] (リポジトリー)のいずれか。

 

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

 

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

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

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

[Hadoop Cluster] (Hadoopクラスター)ノードの詳細は、『Getting Started Guide』を参照してください。

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

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

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

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

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

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

 

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

 

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

Local

このラジオボタンをクリックして、[Local] (ローカル)モードでPigスクリプトを実行します。このモードでは、ファイルはすべてローカルホストとファイルシステムからインストールおよび実行されます。

[Execution engine] (実行エンジン)

Pigジョブの実行に使用する必要があるフレームワークを選択します。

このTezモードは、以下のディストリビューションのいずれかを使用している場合にのみ使用できます。
  • Hortonworks: V2.2 +.

  • カスタムこのオプションにより、TezをサポートしつつもTalendで公式にサポートされていないディストリビューションに接続できます。

Tezを使用する前に、使用しているHadoopクラスターがTezをサポートしていることを確認します。このコンポーネントの[Advanced settings] (詳細設定)ビューから関連するTezライブラリーへのアクセスを設定する必要があります。

Pig on Tezの詳細は、Apacheの関連ドキュメントをhttps://cwiki.apache.org/confluence/display/PIG/Pig+on+Tezで参照してください。

[Distribution] (ディストリビューション)[Version] (バージョン)

使用するクラスターはドロップダウンリストから選択します。リストのオプションは使用するコンポーネントによって異なります。これらのオプションの中でも、以下のオプションを使用するには特定の設定が必要です。
  • この[Distribution] (ディストリビューション)ドロップダウンリストに[Microsoft HD Insight] (Microsoft HD Insight)オプションが表示されている場合は、Microsoft HD Insightクラスターを使用できます。この場合、表示されているエリアでクラスターのHD Insightcluster、Windows Azure Storageサービスへの接続を設定する必要があります。

  • [Amazon EMR]を選択する場合は、接続の設定方法に関する以下の記事を参照してください。Amazon EMRクラスターの詳しい設定方法については、Talend Help Center (https://help.talend.com)を参照してください。

  • [Custom] (カスタム)オプションを使用すると、リストにあるディストリビューションのものとは異なるクラスター、つまり、Talendが正式にサポートしていないクラスターに接続できます。

  1. [Import from existing version] (既存のバージョンからインポート)を選択すると、正式にサポートされているディストリビューションをベースとしてインポートしてから、ベースディストリビューションで提供されていない他の必要なjarファイルを追加できます。

  2. [Import from zip] (zipからインポート)を選択すると、使用するカスタムディストリビューションの設定zipファイルをインポートできます。zipファイルには、Hadoopの各種エレメントのライブラリーおよびこれらのライブラリーのインデックスファイルが含まれている必要があります。

    Talend Exchangeでは、 Talend コミュニティのメンバーがすぐに使える設定用ZIPファイルを共有しています。ファイルはこの[Hadoop configuration] (Hadoop設定)リストからダウンロードし、接続に直接使用できます。ただし、様々なHadoop関連のプロジェクトが継続的に進展しているため、このリストから対応するディストリビューションの設定Zipが見つからないことがあります。その場合は、[Import from existing version] (既存のバージョンからインポート)オプションを使って、既存のディストリビューションをベースとして取得し、ディストリビューションに必要なjarを追加することをお勧めします。

    カスタムバージョンは Talend によって正式にサポートされていない点に留意してください。Talendとそのコミュニティは、Studioからカスタムバージョンに接続する機会を提供していますが、利用可能なHadoopのディストリビューションとバージョンが多岐にわたるため、お使いになるどのバージョンでも設定が容易であるとは保証できかねます。そのような接続のセットアップは、Hadoopについてどんな問題でもご自身で対処できる十分な経験をお持ちの場合のみ行ってください。

    注:

    カスタムディストリビューションとこのコンポーネント間で作成する接続に関わるjarファイルがインポートされるように、このダイアログボックスの有効なチェックボックスをオフにしないでください。

    カスタムディストリビューションに接続して、その接続を共有する方法を段階的に説明する例については、Hortonworksを参照してください。

クラスターへの接続に関連する他のパラメーターは以下のようになれます。

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

    Kerberosセキュリティを実行しているHadoopクラスターにアクセスする場合は、このチェックボックスをオンにし、表示されるフィールドにネームノードとしてKerberosのプリンシパル名を入力します。これにより、ユーザー名を使って、Kerberosに保存された認証情報に対して認証を実行できます。
    • このクラスターが5.0.0バージョン以上のMapRクラスターである場合、セキュリティ対応MapRへの接続に記載の説明に従って、MapRチケット認証設定を追加または代替として設定できます。

      この設定により、ジョブで定義されたユーザー名用の新しいMapRセキュリティチケットが実行ごとに生成されます。同じユーザー名に対して発行された既存のチケットを再使用する必要がある場合は、[Force MapR ticket authentication] (MapRチケット認証を強制)チェックボックスと[Use Kerberos authentication] (Kerberos認証を使用)チェックボックスをオフにすると、そのチケットを即座に自動的に見つけることができます。

    また、このコンポーネントはMap/Reduceの計算を実行するため、対応するフィールドのディストリビューションに応じてジョブ履歴サーバーやリソースマネージャーまたはジョブトラッカーなど関連するサービスを認証する必要があります。これらのプリンシパルはディストリビューションの設定ファイルの中にあります。たとえばCDH4ディストリビューションでは、リソースマネージャーのプリンシパルはyarn-site.xmlファイルで設定され、ジョブ履歴のプリンシパルはmapred-site.xmlファイルで設定されています。

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

    HBase関連のプリンシパルは、HBaseStorageファンクションにだけ必要です。

  • [Use a keytab to authenticate] (Keytabを認証に使用)

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

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

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

    使用するMap/Reduceバージョンに対応するNameNodeのロケーションを入力します。 WebHDFSを使用している場合、ロケーションはwebhdfs://masternode:portnumberとなります。WebHDFS with SSLはまだサポートされていません。

  • Resource Manager (リソースマネージャー):

    クラスターのResourceManagerサービスのロケーションを入力します。

    JobHistoryでは、ジョブ、ジョブ自体の名前とバージョン、その中で使用されている1番目のtPigLoadコンポーネントのラベルを含むプロジェクト名を連結して、ジョブの名前が自動作成されるため、Pigジョブの実行ステータスが簡単に見つかります。JobHistoryでのPigジョブの命名規則はProjectName_JobNameVersion_FirstComponentNameです。

    その後、使用するHadoopクラスターの構成に応じて以下のパラメーターを引き続き設定できます (パラメーターのチェックボックスをオフのままにしておくと、実行時に、使用するHadoopクラスター内のこのパラメーターに関する設定は無視されます):
    1. [Set resourcemanager scheduler address] (リソースマネージャースケジューラーアドレスの設定)チェックボックスをオンにして、表示されたフィールドにスケジューラーアドレスを入力します。

    2. [Set jobhistory address] (ジョブ履歴アドレスの設定)チェックボックスをオンにして、使用するHadoopクラスターのJobHistoryサーバーの場所を入力します。これにより、現在のジョブのメトリックス情報がそのJobHistoryサーバーに保存されます。

    3. [Set staging directory] (ステージングディレクトリーの設定)チェックボックスをオンにして、実行プログラムで作成される一時ファイル用のHadoopクラスターで定義されたこのディレクトリーを入力します。一般的には、このディレクトリーはディストリビューションのyarn-site.xmlmapred-site.xmlなどの設定ファイル内にあるyarn.app.mapreduce.am.staging-dirプロパティの下にあります。

    4. [Advanced settings] (詳細設定)ビューの[Set memory] (メモリの設定)チェックボックスをオンにして、適切なメモリ容量をYARNのMapReduceの計算およびApplicationMasterに割り当てます。

    5. [Set Hadoop user] (Hadoopユーザーの設定)チェックボックスをオンにして、ジョブを実行するユーザー名を入力します。Hadoop内のファイルまたはディレクトリーには読み取りまたは書き込みの適切な権限を持つ特定のオーナーがあるため、このフィールドを使用して、処理するファイルまたはディレクトリーにアクセスする適切な権限を持つユーザー名の下でジョブを直接実行できます。

    6. [Use datanode hostname] (データノードホスト名を使用)チェックボックスをオンにして、これらのホスト名によるデータノードへのアクセスをジョブに許可します。これは、実際にはdfs.client.use.datanode.hostnameプロパティをtrueに設定しています。S3Nファイルシステムに接続する場合、このチェックボックスをオンにする必要があります。

    これらのパラメーターの詳細は、ドキュメンテーションを参照するか、または、使用するHadoopクラスターの管理者にお問い合わせください。
  • User name (ユーザー名):

    ジョブを実行するユーザー名を入力します。Hadoop内のファイルまたはディレクトリーには読み取りまたは書き込みの適切な権限を持つ特定のオーナーがあるため、このフィールドを使用して、処理するファイルまたはディレクトリーにアクセスする適切な権限を持つユーザー名の下でジョブを直接実行できます。このフィールドは、使用しているディストリビューションに応じて使用できます。

  • Quboleに関連するパラメーター:
    1. [API Token] (APIトークン)フィールドの横にある[...]ボタンをクリックして、使用するQuboleユーザーアカウントに生成された認証トークンを入力します。このトークンの入手方法については、QuboleのドキュメンテーションでQuboleアカウントの管理を参照してください。

      このトークンで、Quboleへのアクセスに使用するユーザーアカウントを指定できます。ジョブは、Quboleでこのユーザーアカウントに付与された権限を自動的に使用します。

    2. [Cluster label] (クラスターラベル)チェックボックスをオンにして、使用するQuboleクラスターの名前を入力します。このチェックボックスをオフのままにしておくと、デフォルトのクラスターが使用されます。

      デフォルトのクラスターに関する詳細が必要な場合は、Quboleサービスの管理者にお問い合わせください。デフォルトQuboleクラスターの設定に関する情報を得るために、この記事をQuboleのドキュメンテーションでも読むことができます。

    3. [Change API endpoint] (APIエンドポイントの変更)チェックボックスをオンにして、使用するリージョンを選択します。このチェックボックスをオフのままにしておくと、デフォルトのリージョンが使用されます。

      QDS-on-AWSでサポートされているQuboleエンドポイントについては、さまざまなクラウドプロバイダーでサポートされているQuboleエンドポイントを参照してください。

    4. 使用するS3ファイルシステムへの接続を設定してジョブの依存項目を一時的に保存します。これは、Quboleクラスターがこれらの依存項目にアクセスできるようにするためです。

      • Access key (アクセスキー)とSecret key(シークレットキー): 使用するAmazon S3バケットへの接続に必要な認証情報を入力します。

        パスワードを入力するには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符の間に入力し、[OK] をクリックして設定を保存します。

      • [Bucket name] (バケット名): ジョブの依存項目を保存するために使用するバケットの名前を入力します。S3に既存のバケットを用意しておく必要があります。
      • [Temporary resource folder] (一時リソースフォルダー): ジョブの依存項目を保存するディレクトリーを入力します。たとえば、バケット内の/temp_resources フォルダーに依存項目を書き込むには、temp_resourcesと入力します。

        ランタイムにこのフォルダーが既に存在する場合、そのコンテンツは新しい依存項目によって上書きされます。そうでない場合、このフォルダーは自動的に作成されます。

      • [Region] (リージョン): リストからリージョン名を選択することで、AWSリージョンを指定します。AWSリージョンの詳細の詳細は、[Regions and Endpoints] (リージョンとエンドポイント)を参照してください。

WebHCatの設定

使用するMicrosoft HD Insightクラスターのアドレスと認証情報を入力します。たとえば、アドレスはyour_hdinsight_cluster_name.azurehdinsight.netとなり、Azureアカウントの認証情報は次のようになります: ychen。Studioはこのサービスを使ってジョブをHD Insightクラスターに送信します。

[Job result folder] (ジョブ結果保存フォルダー)フィールドに、使用するAzure Storageでのジョブの実行結果を保存するロケーションを入力します。

HDInsightの設定

  • [Username] (ユーザー名)は、クラスターの作成時に定義されたものです。これは、クラスターの[SSH + Cluster] (SSH + クラスター)ログインブレードで確認できます。
  • [Password] (パスワード)は、このクラスターの認証でHDInsightクラスターを作成する時に定義します。

Windows Azure Storageの設定

使用するAzure Storageアカウントのアドレスと認証情報を入力します。この設定では、ビジネスデータを読み書きする場所は定義せず、ジョブをデプロイする場所のみ定義します。したがって、この設定にはAzure Storageシステムを常に使用します。

[Container] (コンテナー)フィールドに、使用するコンテナーの名前を入力します。利用可能なコンテナーは、使用するAzure StorageアカウントのBlobブレードで確認できます。

[Deployment Blob] (デプロイメントBlob)フィールドに、このAzure Storageアカウントで現在のジョブとその依存ライブラリーを保存する場所を入力します。

[Inspect the classpath for configurations] (設定用のクラスパスを検査)

$HADOOP_CONF_DIR変数で設定したディレクトリー内の設定ファイルをコンポーネントがチェックして、このディレクトリー内のこれらのファイルからパラメーターを直接読み取ることができるようにするには、このチェックボックスをオンにします。この機能により、コンポーネントのHadoop設定を変更して、たとえばテスト環境から本番環境に切り替えるなど、環境の切り替えを容易に行うことができます。

この状況では、Hadoop接続またはKerberosセキュリティの設定に使用するフィールドまたはオプションは非表示になっています。

Kerberosパラメーターなど、特定のパラメーターを使おうとしていて、それらのパラメーターがHadoop設定ファイルに含まれていない場合は、talend-site.xmlという名前のファイルを作成し、$HADOOP_CONF_DIRを使用して定義したのと同じディレクトリーに置く必要があります。このtalend-site.xmlファイルは、次のようになります。
<!-- Put site-specific property overrides in this file. --> 
<configuration> 
    <property> 
        <name>talend.kerberos.authentication </name> 
        <value>kinit </value>
         <description> Set the Kerberos authentication method to use. Valid values are: kinit or keytab.  </description> 
    </property> 
    <property> 
        <name>talend.kerberos.keytab.principal </name>
        <value>user@BIGDATA.COM </value>
        <description> Set the keytab's principal name.  </description>
    </property> 
    <property>   
        <name>talend.kerberos.keytab.path </name> 
        <value>/kdc/user.keytab </value> 
        <description> Set the keytab's path.  </description> 
    </property> 
    <property> 
        <name>talend.encryption </name> 
        <value>none </value> 
        <description> Set the encryption method to use. Valid values are: none or ssl.  </description> 
    </property> 
    <property> 
        <name>talend.ssl.trustStore.path </name> 
        <value>ssl </value> 
        <description> Set SSL trust store path.  </description> 
    </property> 
    <property> 
        <name>talend.ssl.trustStore.password </name> 
        <value>ssl </value> 
        <description> Set SSL trust store password.  </description> 
    </property> 
</configuration>

これらの設定ファイルから読み取られたパラメーターは、Studioが使用しているデフォルトのパラメーターを オーバーライドします。これらの設定ファイルにパラメーターが存在しない場合は、デフォルトのパラメーターが使用されます。

[Load function] (関数のロード)

データがロードされるようLoad関数を選択します:
  • [PigStorage]: UTF-8形式でデータをロードします。

  • [BinStorage]: コンピューターによって読み取り可能な形式でデータをロードします。

  • [TextLoader]: 非構造データをUTF-8形式でロードします。

  • [HCatLoader]: Pigスクリプトを使用して、HCataLog管理対象テーブルからデータをロードします。

    この関数は、[Map/Reduce]モードに表示される[Distribution] (ディストリビューション)フィールドと[Version] (バージョン)フィールドから使用されるHadoopディストリビューションとしてHortonWorksを選択した時のみ、使用できます。HCatLoaderに関する詳細は、https://hive.apache.org/javadocs/r2.1.1/api/org/apache/hive/hcatalog/pig/HCatLoader.htmlをご覧ください。

  • [HBaseStorage]: HBaseからデータをロードします。次に、表示される[HBase configuration] (HBase設定)エリア内で、HBase設定を完了必要があります。

  • [SequenceFileStorage]: SequenceFile形式のデータをロードします。次に、表示される[Sequence Loader Configuration] (シーケンスローダーの設定)エリアでロードされるファイルの設定を確定する必要があります。この関数は、[Map/Reduce]モード用のみです。

  • [RCFilePigStorage]: RCFile形式のデータをロードします。この関数は、[Map/Reduce]モード用のみです。

  • [AvroStorage]: Avroファイルをロードします。AvroStorageの詳細は、Apacheのドキュメンテーションを https://cwiki.apache.org/confluence/display/PIG/AvroStorageでご覧ください。この関数は、[Map/Reduce]モード用のみです。

  • [ParquetLoader]: Parquetファイルをロードします。この関数は、[Map/Reduce]モード用のみです。

  • [Custom] (カスタム): ユーザー定義Load関数のどれかを使うデータをロードします。そうするには、[Advanced settings] (詳細設定)タブビューで、使用される関数を含むjarファイルを登録した後に、[Load function] (関数のロード)フィールドの横に表示されているフィールドでその関数を指定する必要があります。

    たとえば、piggybank.jarと呼ばれたJarファイルの登録後に、org.apache.pig.piggybank.storage.XMLLoader('attr') as (xml:chararray)と入力して、そのJarファイルに含まれるXMLLoaderというカスタム関数を使うことができます。このpiggybank.jarファイルに関する詳細は、https://cwiki.apache.org/confluence/display/PIG/PiggyBankをご覧ください。

使用するファイル形式が[PARQUET]である場合は、特定のPARQUET jarファイルを見つけてStudioにインストールするように指示するプロンプトが表示される可能性があります。
  • Hiveへの接続モードが[Embedded] (埋め込み)の場合、ジョブはローカルマシンで実行され、Studioにインストールされたこのjarを呼び出します。

  • Hiveへの接続モードが[Standalone] (スタンドアロン)の場合、ジョブはHiveをホストするサーバーで実行され、このjarファイルは接続先のクラスターのHDFSシステムに送信されます。したがって、[Basic settings] (基本設定)ビューの対応するフィールドでNameNode URIが正しく定義されていることをご確認ください。

このjarファイルはApacheのサイトからダウンロードできます。

[Input file URI] (入力ファイルURI)

このフィールドに、入力ファイルへの完全ローカルパスを入力します。
注:

このフィールドは、[Load function] (関数のロード)リストから[HCatLoader]が選択済みまたはS3エンドポイントをお使いの時に使用できません。

[Use S3 endpoint] (S3エンドポイントを使用)

このチェックボックスを選択して、特定のAmazon S3バケットフォルダーからデータを読み取ります。

この[Use S3 endpoint] (S3エンドポイントを使用)チェックボックスをオンにしたら、表示されたフィールドに次のパラメーターを入力する必要があります。
  • [S3 bucket name and folder] (S3バケットの名前とフォルダー): データを読み取る必要があるバケットの名前とそのフォルダーを入力します。バケット名とフォルダー名はスラッシュ(/)を使って区切ってください。

  • Access key (アクセスキー)とSecret key(シークレットキー): 使用するAmazon S3バケットへの接続に必要な認証情報を入力します。

    パスワードを入力するには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符の間に入力し、[OK] をクリックして設定を保存します。

S3ファイルの形式はS3N (S3ネイティブファイルシステム)です。

[HCataLog Configuration] (HCataLog設定)

以下のフィールドに入力して、HDFS (Hadoop Distributed File System)上のHCataLog管理対象テーブルを設定します。

[Distribution] (ディストリビューション)[Version] (バージョン):

使用するクラスターはドロップダウンリストから選択します。リストのオプションは使用するコンポーネントによって異なります。これらのオプションの中でも、以下のオプションを使用するには特定の設定が必要です。
  • この[Distribution] (ディストリビューション)ドロップダウンリストに[Microsoft HD Insight] (Microsoft HD Insight)オプションが表示されている場合は、Microsoft HD Insightクラスターを使用できます。この場合、表示されているエリアでクラスターのHD Insightcluster、Windows Azure Storageサービスへの接続を設定する必要があります。これらのパラメーターの詳細な説明は、を参照してください。これらのパラメーターの詳細な説明は、Talendヘルプセンター(https://help.talend.com)で手動による接続の設定を検索してください。

  • [Amazon EMR]を選択する場合は、接続の設定方法に関する以下の記事を参照してください。Amazon EMRクラスターの詳しい設定方法については、Talend Help Center (https://help.talend.com)を参照してください。

  • [Custom] (カスタム)オプションを使用すると、リストにあるディストリビューションのものとは異なるクラスター、つまり、Talendが正式にサポートしていないクラスターに接続できます。

[HCat metastore] (HCatメタストア): HCatalogのメタストア(実際にはシステムカタログであるHiveのメタストア)の場所を入力します。HiveおよびHCatalogに関する詳細は、http://hive.apache.org/をご覧ください。

[Database] (データベース): テーブルが置かれるデータベース。

[Table] (テーブル): データが保管されるテーブル。

[Partition filter] (パーティションフィルター): このフィールドにパーティションキーを入力して、パーティションをフィルターごとにリスト表示します。

注:

[Load function] (関数のロード)リストから[HCatLoader]を選択する時のみ、[HCataLog Configuration area] (HCataLog設定エリア)が有効になります。HCataLog DDLの使用に関する詳細は、https://cwiki.apache.org/confluence/display/Hive/HCatalogをご覧ください。[Partition filter] (パーティションフィルター)の使用に関する詳細は、https://cwiki.apache.org/confluence/display/HCATALOG/Design+Document+-+Java+APIs+for+HCatalog+DDL+Commandsをご覧ください。

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

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

注:

[Load function] (関数のロード)リストから[PigStorage]を選択する時のみ、このフィールドが有効になります。

[Compression] (圧縮)

[Force to compress the output data] (出力データを強制的に圧縮)チェックボックスをオンにすると、Pigプロセスの最後にtPigStoreResultによってデータが出力される際にデータが圧縮されます。

Hadoopではファイルの保存に必要な領域を削減し、データ転送を高速化するための圧縮形式が異なります。Pigプログラムを使用してデータを作成し、圧縮する必要がある場合、デフォルトではデータを作成するフォルダーをポイントするパスのサフィックスとして圧縮形式を追加する必要があります(例、/user/ychen/out.bz2)。ただし、このチェックボックスをオンにした場合、/user/ychen/outなど、圧縮形式をパスに追加しなくても出力データの圧縮が行われます。

注: 出力パスはtPigStoreResult[Basic settings] (基本設定)ビューに設定されています。
[HBase Configuration] (HBase設定)

このエリアはHBaseStorage関数によって使用できます。設定するパラメーターは以下のとおりです。

[Zookeeper quorum] (Zookeeperクォーラム):

Studioとデータベース間のトランザクションを調整するZookeeperサービスの名前またはURLを入力します。Zookeeperを設定する時に、zookeeper.znode.parentプロパティを明示的に設定して、作成されてデータベースで使用されているすべてのznodeを含むルートznodeへのパスを定義しなければならない場合があります。次に、[Set Zookeeper znode parent] (親zookeeper znodeの設定)チェックボックスをオンにして、このプロパティを定義します。

[Zookeeper client port] (Zookeeperクライアントポート):

使用しているZookeeperサービスのクライアントリスニングポートの数を指定します。

[Table Name] (テーブル名)

データをロードする必要があるHBaseテーブルの名前を入力します。

[Load key] (キーをロード):

このチェックボックスを選択して、行キーを結果スキーマの1番目のカラムとしてロードします。この場合では、スキーマにこのカラムが作成済みである必要があります。

[Mapping] (マッピング):

このテーブルに入力して、処理するデータフロー用に定義されているスキーマカラムに使うテーブルのカラムをマップします。

[Sequence Loader configuration] (シーケンスローダーの設定)

このエリアは[SequenceFileLoader]関数のみによって使用できます。SequenceFileレコードがバイナリキー/値のペアで構成されるため、設定するパラメーターは以下のとおりです。

[Key column] (キーカラム):

キー/値レコードのキーカラムを選択します。

[Value column] (値カラム)

キー/値レコードの値カラムを選択します。

[Die on subJob error] (サブジョブエラー発生時に強制終了)

このチェックボックスをオンにすると、サブジョブエラーの行をスキップし、エラーの発生していない行の処理が完了されます。デフォルトでは選択されていません。

詳細設定

[Tez lib] (Tezライブラリー)

Tezライブラリーへのアクセス方法を選択します。
  • [Auto install] (自動インストール): ランタイムに、ジョブはStudioから提供されたTezライブラリーをアップロードし、[Install folder in HDFS] (HDFS内のインストールフォルダー)フィールドで指定したディレクトリー(たとえば/tmp/usr/tez)にデプロイします。

    プロパティテーブルにtez.lib.urisプロパティを設定した場合、このディレクトリーはランタイムでそのプロパティの値を上書きします。ただし、プロパティテーブルで設定したその他のプロパティは引き続き有効です。

  • [Use exist] (既存の使用): ジョブは、使用するHadoopクラスターにデプロイ済みのTezライブラリーにアクセスします。それらのライブラリーをポイントするパスを[Lib path (folder or file)] (ライブラリーパス(フォルダーまたはファイル))フィールドに入力する必要があります。

  • [Lib jar] (ライブラリーjar): [Tez lib] (Tezライブラリー)リストで[Auto install] (自動インストール)を選択し、使用しているディストリビューションが[Custom] (カスタム)である場合に、このテーブルが表示されます。アップロードするTezライブラリーをこのテーブルに追加する必要があります。

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

Hadoop、およびHDFSやHiveなどのその関連システムで必要なプロパティの詳細は、使用しているHadoopディストリビューションのドキュメントを参照するか、http://hadoop.apache.org/docsに掲載されているApacheのHadoopのドキュメントを参照し、必要なバージョンのドキュメントを選択してください。以下のリンクでは、一部のプロパティについて実例を紹介しています。

[Register jar] (jarを登録)

[+]ボタンをクリックしてテーブルに行を追加し、これらの行から、追加するjarファイルを参照します。たとえば、piggybank.jarというjarファイルを登録する場合は、[Select Module] (モジュールの選択)ウィザードに従って、[+]ボタンを1回クリックして行を1つ追加し、次にこの行をクリックして[...]参照ボタンを表示し、このボタンをクリックしてpiggybank.jarファイルを参照します。

[Define functions] (関数を定義)

このテーブルを使い、データのロード時実行されるUDF (ユーザー定義関数) (特に、Apache DataFu Pig関数のようにエイリアスを必要とする関数)を定義します。

ボタンをクリックし、必要な数だけの行を追加して、各行の関連するフィールドでエイリアスとUDFを指定します。

ジョブにtPigMapコンポーネントが含まれる場合は、tPigMapでこのコンポーネントのUDFを定義すると、このテーブルは自動的に入力されます。同様に、このテーブルでUDFを定義すると、tPigMapコンポーネントのマップエディターにある[Define functions] (関数の定義)テーブルが自動的に入力されます。

Pigフローのマッピング時にUDFを定義する方法の詳細は、Talend Open Studio for Big Data入門ガイドのBig Dataフローのマッピングに関するセクションをご覧ください。

Apache DataFu Pigの詳細は、http://datafu.incubator.apache.org/をご覧ください。

[Pig properties] (Pigプロパティ)

Talend Studioでは、操作を実行するPigエンジンに、デフォルト設定を使用しています。特定の場合にカスタム設定を使用する必要がある場合は、カスタマイズするプロパティをこのテーブルで設定します。設定後、カスタマイズしたプロパティによってこれらのデフォルトのプロパティがランタイム時に上書きされます。

たとえば、Pigで使用されるdefault_parallelキーを20に設定できます。

[HBaseStorage configuration] (HBaseStorage設定)

このテーブルにHBaseStorageローダーオプションをさらに追加および設定します。オプションは次のとおりです。

[gt]: キーの最小値。

[lt]: キーの最大値。

[gte]: キーの最小値(含まれる)。

[lte]: キーの最大値(含まれる)。

[limit]: リージョンごとに取得する最大行数。

[caching]: キャッシュする行数。

[caster]: HBaseからの値の読み取りに使用するコンバーター。たとえば、HBaseBinaryConverter。

[Define the jars to register for HBase] (HBase用に登録するjarを定義)

このチェックボックスはtHCatLoaderをお使いの時に表示され、Studioが必要なJarファイルを自動的に登録するため、消去されたままにしておけます。Jarフィルのどれかが見つからない場合は、このチェックボックスを選択し、[Register jar for HCatalog] (HCatalog用のJarを登録)テーブルを表示させて、その見つからないJarへの正しいパスを設定します。

[Path separator in server] (サーバーのパス区切り)

サーバーのパス区切り記号のデフォルト値はそのままにしておきます。区切り記号をコロン(:)以外のHadoopディストリビューションのホストマシンで使用されているPATH変数またはその他の単語に変更している場合は除きます。その場合、値はホストで使用しているものに変更する必要があります。

[Mapred job map memory mb] (MapredジョブMapメモリmb)および[Mapred job reduce memory mb] (MapredジョブReduceメモリmb)

[Set memory] (メモリのセット)チェックボックスをオンにしてHadoopシステムでの計算実行で適切なメモリ割り当てをセットし、マッピングを調整して計算を減らすことができます。

このような場合は、必要な値を[Mapred job map memory mb] (MapredジョブのMapメモリMB)フィールドと[Mapred job reduce memory mb] (MapredジョブのReduceメモリMB)フィールドにそれぞれ入力してください。デフォルトでは、いずれのフィールドも通常は計算の実行に適切な1000に設定されています。

設定するメモリパラメーターは[Map (in Mb)][Reduce (in Mb)][ApplicationMaster (in Mb)]です。これらのフィールドは、MapとReduceの計算、およびYARNのApplicationMasterに動的にメモリを割り当てることができます。

[tStatCatcher Statistics] (tStatCatcher統計)

このチェックボックスをオンにすると、ジョブレベルおよび各コンポーネントレベルでジョブ処理メタデータが収集されます。

グローバル変数

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

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

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

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

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

使用方法

[Usage rule] (使用ルール)

このコンポーネントは、Pigプロセスを開始するあために常に使用され、そのデータを出力するには最後にtPigStoreResultが必要です。

[Map/Reduce]モードで、Pigプロセス(サブジョブ)の1番目のtPigLoadコンポーネントのHadoop接続のみを設定する必要があります。このプロセスで使用される他のどのtPigLoadコンポーネントも1番目のtPigLoadコンポーネントによって作成された接続を自動的に再使用します。

前提条件

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ディストリビューションに対応するマニュアルを参照してください。

制限事項

Pigスクリプトの知識が必要です。HCatLoaderをLoad関数として選択すると、HCataLog DDL (Hiveデータ定義言語のサブセットであるHCataLogデータ定義言語)の知識が必要となります。HCataLog DDLに関する詳細は、https://cwiki.apache.org/confluence/display/Hive/HCatalogをご覧ください。