tHBaseOutput MapReduceプロパティ(非推奨) - 7.3

HBase

Version
7.3
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
ジョブデザインと開発 > サードパーティーシステム > NoSQLコンポーネント > HBase
データガバナンス > サードパーティーシステム > NoSQLコンポーネント > HBase
データクオリティとプレパレーション > サードパーティーシステム > NoSQLコンポーネント > HBase

これらのプロパティを使って、標準ジョブフレームワークで実行されているMapReduceを設定します。

MapReduce tHBaseOutputコンポーネントはMapReduceファミリーとデータベースファミリーのコンポーネントです。

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

MapReduceのフレームワークは、Talend 7.3以降非推奨となります。Apache SparkのTalendジョブを使って、統合タスクを実行します。

基本設定

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

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

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

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

このアイコンをクリックすると、データベース接続ウィザードが開き、コンポーネント[Basic settings] (基本設定)ビューに設定したデータベース接続パラメーターが保存されます。

データベース接続パラメーターの設定と保管の詳細は、Talend Studioユーザーガイドを参照してください。

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

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

  • 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を参照してください。

このコンポーネントのMap/Reduceバージョンでは、選択するディストリビューションは、ジョブ全体の[Hadoop configuration] (Hadoop設定)ビューで定義する必要のあるディストリビューションと同じである必要があります。

HBaseバージョン

使用しているHadoopのディストリビューションのバージョンを選択します。使用可能なオプションは、使用しているコンポーネントによって異なります。

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

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

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

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

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

使用するデータベースでKerberosセキュリティを実行する場合は、このチェックボックスをオンにし、表示されたフィールドにプリンシパル名を入力します。この情報は、使用するクラスターのhbase-site.xmlファイルの中にあります。
  • このクラスターが5.0.0バージョン以上のMapRクラスターである場合、セキュリティ対応MapRへの接続に記載の説明に従って、MapRチケット認証設定を追加または代替として設定できます。

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

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

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

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

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

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

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

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

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

 

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

 

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

[Table name] (テーブル名)

データを書き込む必要のあるHBaseテーブルの名前を入力します。このテーブルは既に存在するものでなければなりません。

行のキーカラム

HBaseテーブルの行のキーカラムとして使用されたカラムを選択します。

必要な場合は、[Store row key column to HBase column] (行のキーカラムをHBaseカラムに保存する)チェックボックスをオンにして、行のキーカラムを、特定のカラムファミリーに属するHBaseカラムにします。

Families (ファミリー)

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

このテーブルの[Column] (カラム)カラムは、スキーマを定義すると自動的に入力されます。作成または使用するカラムファミリーを[Family name] (ファミリー名)カラムに入力して、[Column] (カラム)カラム内のカラムをグループ化します。カラムファミリーの詳細の詳細は、Column familiesでApacheのドキュメンテーションを参照してください。

詳細設定

[Use batch mode] (バッチモードの使用)

このチェックボックスをオンにして、データ処理のバッチモードを有効にします。

バッチサイズ

各バッチで処理するレコードの数を指定します。

このフィールドは、[Use batch mode] (バッチモードの使用)チェックボックスがオンの場合にのみ表示されます。

[Properties] (プロパティ)

データベースにカスタム設定を使用する必要がある場合は、カスタマイズするプロパティをこのテーブルで設定します。カスタマイズされたプロパティは、ランタイムに、Studioによって使用される対応するプロパティを上書きします。

たとえば、データベースの設定で、dfs.replicationプロパティの値を1に定義する必要があります。次に、プラスボタンを使用してこのテーブルに1行を追加し、このプロパティの名前と値をこの行に入力する必要があります。

[Use local timezone for date] (日付にローカルタイムゾーンを使用) ジョブが実行されるコンピューターのローカルな日付を使用するには、このチェックボックスをオンにします。このチェックボックスをオフのままにしておくと、日付タイプのデータ形式にUTCが自動的に使用されます。

グローバル変数

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

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

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

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

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

使用方法

使用ルール

Talend Map/Reduceジョブでは終了コンポーネントとして使用され、入力リンクとして変換コンポーネントが必要になります。一緒に使用される他のコンポーネントもMap/Reduceコンポーネントでなければなりません。Hadoopで直接実行できるネイティブMap/Reduceコードを生成します。

ジョブ全体に使用するHadoop設定と、このコンポーネントに使用するHadoopディストリビューションは同じにしなければなりません。実際には、Hadoopディストリビューションパラメーターを個別に定義して、コンポーネントを使用する場合にのみデータベースドライバーを起動することが求められます。

Map/Reduceジョブがワークスペースで開かれると、tHBaseOutputおよびMapReduceファミリーがStudioの[Palette] (パレット)に表示されます。

本書では、特に明記されていない限り、[Standard] (標準)ジョブ、つまり従来の Talend データ統合ジョブ、およびMap/Reduce以外のジョブのシナリオで説明しています。

[Hadoop Connection] (Hadoop接続)

[Run] (実行)ビューの[Hadoop Configuration] (Hadoop設定)タブを使用して、ジョブ全体で特定のHadoopディストリビューションに対する接続を定義する必要があります。

この接続は、ジョブごとに有効になります。

前提条件

始める前に、データベースで想定されているループバックIPの前提条件を満たしていることをご確認ください。

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