# tMapRStreamsInputの標準プロパティ

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

標準のtMapRStreamsInputコンポーネントは、インターネットファミリーに属しています。

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

## 基本設定

| プロパティ | 説明 |
| --- | --- |
| [Schema] (スキーマ)と[Edit schema] (スキーマを編集) | スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。<br><br>このコンポーネントのスキーマは読み取り専用です。メッセージプロデューサーから送信されたメッセージを保管します。 |
| [Output type] (出力タイプ) | 次のコンポーネントに送信するデータのデータ型を選択します。<br><br>tMapRStreamsInputはMapR Streams byte[]メッセージをジョブが処理する文字列に自動変換できるので、通常は[String] (文字列)の使用が推奨されます。ただし、*Protobuf*など、tMapRStreamsInputで認識できないMapR Streamsメッセージ形式の場合は、[byte] (バイト)を選択し、次にtJavaRowなどのカスタムコードのコンポーネントを使って、同じジョブの他のコンポーネントがこれらのメッセージを処理できるようにメッセージを文字列にデシリアライズできます。 |
| [Use an existing connection] (既存の接続を使用) | このチェックボックスを選択して、表示されたリストから、定義済みの接続詳細を再利用する、該当する接続コンポーネントを選択します。 |
| [Distribution] (ディストリビューション)と[Version] (バージョン) | 使用するMapRディストリビューションを選択します。MapR V5.2以上のみがMapRDBのコンポーネントでサポートされます。<br><br>MapRDBデータベースと併用する必要のあるディストリビューションがこのMapRBDのコンポーネントによって正式にサポートされていない場合、つまり、このディストリビューションがMapRでも、このコンポーネントの[Version] (バージョン)ドロップダウンリストに表示されていないか、このディストリビューションがMapRではない場合は、[Custom] (カスタム)を選択します。<br><br><ol> <li> <p><span>[Import from existing version] (既存のバージョンからインポート)</span>を選択すると、正式にサポートされているディストリビューションをベースとしてインポートしてから、ベースディストリビューションで提供されていない他の必要なjarファイルを追加できます。</p> </li> <li> <p><span>[Import from zip] (zipからインポート)</span>を選択すると、使用するカスタムディストリビューションの設定zipファイルをインポートできます。zipファイルには、Hadoopの各種エレメントのライブラリーおよびこれらのライブラリーのインデックスファイルが含まれている必要があります。 </p> <p><span><span>Talend</span></span>はカスタムバージョンを公式にサポートしていません。<span><span>Talend</span></span>とそのコミュニティでは、<span>Talend Studio</span>からカスタムバージョンに接続するための方法を紹介していますが、Hadoopのディストリビューションとバージョンの種類は幅広いため、選択したバージョンの設定がスムーズに機能するかどうかは保証できません。そのような接続のセットアップは、Hadoopについてどんな問題でもご自身で対処できる十分な経験をお持ちの場合のみ行ってください。</p> <div><span>情報メモ</span><span>注:</span> <p>カスタムディストリビューションとこのコンポーネント間で作成する接続に関わるjarファイルがインポートされるように、このダイアログボックスのアクティブなチェックボックスをオフにしないでください。</p> </div> <p>カスタムディストリビューションの接続方法、および接続の共有方法のステップ例は、<a href="https://help.qlik.com/talend/r/ja-JP/8.0/hortonworks" target="_blank">Hortonworks</a>をご覧ください。</p> </li> </ol> |
| トピック名 | tMapRStreamsInputがメッセージフィードを受け取るトピック名を入力します。このトピックが属するストリームの名前を入力する必要があります。構文は*path\_to\_the\_stream:topic\_name*です。 |
| [Consumer group ID] (コンシューマーグループID) | 現在のコンシューマー(tMapRStreamsInputコンポーネント)が属するようにしたいコンシューマーグループの名前を入力します。<br><br>この時点でこのコンシューマーグループが存在していない場合、実行時に作成されます。 |
| [Reset offsets on consumer group] (コンシューマーグループのオフセットをリセット) | あるコンシューマーグループを、メッセージをまったく消費していない新しいグループとして処理できるように、このコンシューマーグループ用に保存されているオフセットをクリアする場合は、このチェックボックスを選択します。 |
| [New consumer group starts from] (新規コンシューマーグループの開始点) | 消費されるトピックメッセージの開始ポイントを選択します。<br><br>MapR Streamsでは、メッセージの増加するID番号は*offset*と呼ばれます。新しいコンシューマーグループが開始すると、このリストから[beginning] (最初から)を選択してトピック全体のうちで最も古いメッセージから消費を開始するか、[latest] (最後から)を選択して新しいメッセージを待機できます。<br><br>コンシューマーグループは、オフセットコミットされた開始のメッセージのみを考慮します。<br><br>各コンシューマーグループには、消費したメッセージの位置を記憶するための独自のカウンターがあります。このため、コンシューマーグループが特定のトピックのメッセージの消費を開始すると、コンシューマーグループはトピック全体ではなく、このグループが消費を停止する位置に関してのみ最新のメッセージを認識します。この原則に基づいて、次の動作が予想されます。<br><br><ul> <li> <p>既存のコンシューマーグループを再開する場合、このオプションは、コミットされた開始点がまだない場合のみ、このコンシューマーグループの開始点を決定します。それ以外の場合、このコンシューマーグループは、このコミットされた開始点から開始します。たとえば、トピックに<em>100</em>のメッセージがあるとします。既存のコンシューマーグループが50のメッセージを正しく処理し、それらのオフセットをコミットした場合、同じコンシューマーグループはオフセット<em>51</em>から再開します。</p> </li> <li> <p>新しいコンシューマーグループを作成するか、既存のコンシューマーグループをリセットした場合(どちらの場合も、このグループがこのトピックのメッセージを消費していないことを意味します)、最新のグループから開始すると、この新しいグループが開始し、オフセット<em>101</em>を待機します。</p> </li> </ul> |
| [Auto-commit offsets] (自動コミットのオフセット) | このチェックボックスを選択すると、tMapRStreamsInputは、指定された各時間間隔の終了時に消費状態を自動的に保存します。表示される[Interval] (間隔)フィールドでこの間隔を定義する必要があります。<br><br>オフセットは、各間隔の最後にコミットされます。ジョブがこの時間間隔の途中で停止した場合、この間隔内におけるメッセージの消費状態はコミットされません。 |
| [Stop after a maximum total duration (ms)] (最長処理時間(ミリ秒)に達したら停止) | このチェックボックスを選択して、tMapRStreamsInputの実行が終了するまでの期間(ミリ秒)をポップアップフィールドに入力します。 |
| [Stop after receiving a maximum number of messages] (最大数のメッセージを受信したら停止) | このチェックボックスを選択して、tMapRStreamsInputが自動的に実行を停止するまでに受信するメッセージの最大数をポップアップフィールドに入力します。 |
| メッセージ間の最大待機時間(ミリ秒)が経過した後に停止 | このチェックボックスを選択して、tMapRStreamsInputによる新しいメッセージの待機時間(ミリ秒)をポップアップフィールドに入力します。tMapRStreamsInputは、この待機時間が終了するまでに新しいメッセージを受信しなかった場合、自動的に実行を停止します。 |

