Apache Spark StreamingのtMongoDBConfigurationプロパティ
これらのプロパティは、Spark Streamingジョブのフレームワークで実行されているtMongoDBConfigurationを設定するために使われます。
Spark StreamingのtMongoDBConfigurationコンポーネントは、データベースファミリーとデータベースNoSQLファミリーに属しています。
このコンポーネントはTalend Real-Time Big Data PlatformとTalend Data Fabricで利用できます。
基本設定
[Property type] (プロパティタイプ) |
[Built-in] (組み込み)と[Repository] (リポジトリー)のいずれかです。 [Built-In] (組み込み): 一元的に保存されるプロパティデータはありません。 [Repository] (リポジトリー): プロパティが保存されているリポジトリーファイルを選択します。 |
[DB Version] (データベースバージョン) |
接続する必要のあるMongoDBデータベースのバージョンを選択します。 |
[Use connection string] (接続文字列を使用) |
このチェックボックスをオンにすると、URI (Uniform Resource Identifier)を使って接続が確立されます。 次に[...]ボタンをクリックし、表示される[Enter a new password] (新しいパスワードを入力)ポップアップダイアログボックスに二重引用符で囲んだURIを入力して、最後にOKをクリックして設定を保存します。 URIではユーザー名とパスワードが直接入力されるので、[Username] (ユーザー名)パラメーターと[Password] (パスワード)パラメーターは利用できません。 情報メモ重要: Spark StreamingジョブではMongoDB Atlas URI形式がサポートされていません。
詳細は、MongoDBのドキュメンテーションでConnection String URI Formatをご覧ください。 このオプションは、Talendが提供する8.0.1 R2023-05以降のTalend Studioマンスリーアップデートをインストール済みであり、[DB Version] (データベースバージョン)でMongoDB 4+を選択した場合のみ利用できます。 |
[Use replica set address or multiple query routers] (レプリカセットのアドレスまたは複数クエリールーターを使用します) |
このチェックボックスを選択して[Server addresses] (サーバーアドレス)テーブルを表示します。 [Server addresses] (サーバーアドレス)テーブルで、接続先とする共有のMongoDBデータベースまたはMongoDBレプリカセットを定義します。 |
[Server] (サーバー)と[Port] (ポート) |
データベースサーバーのIPアドレスとリスニングポート番号を入力します。 [Use replica set address or multiple query routers] (レプリカセットのアドレスまたは複数クエリールーターを使用します)チェックボックスがオフの時に利用できます。 |
[Database] (データベース) |
接続先とするMongoDBデータベースの名前を入力します。 |
[Use SSL connection] (SSL接続を使用) |
SSLまたはTLS暗号化接続を有効にする場合は、このチェックボックスを選択します。 次に、同じジョブ内のtSetKeyStoreコンポーネントを使用して暗号化情報を指定する必要があります。 また、[Run] (実行)ビューの[Spark configuration] (Spark設定)タブにある[Advanced properties] (詳細プロパティ)テーブルで、spark.executor.extraJavaOptionsプロパティを設定するために使われます。例:
"spark.executor.extraJavaOptions" : "-Djavax.net.ssl.trustStorePassword =password -Djavax.net.ssl.trustStore= /tmp/keystore.jks -Djavax.net.ssl.trustStoreType=JKS"これらのプロパティは、tSetKeystoreがSparkエグゼキューターに対して設定するのと同じパラメーターを設定するので、値をtSetKeystoreからコピーできます。さらに、完全に同じロケーションですべてのワーカーノードにKeystoreをデプロイする必要があります。上記のサンプルでは、/tmp/keystore.jksです。 SSL接続はMongoDBのバージョン2.4 +でのみ利用可能です。 |
認証を使用 |
使用するMongoDBデータベースが認証を必要とする場合は、このチェックボックスを選択してデータベース認証を有効にします。 Kerberosを使用していない場合は、[Authentication mechanism] (認証メカニズム)ドロップダウンリストにリスト表示されているメカニズムのうち、[NEGOTIATE]が推奨されます。使用しているMongoデータベースバージョンに最もよく対応している認証メカニズムが自動的に選択されるためです。 このリスト内の他のメカニズムについては、MongoDBのドキュメンテーションでMongoDB Authenticationをご覧ください。 |
[Set Authentication database] (認証データベースの設定) |
MongoDBへの接続に使用するユーザー名がMongoDBの特定の認証データベース内で作成済みの場合は、このチェックボックスを選択して、表示される[Authentication database] (認証データベース)フィールドに、この認証データベースの名前を入力します。 MongoDB認証データベースについては、User Authentication databaseをご覧ください。 |
[Username] (ユーザー名)と[Password] (パスワード) |
データベースのユーザー認証データを入力します。 パスワードを入力するためには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して[OK]をクリックし、設定を保存します。 これらのオプションは、[Use authentication] (認証を使用)チェックボックスがオンであり、[Use connection string] (接続文字列を使用)チェックボックスがオフの場合に利用できます。 [Authentication mechanism] (認証方式)ドロップダウンリストから、Kerberosをセキュリティシステムに選択した場合は、[Username] (ユーザー名)と[Password] (パスワード)のフィールドではなく、[User principal] (プリンシパルを使用)、[Realm] (レルム)、[KDC server] (KDCサーバー)のフィールドに入力します。 |
詳細設定
[Connection string options] (接続文字列オプション) |
[Basic settings] (基本設定)タブで定義したプロパティに加えて、MongoDBへの接続用に、このテーブルでその他のプロパティを定義できます。 たとえば、次のオプションを追加して、この接続にタイムアウト値を指定できます。
connectTimeoutMS=300000 このテーブルで追加が可能なオプションについては、Connection optionsをご覧ください。 |
使用方法
使用ルール |
このコンポーネントは、他のコンポーネントに接続せずに使用されます。 tMongoDBConfigurationコンポーネント内の設定は、同じジョブ内のMongoDB関連のコンポーネントにのみ適用されます。言い換えると、tRunJob経由で呼び出した子ジョブまたは親ジョブ内で使用するMongoDBのコンポーネントは、この設定を再利用できません。 このコンポーネントは、所属するSpark Streamingのコンポーネントのパレットと共に、Spark Streamingジョブを作成している場合にだけ表示されます。 特に明記していない限り、このドキュメンテーションのシナリオでは、標準ジョブ、つまり従来の Talend Data Integrationジョブだけを扱います。 |
[Spark Connection] (Spark接続) |
[Run] (実行)ビューの[Spark configuration] (Spark設定)タブで、ジョブ全体でのSparkクラスターへの接続を定義します。また、ジョブでは、依存jarファイルを実行することを想定しているため、Sparkがこれらのjarファイルにアクセスできるように、これらのファイルの転送先にするファイルシステム内のディレクトリーを指定する必要があります。
この接続は、ジョブごとに有効になります。 |