# tMongoDBBulkLoad

データファイルを異なる形式(CSV、TSV、または JSON)で指定されたMongoDBデータベースにインポートし、データの処理を行います。

デフォルトで、このコンポーネントはTalend Studioと共には出荷されていません。機能マネージャーを使ってインストールする必要があります。 詳細は、[機能マネージャーを使って機能をインストール](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/install-features-to-talend-studio)をご覧ください。

## tMongoDBBulkLoadの標準プロパティ

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

標準のtMongoDBBulkLoadコンポーネントは、ビッグデータファミリーとデータベースNoSQLファミリーに属しています。

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

## 基本設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| [Schema] (スキーマ)と[Edit schema] (スキーマを編集) | スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。<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>: リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。</p> <p>変更を現在のジョブにのみ反映する場合は、変更後、<span>[No] (いいえ)</span>を選択し、<span>[Repository Content] (リポジトリーコンテンツ)</span>ウィンドウで再びこのスキーマのメタデータを選択します。</p> </li> </ul> |
| [MongoDB directory] (MongoDBディレクトリー) | このフィールドにMongoDBホームディレクトリーを入力します。 |
| [Use local DB path] (ローカルDBパスの使用) | このチェックボックスをオンにすると、使用するローカルデータベースの情報を指定できます。MongoDB V3.0以降のバージョンでは、このフィーチャーはサポートされていません。<br><br><ul> <li> <p> <span>[Local DB path] (ローカルDBパス)</span>: MongoDBサーバーの起動時に指定されたローカルデータベースのパスを入力します。</p> </li> </ul> |
| [Use replica set address] (レプリカセットのアドレスの使用) | このチェックボックスをオンにすると、接続するレプリカセットを定義できます。<br><br><ul> <li> <p> <span>[Replica set name] (レプリカセット名)</span>: レプリカセットの名前を指定します。</p> </li> <li> <p> <span>[Replica address] (レプリカアドレス)</span>:必要に応じて、フェイルオーバー用に複数のMongoDBデータベースサーバーを指定します。レプリカホストまたはレプリカポートを未指定のままにすると、デフォルト値の<em>localhost</em>および<em>27017</em>が使用されます。</p> </li> </ul> |
| [Use connection string] (接続文字列を使用) | このオプションをオンにすると、MongoDB Atlas URIを使って接続を確立できます。右側のフィールドにURIを入力します。関連情報は、[接続文字列のURI形式](https://docs.mongodb.com/manual/reference/connection-string/)をご覧ください。<br><br>情報メモ注: このオプションは、Talendが提供するR2021-12以降のTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。詳細は管理者にお問い合わせください。 |
| サーバー | データベースサーバーのホスト名またはIPアドレス。サーバーが指定されていない場合は、デフォルト値の*localhost*が使用されます。<br><br>このフィールドは[Use replica set address] (レプリカセット住所の使用)チェックボックスが選択されていない場合のみ利用できます。 |
| [Port] (ポート) | データベースサーバーのリスニングポート。ポートが指定されていない場合は、デフォルト値の*27017*が使用されます。<br><br>このフィールドは[Use replica set address] (レプリカセット住所の使用)チェックボックスが選択されていない場合のみ利用できます。 |
| [Database] (データベース) | データのインポート先となるデータベースの名前を入力します。 |
| [Collection] (コレクション) | データのインポート先となるコレクションの名前を入力します。 |
| [Use SSL connection] (SSL接続を使用) | SSLまたはTLS暗号化接続を有効にする場合は、このチェックボックスをオンにします。<br><br>次に、同じジョブ内のtSetKeyStoreコンポーネントを使用して暗号化情報を指定する必要があります。<br><br>SSL接続はMongoDBのバージョン2.4 +でのみ利用可能です。 |
| [Drop collection if exist] (存在する場合はコレクションをドロップ) | このチェックボックスをオンにすると、既に存在する場合はコレクションが削除されます。 |
| [Required authentication] (必要な認証) | このチェックボックスをオンにすると、データベース認証が有効になります。<br><br>Kerberosを使用していない場合は、[Authentication mechanism] (認証メカニズム)ドロップダウンリストにリスト表示されているメカニズムのうち、[NEGOTIATE]が推奨されます。使用しているMongoデータベースバージョンに最もよく対応している認証メカニズムが自動的に選択されるためです。<br><br>SCRAM-SHA-256認証メカニズムがMongoDB 4.x以降のみにサポートされているため、SCRAM-SHA-256 SASLオプションは[DB Version] (データベースバージョン)ドロップダウンリストから、MongoDB 4.4.X and laterが選択されている時のみ利用可能です。<br><br>情報メモ注: X509オプションは、Talendが提供するR2021-12以降のTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。詳細は管理者にお問い合わせください。<br><br>このリスト内の他のメカニズムについては、MongoDBのドキュメンテーションで[MongoDB Authentication](https://docs.mongodb.org/manual/reference/parameters/#param.authenticationMechanisms)をご覧ください。 |
| [Set Authentication database] (認証データベースの設定) | MongoDBへの接続に使用するユーザー名がMongoDBの特定の認証データベース内で作成済みの場合は、このチェックボックスをオンにして、表示される[Authentication database] (認証データベース)フィールドに、この認証データベースの名前を入力します。<br><br>MongoDB認証データベースについては、[User Authentication database](https://docs.mongodb.org/manual/core/security-users/#user-authentication-database)をご覧ください。 |
| [Username] (ユーザー名)と[Password] (パスワード) | DBユーザー認証データ。<br><br>パスワードを入力するためには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して[OK]をクリックし、設定を保存します。<br><br>[Required authentication] (必要な認証)チェックボックスが選択されている場合に利用できます。<br><br>[Authentication mechanism] (認証方式)ドロップダウンリストから、Kerberosをセキュリティシステムに選択した場合は、[Username] (ユーザー名)と[Password] (パスワード)のフィールドではなく、[User principal] (プリンシパルを使用)、[Realm] (レルム)、[KDC server] (KDCサーバー)のフィールドに入力します。 |
| [Certificate] (証明書) | 証明書ファイルへのパスを入力します。このフィールドには、右にある[...]ボタンをクリックし、証明書ファイルのあるフォルダーに移動して、証明書ファイルを選択して入力することもできます。<br><br>このフィールドは、[Authentication mechanism] (認証メカニズム)ドロップダウンリストからX509を選択する場合に利用できます。 |
| [Use certificate authority] (認証局を使用) | このオプションを選択してCA証明書を使います。右側のフィールドにCA証明書へのパスを入力する必要があります。このフィールドには、右にある[...]ボタンをクリックし、証明書ファイルのあるフォルダーに移動して、証明書ファイルを選択して入力することもできます。<br><br>このフィールドは、[Authentication mechanism] (認証メカニズム)ドロップダウンリストからX509を選択する場合に利用できます。 |
| [Data file] (データファイル) | データのインポート元ファイルの完全パスを入力するか、[...]ボタンをクリックして目的のデータファイルを参照します。<br><br>データファイルが標準形式になっていることを確認します。たとえば、CSVファイルのフィールドはコンマで区切る必要があります。 |
| [File type] (ファイルタイプ) | リストから適切なファイルの種類を選択します。CSV、TSV、JSONがサポートされています。 |
| [The JSON file starts with an array] (JSONファイルは配列で始まる) | このチェックボックスをオンにすると、tMongoDBBulkloadでは配列で始まるJSONファイルを読み取れます。<br><br>このチェックボックスは、選択した[File type] (ファイルタイプ)がJSONの場合に表示されます。 |
| [Action on data] (データでのアクション) | データに対して実行する操作を選択します。<br><br><ul> <li> <p> <span>[Insert] (挿入)</span>: データをデータベースに挿入します。 </p> <p>CSVまたはTSVファイルからMongoDBデータベースにデータを挿入する場合は<span>[First line is header] (最初の行をヘッダーにする)</span>チェックボックスをオンにするか、スキーマでフィールドを定義する必要があります。</p> </li> <li> <p> <span>[Upsert] (アップサート)</span>: データが存在しない場合は挿入し、存在する場合は既存のデータをアップデートします。</p> <p>MongoDBデータベースでデータのアップサートを行う場合、アップサート操作のクエリー部分のフィールドリストを指定する必要があることにご注意ください。</p> </li> </ul> |
| [Upsert fields] (アップサートフィールド) | 必要に応じてアップサートするフィールドをカスタマイズします。<br><br>このテーブルは[Action on data] (データでのアクション)リストから[Upsert] (アップサート)を選択した場合に使用できます。 |
| [First line is header] (最初の行をヘッダーにする) | このチェックボックスをオンにすると、CSVまたはTSVファイルの最初の行をヘッダーとして利用できます。<br><br>このチェックボックスは、[File type] (ファイルタイプ)リストからCSVまたはTSVを選択した場合のみ利用できます。 |
| [Ignore blanks] (空白を無視) | このチェックボックスをオンにすると、CSVまたはTSVファイルの空のフィールドを無視できます。<br><br>このチェックボックスは、[File type] (ファイルタイプ)リストからCSVまたはTSVを選択した場合のみ利用できます。 |
| [Print log] (ログを印刷) | このチェックボックスをオンにすると、ログを印刷できます。 |

## 詳細設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| [Additional arguments] (追加の引数) | 必要に応じて、追加の引数を使用するには、このテーブルの入力を完了します。<br><br>たとえば、--jsonArray引数を使用して、単一のJSON配列内の複数のMongoDBドキュメントで表されるデータのインポートを受け入れることができます。追加の引数の詳細は、[MongoDBのドキュメンテーション](https://www.mongodb.com/docs/database-tools/mongoimport/#options)をご覧ください。 |
| [Disable retryable writes] (再試行可能な書き込みを無効化) | このチェックボックスをオンにすると、書き込み操作の自動再試行を無効にできます。このオプションの詳細は、[MongoDBのドキュメンテーション](https://www.mongodb.com/docs/manual/core/retryable-writes/)をご覧ください。<br><br>このオプションはバージョン100.9.5以降のmongoimportでのみサポートされています。 |
| [tStatCatcher Statistics] (tStatCatcher統計) | このチェックボックスをオンにすると、コンポーネントレベルでログデータを収集できます。 |

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

| 変数 | 説明 |
| --- | --- |
| グローバル変数 | NB\_LINE: 入力コンポーネントによって読み取られた行の数、または出力コンポーネントに転送された行の数。これはAfter変数で、整数を返します。<br><br>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)をご覧ください。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | このコンポーネントは、tMongoDBInputコンポーネントと共に使用して、データが正しくインポートされたかどうかを確認できます。 |
| [Limitation] (制限事項) | MongoDBクライアントツールは、このコンポーネントを使用するジョブが実行されるマシンにインストールしておく必要があります。 |

**関連概念**

* [MongoDBデータベースへのデータのインポート](https://help.qlik.com/talend/ja-JP/components/8.0/mongodb/tmongodbinput-tmongodbbulkload-tlogrow-tmongodbbulkload-tlogrow-importing-data-into-mongodb-database-standard-component-bigdata-the)