## 詳細設定

| プロパティ | 説明 |
| --- | --- |
| [Consumer properties] (コンシューマープロパティ) | カスタマイズする必要があるMapR Streamsコンシューマープロパティをこのテーブルに追加します。 |
| タイムアウト精度(ミリ秒) | 消費できるメッセージがない場合に、その最後にタイムアウト例外が返される期間をミリ秒で入力します。<br><br>値*-1*はタイムアウトの設定がないことを示します。 |
| メッセージでオフセットをロード | このチェックボックスを選択すると、次のコンポーネントに、消費済みメッセージのオフセットが出力されます。このパラメーターを選択すると、*offset*という名前の読み取り専用カラムがスキーマに追加されます。 |
| [Custom encoding] (カスタムエンコーディング) | 保管データを処理する際、エンコーディングの問題が発生することがあります。このような場合は、チェックボックスをオンにして[Encoding] (エンコーディング)リストを表示します。<br><br>リストからエンコーディングを選択するか、[CUSTOM] (カスタム)を選択して、手動で定義します。 |
| [tStatCatcher Statistics] (tStatCatcher統計) | このチェックボックスを選択すると、ジョブレベルおよび各コンポーネントレベルで処理メタデータが収集されます。 |

## グローバル変数

| 変数 | 説明 |
| --- | --- |
| グローバル変数 | ERROR\_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。<br><br>Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。<br><br>フィールドまたは式に変数を入力する場合は、Ctrl + スペースを押して変数リストにアクセスし、使用する変数を選択します。<br><br>変数の詳細は、[コンテキストと変数を使用](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/contexts-and-variables)をご覧ください。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | このコンポーネントは、開始コンポーネントとして使用され、出力リンクを必要とします。使う必要があるMapR Streamsトピックが存在しない場合は、最初にtMapRStreamsCreateTopicコンポーネントまたはMapRコマンドラインインターフェイスを使ってこのトピックを作成できます。 |
| 前提条件 | *Talend Studio* との操作を確実に行うには、Hadoopディストリビューションを適切にインストールする必要があります。以下のリストに、MapR関連の情報などを示します。<br><br><ul> <li> <p>MapRクライアントは必ず<span>Talend Studio</span>のあるマシンにインストールして、そのマシンのPATH変数にMapRクライアントライブラリーを追加します。MapRのドキュメンテーションによると、各OSバージョンに対応するMapRクライアントのライブラリーは、<em>MAPR_INSTALL\ hadoop\hadoop-VERSION\lib\native</em>にあります。たとえば、Windows版のライブラリーは、<em>\lib\native\MapRClient.dll</em>にあるMapRクライアントのjarファイルにあります。</p> <p>指定のライブラリーを追加しないと、<span>no MapRClient in java.library.path</span>というエラーが発生する可能性があります。</p> </li> <li> <p>たとえば、<span>[Window] (ウィンドウ)</span>メニューの<span>[Preferences] (環境設定)</span>ダイアログボックスにある<span>[Run/Debug] (実行/デバッグ)</span>ビューの<span>[Job Run VM arguments] (ジョブ実行VMの引数)</span>エリアで、<span>-Djava.library.path</span>引数を設定します。この引数により、そのMapRクライアントのネイティブライブラリーへのパスが<span>Talend Studio</span>に渡されるので、サブスクリプションベースのユーザーは<span>データビューアー</span>をフルに活用して、MapRに保存されたデータを<span>Talend Studio</span>でローカルに表示できます。</p> </li> </ul><br><br>Hadoopディストリビューションのインストール方法の詳細は、使用しているHadoopディストリビューションに対応するマニュアルをご覧ください。 |