tMongoDBInputの標準プロパティ
これらのプロパティは、標準ジョブのフレームワークで実行されているtMongoDBInputを設定するために使われます。
標準のtMongoDBInputコンポーネントは、ビッグデータファミリーとデータベースNoSQLファミリーに属しています。
このフレームワーク内のコンポーネントは、ビッグデータ対応のTalend 製品すべて、およびTalend Data Fabricで利用できます。
基本設定
[Use existing connection] (既存の接続を使用) |
定義済みの接続の詳細を再利用する場合は、このチェックボックスをオンにして、[Component List] (コンポーネントリスト)ドロップダウンリストから、目的の接続コンポーネントを選択します。 |
[DB Version] (DBバージョン) |
データベースバージョンのリスト。 [Use existing connection] (既存の接続を使用)チェックボックスが選択されていない場合に使用できます。 |
[Use replica set address] (レプリカセットのアドレスの使用) |
このチェックボックスをオンにすると、[Replica address] (レプリカアドレス)テーブルが表示されます。 [Replica address] (レプリカアドレス)テーブルでは、フェイルオーバー用に複数のMongoDBデータベースサーバーを定義できます。 [Use existing connection] (既存の接続を使用)チェックボックスが選択されていない場合に使用できます。 |
[Server] (サーバー)と[Port] (ポート) |
データベースサーバーのIPアドレスとリスニングポート。 [Use existing connection] (既存の接続を使用)または[Use replica set address] (レプリカセットアドレスの使用)チェックボックスが選択されていない場合に使用できます。 |
[Database] (データベース) |
データベースの名前。 |
[Use SSL connection] (SSL接続を使用) |
SSLまたはTLS暗号化接続を有効にする場合は、このチェックボックスを選択します。 次に、同じジョブ内のtSetKeyStoreコンポーネントを使用して暗号化情報を指定する必要があります。 SSL接続はMongoDBのバージョン2.4 +でのみ利用可能です。 |
[Set read preference] (読み取り環境設定の設定) |
このチェックボックスをオンにして、[Read preference] (読み取り環境設定)ドロップダウンリストが表示されたら、読み取りオペレーションをダイレクトする必要のあるメンバーを選択します。 このチェックボックスをオフのままにすると、ジョブはデフォルトの読み取り環境設定を使用します。すなわち、レプリカセット内のプライマリーメンバーが使用されます。 詳細は、MongoDBのドキュメンテーションで複製とその読み取り環境設定に関する説明をご覧ください。 |
[Required authentication] (必要な認証) |
このチェックボックスをオンにすると、データベース認証が有効になります。 Kerberosを使用していない場合は、[Authentication mechanism] (認証メカニズム)ドロップダウンリストにリスト表示されているメカニズムのうち、[NEGOTIATE]が推奨されます。使用しているMongoデータベースバージョンに最もよく対応している認証メカニズムが自動的に選択されるためです。 SCRAM-SHA-256認証メカニズムがMongoDB 4.x以降のみにサポートされているため、SCRAM-SHA-256 SASLオプションは[DB Version] (データベースバージョン)ドロップダウンリストからMongoDB 4.4.X and laterが選択されている時のみ利用できます。
情報メモ注: SCRAM-SHA-256 SASLオプションは、TalendのR2021-08以降のStudioマンスリーアップデートをインストールした時のみ利用できます。詳細は管理者にお問い合わせください。
このリスト内の他のメカニズムについては、MongoDBのドキュメンテーションでMongoDB Authentication (英語のみ)をご覧ください。 |
[Set Authentication database] (認証データベースの設定) |
MongoDBへの接続に使用するユーザー名がMongoDBの特定の認証データベース内で作成済みの場合は、このチェックボックスをオンにして、表示される[Authentication database] (認証データベース)フィールドに、この認証データベースの名前を入力します。 MongoDB認証データベースについては、User Authentication database (英語のみ)をご覧ください。 |
[Username] (ユーザー名)と[Password] (パスワード) |
DBユーザー認証データ。 パスワードを入力するには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符の間に入力し、OKをクリックして設定を保存します。 [Required authentication] (必要な認証)チェックボックスが選択されている場合に使用できます。 [Authentication mechanism] (認証方式)ドロップダウンリストでKerberosをセキュリティシステムに選択した場合は、[Username] (ユーザー名)と[Password] (パスワード)のフィールドではなく、[User principal] (プリンシパルを使用)、[Realm] (レルム)、[KDC server] (KDCサーバー)のフィールドに入力します。 |
[Collection] (コレクション) |
MongoDBデータベースのコレクションの名前。 |
[Schema] (スキーマ)と[Edit Schema] (スキーマを編集) |
スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。 スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。
データベースのカラムがJSONドキュメントで、ドキュメント全体を読み取る必要がある場合は、引用符を使用せずに[DB column] (DBカラム)内でアスタリスク(*)を付けます。 |
[Query] (クエリー) |
クエリー条件を指定します。このフィールドは、[Query type] (クエリータイプ)ドロップダウンリストから[Find query] (クエリーを検索)を選択した場合のみ利用できます。 たとえば、[Collection] (コレクション)フィールドで指定したコレクションからidが4のレコードを取得するには、"{id:4}"と入力します。 情報メモ注:
MongoDBクライアントソフトウェアの必須クエリーステートメントとは異なり、このクエリーは{id:4}対MongoDBクライアントクエリーdb.blog.find({id:4})など、find()内のコンテンツを参照しています。 |
[Specify fields to return] (返すフィールドを指定) |
このチェックボックスを選択すると、データベースから返されるドキュメントでフィールドのセットが定義されます。 |
[Return only these fields] (これらのフィールドのみ返す) |
このテーブルのデータから返されるフィールドの名前を入力します。 このフィールドは、[Basic settings] (基本設定)ビューで[Specify fields to return] (返すフィールドを指定)をオンにした場合のみ利用できます。 |
[Aggregation stages] (集計ステージ) |
ドキュメントが通過するステージを追加してMongoDB集計パイプラインを作成し、ドキュメントからの集計結果を取得します。このテーブルは、[Query type] (クエリータイプ)ドロップダウンリストから[Aggregation pipeline query] (集計パイプラインクエリー)を選択した場合のみ利用できます。 この[Aggregation stages] (集計ステージ)テーブルでは、1行につき1ステージのみが許可され、ステージはこのテーブルに配置した順序で1つずつ実行されます。 たとえば、$matchと$groupのステージを使用して顧客に関するドキュメントを集計する場合、この[Aggregation stages] (集計ステージ)テーブルに2つの行を追加し、以下の2つのステージを定義します:
この集計では、ステータスAの顧客ドキュメントが選択されます。その後、選択された顧客の中で同じ顧客IDでグルーピングされ、同じ顧客の[amount] (金額)フィールドの値が合計されます。 使用できるステージと関連する演算子の完全なリストは、Aggregation pipeline operators (英語のみ)をご覧ください。 MongoDB集計パイプラインの詳細は、『集計パイプライン (英語のみ)』を参照してください。 |
[Mapping] (マッピング) |
このコンポーネント用に定義されたスキーマの各カラムは、読み取るドキュメントのフィールドを表します。このテーブルで、これらのフィールドの親ノードがあればそれを指定する必要があります。 たとえば、次のようなドキュメントがあるとします。
{ _id: ObjectId("5099803df3f4948bd2f98391"), person: { first: "Joe", last: "Walker" } }フィールドfirstおよびlastには親ノードpersonがありますが、_idフィールドには親ノードがありません。したがって、完了すると、この[Mapping]テーブルは次のようになります。 Column Parent node path _id first "person" last "person" |
[Sort by] (ソート条件) |
カラムを指定し、ソート操作の順序を選択します。 このフィールドは、[Query type] (クエリータイプ)ドロップダウンリストから[Find query] (クエリーを検索)を選択した場合のみ利用できます。 |
[Limit] (制限事項) |
取得するレコードの最大数を入力します。 このフィールドは、[Query type] (クエリータイプ)ドロップダウンリストから[Find query] (クエリーを検索)を選択した場合のみ利用できます。 |
詳細設定
[tStatCatcher Statistics] (tStatCatcher統計) |
このチェックボックスをオンにすると、コンポーネントレベルでログデータを収集できます。 |
[No query timeout] (クエリータイムアウトなし) |
アイドルカーソルの非アクティブ状態が10分間続いた時にMongoデータベースサーバーがカーソルを停止することを防ぐ場合は、このチェックボックスを選択します。この状況では、このカーソルの結果が枯渇するか、またはcursor.close()方式を使用して手動で閉じるまで、アイドルカーソルが開いたままとなります。 MongoDBのカーソルはクエリーの結果セットを指すポインターです。デフォルトでは、すなわち、このチェックボックスがオフの場合、Mongoデータベースサーバーは、メモリの過剰使用を避けるために、非アクティブ状態が特定の期間続くと、アイドルカーソルを自動的に停止します。MongoDBカーソルの詳細は、https://docs.mongodb.org/manual/core/cursors/ (英語のみ)をご覧ください。 |
[Convert BSON document to string] (BSONドキュメントを文字列に変換) |
このチェックボックスを選択して、BSONの値をすべて文字列に変換します。配列タイプの値は基本オブジェクトリストです。 このオプションは、Mongo DB 3.5.x、4.4.x以降のバージョンでのみ利用できます。 |
グローバル変数
グローバル変数 |
NB_LINE: 入力コンポーネントによって読み取られた行の数、または出力コンポーネントに転送された行の数。これはAfter変数で、整数を返します。 ERROR_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。 Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。 フィールドまたは式に変数を入れるには、Ctrl + スペースを押して変数リストにアクセスし、リストから使用する変数を選択します。 変数の詳細は、Talend Studioユーザーガイドをご覧ください。 |
使用方法
使用ルール |
tMongoDBInputは、開始コンポーネントとしてMongoDBデータベースのコレクションからレコードを取得し、後続コンポーネントに転送して表示または保存します。 |