Hiveデータベースへの接続を作成
- Big Data
- Big Data Platform
- Cloud Big Data
- Cloud Big Data Platform
- Cloud Data Fabric
- Data Fabric
- Real-Time Big Data Platform
手順
- [Repository] (リポジトリー)ツリーで、[Metadata] (メタデータ)ノードの下の[Hadoop cluster] (Hadoopクラスター)ノードを展開し、使用するHadoop接続を右クリックしてコンテキストメニューから[Create Hive] (Hiveの作成)を選択します。
- 接続ウィザードが表示されます。ここで、[Name] (名前)、[Purpose] (目的)、[Description] (説明)など、ジェネリックプロパティを入力します。[Status] (ステータス)フィールドは、[File] (ファイル) > [Edit project properties] (プロジェクトプロパティを編集)で定義できます。
-
[Next] (次へ)をクリックして次のステップに進みます。ここでは、Hiveの接続情報を入力します。このうち、[DB Type] (DBの種類)、[Hadoop cluster] (Hadoopクラスター)、[Distribution] (ディストリビューション)、[Version] (バージョン)、[Server] (サーバー)、[NameNode URL] (ネームノードURL)、[JobTracker URL] (ジョブトラッカーURL)には、前のステップで選択したHadoop接続から継承されたプロパティが自動的に入力されます。
[Hadoop cluster] (Hadoopクラスター)リストから[None] (なし)を選択すると、手動モードに切り替わり、継承されたプロパティが破棄されるので、すべてのプロパティを手動で入力しなければなりません。作成された接続は、[Db connection] (データベース接続)ノードの下だけに表示されます。設定するプロパティは、接続しているHadoopのディストリビューションによって異なります。
- [Version info] (バージョン情報)エリアで、接続するHiveデータベースのモデルを選択します。
-
選択したHiveモデルに応じて表示されるフィールドに情報を入力します。
[Database] (データベース)フィールドを空欄にした場合は、[Standalone] (スタンドアロン)モデルを選択すると、defaultのHiveデータベースへの接続のみが有効になります。
-
Kerberosセキュリティを実行しているHadoopディストリビューションにアクセスする場合は、[Use Kerberos authentication] (Kerberos認証を使用)チェックボックスをオンにします。次に、[Hive principal] (Hiveプリンシパル)フィールドが表示されたら、Kerberosのプリンシパル名を入力します。
ログインにkeytabファイルが必要な場合は、[Use a keytab to authenticate] (認証にkeytabを使用)チェックボックスをオンにし、使用するプリンシパルを[Principal] (プリンシパル)フィールドに入力し、keytabファイルへのパスを[Keytab]フィールドに入力します。
keytabファイルには、Kerberosのプリンシパルと暗号化されたキーのペアが含まれています。keytabが有効なジョブは、プリンシパルに任命されたユーザーでなくても実行できますが、使用するkeytabファイルの読み取り権限が必要です。たとえばuser1というユーザー名でジョブを実行し、使用するプリンシパルがguestの場合、user1に使用するキータブファイルの読み取り権限があることをご確認ください。
How to use Kerberos in Talend Studioで説明されている手順に従って、Kerberosが正しく設定されたかどうか確認します。
例
-
[Hive metastore port] (Hiveメタストアポート)フィールドに、使用するHiveシステムのメタストアのリスニングポート番号を入力します。
このHiveシステムにHAメタストアが定義されている場合は、[Enable high availability] (高可用性の有効化)チェックボックスをオンにして、表示されるフィールドに複数のリモートメタストアサービスのURIを入力し、それぞれをコンマ(、)で区切ります。
-
Tezをサポートし、Talendの公式サポートを受けていないカスタムディストリビューションの資格である場合は、[Execution engine] (実行エンジン)リストからジョブのフレームワークとしてTezを選択します。
ここで、この接続をHiveコンポーネントで再利用する場合に、そのコンポーネントの[Advanced settings] (詳細設定)ビューを使用してTezライブラリーへのアクセスを設定する必要があります。
-
使用するHadoopまたはHiveディストリビューションの設定をカスタマイズする必要がある場合は、[Hadoop properties] (Hadoopのプロパティ)または[Hive Properties] (Hiveプロパティ)の横の[...]ボタンをクリックして対応するプロパティテーブルを開き、カスタマイズするプロパティを追加します。その後、実行時にTalend StudioがHadoopのエンジンに使用するデフォルトのプロパティが、カスタマイズした設定に上書きされます。
Hadoopのプロパティの詳細は、Apache Hadoopに関するドキュメンテーション (英語のみ)か、使用するHadoopディストリビューションのドキュメンテーションをご覧ください。たとえば、このページ (英語のみ)にはデフォルトのHadoopプロパティがいくつか記載されています。Hiveのプロパティの詳細は、Hiveに関するApacheドキュメンテーションをご覧ください。たとえば、このページ (英語のみ)にはHiveの設定プロパティがいくつか記述されています。これらのプロパティテーブルの活用方法の詳細は、再利用可能なHadoopのプロパティの設定をご覧ください。
- 接続が正しく行われたかどうかを確認するには、[Check] (チェック)ボタンをクリックします。
- 必要であれば、[Database Properties] (データベースのプロパティ)エリアの該当するフィールドでデータベースプロパティを設定します。
-
[Finish] (終了)をクリックして変更を確定し、ウィザードを閉じます。
特定のHiveデータベースに作成した接続は、[Repository] (リポジトリー)ツリービューの[DB Connections] (データベース接続)フォルダーの下に表示されます。この接続には4つのサブフォルダーがあり、そのうちの[Table schema] (テーブルスキーマ)には、この接続に関連するすべてのスキーマをグルーピングできます。環境コンテキストを使用してこの接続のパラメーターを定義する必要がある場合は、[Export as context] (コンテキストとしてエクスポート)ボタンをクリックして対応するウィザードを開き、以下のオプションから選択します。
-
[Create a new repository context] (新しいリポジトリーコンテキストを作成): 現在のHadoop接続からこの環境コンテキストを作成します。つまり、ウィザードで設定するパラメーターは、これらのパラメーターに設定した値と共にコンテキスト変数として取られます。
-
[Reuse an existing repository context] (既存のリポジトリーコンテキストを再利用): 特定の環境コンテキストの変数を使用して現在の接続を設定します。
[Export as context] (コンテキストとしてエクスポート)機能の使用方法の詳細な例は、メタデータのコンテキストとしてエクスポート、およびコンテキストパラメーターを再利用して接続を設定をご覧ください。
-
- 作成したHive接続を右クリックし、[Retrieve schema] (スキーマを取得)を選択して、定義したHiveデータベースのすべてのスキーマを取得します。