# Apache Spark BatchのtHiveWarehouseInputプロパティ

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

Spark BatchのtHiveWarehouseInputコンポーネントは、ストレージファミリーに属しています。

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

## 基本設定

| [Property Type] (プロパティタイプ) | 接続の詳細を設定する方法を選択します。<br><br><ul> <li> <p> <span>[Built-In] (組み込み)</span>: このコンポーネントの接続の詳細がローカルに設定されます。関連するすべての接続のプロパティ値を手動で指定する必要があります。</p> </li> <li> <p> <span>[Repository] (リポジトリー)</span>: <span><span>[Repository] (リポジトリー)</span> &gt; <span>[Metadata] (メタデータ)</span></span>で一元的に保存された接続の詳細が、このコンポーネントによって再使用されます。このチェックボックスの横にある <span>[...]</span> ボタンをクリックし、表示された <span>[Repository Content] (リポジトリーのコンテンツ)</span>ダイアログボックスで、再使用する接続の詳細を選択すると、関連するすべての接続のプロパティに値が自動的に入力されます。</p> </li> </ul> |
| --- | --- |
| [Hive Storage Configuration] (Hiveストレージ設定) | Hiveに接続できるようSparkに設定の詳細を使わせるtHiveWarehouseConfigurationコンポーネントを選択します。 |
| [HDFS Storage Configuration] (HDFSストレージ設定) | 特定のHDFSシステムに接続し、依存するjarファイルをこのHDFSシステムに転送するために、設定の詳細を取ってSparkで使用するtHDFSConfigurationコンポーネントを選択します。このフィールドは、オンプレミスのディストリビューションを使用している場合のみ該当します。 |
| [Schema] (スキーマ)と[Edit Schema] (スキーマを編集) | スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。<br><br>見えないところで行われる処理でフィールド名を強制的に小文字にする可能性もあるため、フィールドは必ず小文字で命名してください。<br><br>使用するスキーマのタイプを[Schema] (スキーマ)ドロップダウンリストから選択します。<br><br><ul> <li> <p> <span>[Built-in] (組み込み)</span>: そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。</p> </li> <li> <p> <span>[Repository] (リポジトリー)</span>: スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。</p> </li> </ul><br><br>スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。<br><br><ul> <li> <p> <span>[View schema] (スキーマを表示)</span>: スキーマのみを表示する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Change to built-in property] (組み込みのプロパティに変更)</span>: ローカルで変更を行うためにスキーマを<span>組み込み</span>に変更する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Update repository connection] (リポジトリー接続をアップデート)</span>: リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。変更を現在のジョブにのみ反映する場合は、変更後、<span>[No] (いいえ)</span>を選択し、<span>[Repository Content] (リポジトリーコンテンツ)</span>ウィンドウで再びこのスキーマのメタデータを選択します。</p> </li> </ul> |
| [Input source] (入力ソース) | tHiveWarehouseInputを使って読み取る入力データのタイプを選択します。<br><br><ul> <li> <span>[Hive Query] (Hiveクエリー)</span>: <span>[Database] (データベース)</span>クエリーフィールドと<span>[Hive]</span>クエリーフィールドが表示されます。接続先のHiveデータベースの関連情報、および使用するデータの選択に使いたいHiveクエリーステートメントを入力する必要があります。</li> <li> <p> <span>[ORC file] (ORCファイル)</span>: <span>[Input file name] (入力ファイル名)</span>フィールドが表示され、Hiveストレージ設定リストが無効になります。ORCファイルはHiveをホストしているHDFSシステムに保存する必要があるためです。使用するファイルが保存されるディレクトリーを入力する必要があります。</p> </li> </ul><br><br>Hiveのクエリー言語の詳細は、https://cwiki.apache.org/confluence/display/Hive/LanguageManual (英語のみ)をご覧ください。<br><br>情報メモ注: GzipまたはBzip2の形式で圧縮されたデータは、クエリーステートメントを使用して処理できます。詳細は、https://cwiki.apache.org/confluence/display/Hive/CompressedStorage (英語のみ)をご覧ください。<br><br>Hadoopではファイルの保存に必要な領域を削減し、データ転送を高速化するための圧縮形式が異なります。圧縮ファイルを読み取る場合、Studioでは入力フローにフィードする前に展開する必要があります。 |

## 詳細設定

| [Register Hive UDF jars] (Hive UDF jarを登録) | tHiveInputに使用させるHiveユーザー定義ファンクション(UDF) jarを追加します。使用する各UDFのファンクションエイリアスを[Temporary UDF functions] (一時UDFファンクション)テーブルで定義する必要があります。<br><br>このテーブルに1行を追加したら、クリックして[...]ボタンを表示し、次にこのボタンをクリックしてjarインポートウィザードを表示します。このウィザードを使用して、目的のUDF jarファイルをインポートします。<br><br>登録済みのファンクションは、[Basic settings] (基本設定)ビューの[Hive Query] (Hiveクエリー)フィールドで編集するHiveクエリーでよく使用されます。この[Hive Query] (Hiveクエリー)フィールドは、[Hive query] (Hiveクエリー)を[Input source] (入力ソース)リストから選択する時のみ表示されます。 |
| --- | --- |
| [Temporary UDF functions] (一時UDFファンクション) | このテーブルに入力して、インポートされた各UDFクラスに、現在のtHiveInputコンポーネント内のHiveクエリーで使用する一時的なファンクション名を付けます。 |

## グローバル変数

| グローバル変数 | ERROR\_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。<br><br>Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。<br><br>フィールドまたは式に変数を入れるには、Ctrl + スペースを押して変数リストにアクセスし、リストから使用する変数を選択します。<br><br>変数の詳細は、*Talend Studio* *ユーザーガイド*をご覧ください。 |
| --- | --- |

## 使用方法

| **使用ルール** | このコンポーネントは、開始コンポーネントとして使用され、出力リンクを必要とします。<br><br>このコンポーネントは、Hiveに接続するために同じジョブ内にあるtHiveWarehouseConfigurationコンポーネントを使う必要があります。<br><br>このコンポーネントは、所属するSpark Batchのコンポーネントのパレットと共に、Spark Batchジョブを作成している場合にだけ表示されます。 |
| --- | --- |