tELTHiveMapの標準プロパティ
これらのプロパティは、標準ジョブのフレームワークで実行されているtELTHiveMapを設定するために使われます。
標準のtELTHiveMapコンポーネントは、ELTファミリーに属しています。
このフレームワークのコンポーネントは、すべてのビッグデータ対応のTalend製品およびTalend Data Fabricで使用できます。
基本設定
-
このコンポーネントをGoogle Dataprocと併用する場合:
[Project ID] (プロジェクトID)
Google Cloud PlatformプロジェクトのIDを入力します。
プロジェクトIDがわからない場合は、Google Cloud Platformサービスの[Manage Resources]ページでご確認ください。
[Cluster ID] (クラスターID)
使用するDataprocクラスターのIDを入力します。
[Region] (リージョン) 使用するGoogle Cloudリージョンをこのドロップダウンリストから、選択します。
[Google Storage staging bucket] (Googleストレージステージングバケット) Talendジョブでは、依存jarファイルが実行されることを想定しているため、ジョブが実行時にこれらのjarファイルにアクセスできるよう、これらのファイルの転送先にするGoogle Storageディレクトリーを指定します。
入力するディレクトリーの末尾はスラッシュ(/)にする必要があります。ディレクトリーがない場合は即座に作成されますが、使用するバケットはあらかじめ作成しておく必要があります。
[Database] (データベース)
このフィールドにデータベースの名前を入力します。
[Provide Google Credentials in file] (Googleクレデンシャルをファイルで指定)
Google Cloud SDKがインストールされており、Google Cloud Platformへのアクセスでユーザーアカウント認証情報の使用が許可されている特定のマシンからジョブを起動する場合は、このチェックボックスをオフにします。この状況では多くの場合、このマシンはお使いのローカルマシンです。
リモートマシン(Talend JobServerなど)からジョブを起動する場合は、このチェックボックスを選択し、[Path to Google Credentials file] (Googleクレデンシャルファイルへのパス)フィールドが表示されたら、このJSONファイルを保存するTalend JobServerrマシン内のディレクトリーを入力します。また、[....]ボタンをクリックし、ポップアップダイアログボックスでJSONファイルを参照することもできます。
Googleクレデンシャルファイルの詳細は、Google Cloud Platformの管理者に問い合わせるか、Google Cloud Platform Auth Guideをご覧ください。
-
Microsoft HD Insightディストリビューションでこのコンポーネントを使用する場合:
Livyの設定
使用するMicrosoft HD Insightクラスターのアドレスと認証情報を入力します。たとえば、アドレスはhttps://your_hdinsight_cluster_name.azurehdinsight.netとなり、Azureアカウントの認証情報は次のようになります: yourname。Talend Studioは、このサービスを使用してジョブを HD Insightクラスターに送信します。
[Job result folder] (ジョブ結果保存フォルダー)フィールドに、使用するAzure Storageでのジョブの実行結果を保存するロケーションを入力します。
ジョブステータスポーリングの設定
[Poll interval when retrieving Job status (in ms)] (ジョブステータスを取得する時のポーリング間隔(ミリ秒))フィールドで、Talend StudioがジョブのステータスをSparkに要求する時間間隔(ミリ秒)を入力します。たとえば、このステータスは[Pending] (保留中)または[Running] (実行中)になります。
[Maximum number of consecutive statuses missing] (見つからないステータスの最大連続回数)フィールドには、ステータスのレスポンスがない場合にTalend Studioがステータス取得のために再試行する最大回数を入力します。
[HDInsight configuration] (HDInsightの設定)
- [Username] (ユーザー名)は、クラスターの作成時に定義されたものです。これは、クラスターの[SSH + Cluster] (SSH + クラスター)ログインブレードで確認できます。
- [Password] (パスワード)は、このクラスターの認証でHDInsightクラスターを作成する時に定義します。
[Windows Azure Storage configuration] (Windows Azure Storageの設定)
使用するAzure StorageアカウントかADLS Gen2アカウントのアドレスと認証情報を入力します。この設定では、ビジネスデータを読み書きする場所は定義せず、ジョブをデプロイする場所のみ定義します。
[Container] (コンテナー)フィールドに、使用するコンテナーの名前を入力します。利用可能なコンテナーは、使用するAzure StorageアカウントのBlobブレードで確認できます。
[Deployment Blob] (デプロイメントBlob)フィールドに、このAzure Storageアカウントで現在のジョブとその依存ライブラリーを保存する場所を入力します。
[Hostname] (ホスト名)フィールドに、https://部分を含まないAzure StorageアカウントのプライマリーBlobサービスエンドポイントを入力します。このエンドポイントは、このストレージアカウントの[Properties] (プロパティ)ブレードにあります。
[Username] (ユーザー名)フィールドに、使用するAzure Storageアカウントの名前を入力します。
[Password] (パスワード)フィールドに、使用するAzure Storageアカウントのアクセスキーを入力します。このキーは、このストレージアカウントの[Access keys] (アクセスキー)ブレードにあります。
[Database] (データベース)
このフィールドにデータベースの名前を入力します。
-
その他のディストリビューションを使用する場合:
[Connection mode] (接続モード)
リストから接続モードを選択します。オプションは、使用しているディストリビューションによって異なります。
[Hive version] (Hiveのバージョン)
使用しているHiveのバージョンを選択します。
ホスト
データベースサーバーのIPアドレス。
[Port] (ポート)
データベースサーバーのリスニングポート番号。
[Database] (データベース)
このフィールドにデータベースの名前を入力します。
Username (ユーザー名)とPassword (パスワード)
データベースユーザー認証データ。
パスワードを入力するためには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して[OK]をクリックし、設定を保存します。
[Use Kerberos authentication] (Kerberos認証を使用)
Kerberosセキュリティを実行しているHiveメタストアにアクセスする場合は、このチェックボックスを選択し、表示されたフィールドに関連するパラメーターを入力します。
次のパラメーターの値は、使用するHiveシステムのhive-site.xmlファイル内にあります。-
[Hive principal] (Hiveプリンシパル)はhive.metastore.kerberos.principalの値を使用します。これは、Hiveメタストアのサービスプリンシパルです。
-
[HiveServer2 local user principal] (HiveServer2ローカルユーザープリンシパル)は、hive.server2.authentication.kerberos.principalの値を使用します。
-
[HiveServer2 local user key tab] (HiveServer2ローカルユーザーキータブ)は、hive.server2.authentication.kerberos.keytabの値を使用します。
-
[Metastore URL] (メタストアURL)は、javax.jdo.option.ConnectionURLの値を使用します。これは、HiveメタストアへのJDBC接続文字列です。
-
[Driver class] (ドライバークラス)は、javax.jdo.option.ConnectionDriverNameの値を使用します。これは、JDBC接続のドライバーの名前です。
-
[Username] (ユーザー名)は、javax.jdo.option.ConnectionUserNameの値を使用します。ユーザー名とパスワードのパラメーターは、Hiveメタストアへの接続用のユーザー認証情報になります。
-
[Password] (パスワード)は、javax.jdo.option.ConnectionPasswordの値を使用します。
接続しているHadoopのディストリビューションによってはこのチェックボックスが表示されないこともあります。
[Use a key tab to authenticate] (キータブを認証に使用) [Use a keytab to authenticate] (Keytabを認証に使用)チェックボックスをオンにして、所定のkeytabファイルを使ってKerberos対応のシステムにログインします。keytabファイルには、Kerberosのプリンシパルと暗号化されたキーのペアが含まれています。使用するプリンシパルを[Principal] (プリンシパル)フィールドに入力し、keytabファイルへのアクセスパスを[Keytab] フィールドに入力します。このキータブファイルは、ジョブが実際に実行されているマシン(Talend JobServerなど)に保存する必要があります。
keytabが有効なジョブは、プリンシパルに任命されたユーザーでなくても実行できますが、使用するkeytabファイルの読み取り権限が必要です。たとえばuser1というユーザー名でジョブを実行し、使用するプリンシパルがguestの場合、user1に使用するキータブファイルの読み取り権限があることをご確認ください。
[Use SSL connection] (SSL暗号化を使用)
SSLまたはTLS暗号化接続を有効にする場合は、このチェックボックスを選択します。
次に、表示されたフィールドに認証情報を入力します。-
[Trust store path] (トラストストアのパス)フィールドにパスを入力するか、使用するTrustStoreファイルに移動します。デフォルトでは、サポートされるTrustStore型は、JKSおよびPKCS 12です。
-
パスワードを入力するためには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して[OK]をクリックし、設定を保存します。
この機能は、以下のディストリビューションの[Standalone] (スタンドアロン)モードのHiveServer2でのみ利用できます。-
Hortonworksデータプラットフォーム2.0 +
-
Cloudera CDH4 +
-
Pivotal HD 2.0 +
-
Amazon EMR 4.0.0 +
[Set Resource Manager] (リソースマネージャーの設定)
このチェックボックスを選択して、表示されるフィールドにディストリビューションのResourceManagerのロケーションを入力します。たとえば、tal-qa114.talend.lan: 8050のようにします。
その後、使用するHadoopクラスターの構成に応じて以下のパラメーターを引き続き設定できます (パラメーターのチェックボックスをオフのままにしておくと、実行時に、使用するHadoopクラスター内のこのパラメーターに関する設定は無視されます):-
[Set resourcemanager scheduler address] (リソースマネージャースケジューラーアドレスの設定)チェックボックスをオンにして、表示されたフィールドにスケジューラーアドレスを入力します。
-
[Set jobhistory address] (ジョブ履歴アドレスの設定)チェックボックスをオンにして、使用するHadoopクラスターのJobHistoryサーバーの場所を入力します。これにより、現在のジョブのメトリックス情報がそのJobHistoryサーバーに保存されます。
-
[Set staging directory] (ステージングディレクトリーの設定)チェックボックスをオンにして、実行プログラムで作成される一時ファイル用のHadoopクラスターで定義されたこのディレクトリーを入力します。一般的には、このディレクトリーはディストリビューションのyarn-site.xmlやmapred-site.xmlなどの設定ファイル内にあるyarn.app.mapreduce.am.staging-dirプロパティの下にあります。
-
[Advanced settings] (詳細設定)ビューの[Set memory] (メモリの設定)チェックボックスをオンにして、適切なメモリ容量をYARNのMapとReduceの計算およびApplicationMasterに割り当てます。
-
[Set Hadoop user] (Hadoopユーザーの設定)チェックボックスをオンにして、ジョブを実行するユーザー名を入力します。Hadoop内のファイルまたはディレクトリーには読み取りまたは書き込みの適切な権限を持つ特定のオーナーがあるため、このフィールドを使用して、処理するファイルまたはディレクトリーにアクセスする適切な権限を持つユーザー名の下でジョブを直接実行できます。
-
[Use datanode hostname] (データノードホスト名を使用)チェックボックスをオンにして、これらのホスト名によるデータノードへのアクセスをジョブに許可します。これは、実際にはdfs.client.use.datanode.hostnameプロパティをtrueに設定しています。S3Nファイルシステムに接続する場合、このチェックボックスを選択する必要があります。
Hadoop Map/Reduceフレームワークの詳細は、Apache Hadoopに関するドキュメンテーションでMap/Reduceのチュートリアルをご覧ください。
[Set NameNode URI] (ネームノードURIの設定)
このチェックボックスを選択して、表示されるフィールドに、HadoopシステムのマスターノードであるHadoop NameNodeのURIを入力します。たとえば、NameNodeとしてmasternodeという名前のマシンを選択した場合、その場所はhdfs://masternode:portnumberになります。 WebHDFSを使用している場合、ロケーションはwebhdfs://masternode:portnumberとなります。WebHDFS with SSLはまだサポートされていません。
Hadoop Map/Reduceフレームワークの詳細は、Apache Hadoopに関するドキュメンテーションでMap/Reduceのチュートリアルをご覧ください。
Sparkカタログ
使用するSpark実装値を選択します。- In-memory: 外部メタストアではないHiveメタストアにHive Thriftメタストアを設定する場合は、この値を選択します。
- Hive: 使用するクラスターの外に存在する外部HiveメタストアにHive Thriftメタストアを設定する場合は、この値を選択します。
-
[Property type] (プロパティタイプ) |
[Built-in] (組み込み)と[Repository] (リポジトリー)のいずれかです。 [Built-In] (組み込み): 一元的に保存されるプロパティデータはありません。 [Repository] (リポジトリー): プロパティが保存されているリポジトリーファイルを選択します。 |
[Use an existing connection] (既存の接続を使用) |
定義済みの接続の詳細を再利用する場合は、このチェックボックスを選択して、[Component List] (コンポーネントリスト)ドロップダウンリストから、目的の接続コンポーネントを選択します。 情報メモ注: ジョブに親ジョブと子ジョブが含まれている時は、親ジョブと子ジョブの間の既存の接続を共有したい場合(たとえば、親ジョブで作成した接続を子ジョブと共有するなど)には、次のように実行します。
ジョブレベル全体でデータベース接続を共有する方法の例は、データベース接続を共有をご覧ください。 |
ELT Hiveマップエディター |
ELT Mapエディターでは、出力スキーマを定義し、実行するHive SQLステートメントをグラフィカルに構築できます。スキーマのカラム名は、データベースのカラム名とは異なる場合があります。 左上にあるをクリックします。表示された[Property Settings] (プロパティ設定)ダイアログボックスで[Add quotes in columns when generating query] (クエリー生成時にカラムに引用符を追加)チェックボックスを選択すれば、生成されたSQLクエリーにあるカラム名に引用符を追加できます。Talendが提供する8.0 R2022-11以降のTalend Studioマンスリーアップデートをインストールしていない場合、このチェックボックスは区切り付き識別子として表示されます。 マップエディターの[Expression] (式)カラムでコンテキスト変数を使用して入力スキーマと出力スキーマをマッピングする場合は、'context.v_erpName'のように、これらのコンテキスト変数を一重引用符で囲みます。 |
[Style link] (スタイルリンク) |
リンクの表示方法を選択します。 Auto (自動): 入力スキーマと出力スキーマおよびWebサービスパラメーター間のリンクはデフォルトで曲線の形になります。 Bezier curve (ベジエ曲線): スキーマとWebサービスパラメーター間のリンクは曲線の形になります。 Line (直線): スキーマとWebサービスパラメーター間のリンクは直性の形になります。 このオプションによってパフォーマンスがわずかに最適化されます。 |
ディストリビューション |
ドロップダウンリストから、使用するクラスターを選択します。リストのオプションは使用するコンポーネントによって異なります。これらのオプションの中でも、以下のオプションを使用するには特定の設定が必要です。
情報メモ注: Talend Studio 8.0 R2024-04以降、[Distribution] (ディストリビューション)パラメーターは削除されています。
|
[Hive version] (Hiveのバージョン) |
使用しているHadoopのディストリビューションのバージョンを選択します。使用可能なオプションは、使用しているコンポーネントによって異なります。 情報メモ注: Talend Studio 8.0 R2024-04以降、[Hive version] (Hiveバージョン)パラメーターは削除されています。
|
Hiver Server | 使用しているHiveのバージョンを選択します。 |
[Hadoop version] (Hadoopのバージョン) | 使用しているHadoopのバージョンを選択します。 |
[Execution engine] (実行エンジン) |
このチェックボックスを選択して、ドロップダウンリストから、ビッグデータの処理に使用する必要があるフレームワークを選択します。利用できるフレームワークはMapReduceとTezです。 このプロパティは次の接続モードで利用可能です:
Tezを使用する前に、使用しているHadoopクラスターがTezをサポートしていることを確認します。このコンポーネントの[Advanced settings] (詳細設定)ビューから関連するTezライブラリーへのアクセスを設定する必要があります。 TezでのHiveに関する詳細は、Apacheの関連ドキュメンテーションをご覧ください。そこには、Tezを使用してMapReduceを上回るパフォーマンスを得る方法を示すサンプルがいくつか示されています。 |
Hiveコンポーネントを有効にしてHBaseにアクセスする必要がある場合:
これらのパラメーターは、[Use an existing connection] (既存の接続を使用)チェックボックスがオフにしか使用できません。
[Store by HBase] (HBaseによるストア) |
HiveのコンポーネントによるHBaseテーブルへのアクセスを許可するために設定が必要なパラメーターを表示する場合は、このチェックボックスを選択します。
HiveとHBaseを伴うこのアクセスの詳細は、Hive/HBaseのインテグレーションについて説明しているApacheのHiveのドキュメンテーションをご覧ください。 |
[Zookeeper quorum] (Zookeeperクォーラム) |
Talend Studioとデータベース間のトランザクションを調整するZooKeeperサービスの名前またはURLを入力します。ZooKeeperを設定する時に、zookeeper.znode.parentプロパティを明示的に設定して、データベースで作成および使用されているZnodeがすべて含まれているルートZnodeへのパスを定義し、[Set Zookeeper znode parent] (親Zookeeper znodeを設定)チェックボックスをオンにしてこのプロパティを定義しなければならない場合があります。 |
[Zookeeper client port] (Zookeeperクライアントポート) |
使用しているZooKeeperサービスのクライアントリスニングポートの数を指定します。 |
[Define the jars to register for HBase] (HBase用に登録するjarを定義します) |
このチェックボックスを選択して、[Register jar for HBase] (HBase用にjarを登録)テーブルを表示します。このテーブルで、たとえば、デフォルトでHiveのインストール時に登録されるHive Storage Handlerなど、HBaseが必要とするjarファイルで欠けているものがあれば登録できます。 |
[Register jar for HBase] (HBase用にjarを登録) |
[+]ボタンをクリックしてこのテーブルに行を追加し、[Jar name] (JAR名)カラムで、登録するJARファイルを選択し、[Jar path] (JARパス)カラムで、そのJARファイルをポイントするパスを入力します。 |
詳細設定
[Tez lib] (Tezライブラリー) |
Tezライブラリーへのアクセス方法を選択します。
|
[Temporary path] (一時パス) |
クエリーselect * from your_table_nameを実行する時にJobtrackerとNameNodeを設定しない場合は、この一時パスを設定する必要があります。たとえば、Windowsでは/C:/select_allになります。 |
[Hadoop properties] (Hadoopプロパティ) |
Talend Studio では、Hadoopディストリビューションの処理を実行するエンジンに、デフォルト設定を使用しています。特定の場合にカスタム設定を使用する必要がある場合は、カスタマイズするプロパティをこのテーブルで設定します。設定後、カスタマイズしたプロパティによってこれらのデフォルトのプロパティが実行時に上書きされます。
Hadoopやその関連システム(HDFS、Hiveなど)で必要なプロパティの詳細は、使用しているHadoopディストリビューションのドキュメンテーションか、ApacheのHadoopドキュメンテーションをご覧になって、必要なバージョンのドキュメンテーションを選択してください。以下のリンクでは、一部のプロパティについて実例を紹介しています。
|
[Hive properties] (Hiveプロパティ) |
Talend Studioでは、Hiveデータベースの処理を実行するエンジンに、デフォルト設定を使用しています。特定の場合にカスタム設定を使用する必要がある場合は、カスタマイズするプロパティをこのテーブルで設定します。設定後、カスタマイズしたプロパティによってこれらのデフォルトのプロパティが実行時に上書きされます。詳細は、Hive専用のプロパティをご覧ください。
|
[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に設定されています。 |
[Path separator in server] (サーバーのパス区切り) |
サーバーのパス区切りのデフォルト値はそのままにしておきます。区切りをコロン(:)以外のHadoopディストリビューションのホストマシンで使用されているPATH変数またはその他の単語に変更している場合は除きます。その場合、値はホストで使用しているものに変更する必要があります。 |
[tStatCatcher Statistics] (tStatCatcher統計) |
このチェックボックスをオンにすると、コンポーネントレベルでログデータを収集できます。 |
[Temporary path] (一時パス) |
クエリーselect * from your_table_nameを実行する時にJobtrackerとNameNodeを設定しない場合は、この一時パスを設定する必要があります。たとえば、Windowsでは/C:/select_allになります。 |
グローバル変数
グローバル変数 |
ERROR_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。 Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。 フィールドまたは式に変数を入力する場合は、Ctrl + スペースを押して変数リストにアクセスし、使用する変数を選択します。 変数の詳細は、コンテキストと変数を使用をご覧ください。 |
使用方法
使用ルール |
tELTHiveMapは、tELTHiveInputおよびtELTHiveOutputと一緒に使用してください。これらのコンポーネントと共に使用する出力リンクは、テーブル名の構文と正確に対応している必要があります。 Hiveデータベースへの接続に使用しているTalend StudioがWindowsマシンにインストールされている場合は、Talend Studioがインストールされているディスクのルートにtmpというフォルダーを手動で作成する必要があります。 情報メモ注:
ELTコンポーネントは、実際のデータフローを処理せず、スキーマ情報しか処理しません。 |
Dataprocとの併用 |
ELT Hiveのコンポーネントでは、使用するGoogle Cloud DataprocクラスターにTezをインストールする必要があります。
|
[Dynamic settings] (ダイナミック設定) |
[+]ボタンをクリックしてテーブルに行を追加し、[Code] (コード)フィールドにコンテキスト変数を入力して、ジョブ内で計画した複数の接続からデータベース接続をダイナミックに選択します。この機能は、データストラクチャーが同じでデータベースが異なるデータベーステーブルにアクセスする必要がある場合、特に、Talend Studioを介さずにジョブをデプロイおよび実行する必要がある時など、ジョブの設定を変更できない環境で作業している場合に役立ちます。 [Dynamic settings] (ダイナミック設定)テーブルは、[Basic settings] (基本設定)ビューで[Use an existing connection] (既存の接続を使用)チェックボックスがオンになっている場合のみ利用できます。ダイナミックパラメーターを定義すると、[Basic settings] (基本設定)ビューの[Component List] (コンポーネントリスト)ボックスは利用できなくなります。 ダイナミックパラメーターの定義法を示すユースケースについては、コンテキストベースのダイナミック接続によってデータベースからデータを読み取りと、ダイナミックにロードされた接続パラメーターを使って異なるMySQLデータベースからデータを読み取りをご覧ください。ダイナミック設定とコンテキスト変数の詳細は、ダイナミックスキーマとコンテキストグループを作成し、その中でコンテキスト変数を定義をご覧ください。 |
前提条件 |
Talend Studio との操作を確実に行うには、Hadoopディストリビューションを適切にインストールする必要があります。以下のリストに、MapR関連の情報などを示します。
Hadoopディストリビューションのインストール方法の詳細は、使用しているHadoopディストリビューションに対応するマニュアルをご覧ください。 |