MongoDB または MongoDB Atlas 接続を使用する
MongoDB または MongoDB Atlas の接続を作成すると、ETL ジョブで接続を使用することができます。AWS Glue Data Catalog にテーブルを作成し、テーブルの connection
属性に MongoDB または MongoDB Atlas 接続を指定します。
AWS Glue では、接続 url
と MongoDB 接続の認証情報が保存されます。接続 URI の形式は次のとおりです。
MongoDB の場合: mongodb://host:port/database ホストは、ホスト名、IP アドレス、UNIX ドメインソケットのいずれかにすることができます。接続文字列でポートが指定されていない場合は、デフォルトの MongoDB ポート、27017 が使用されます。
MongoDB Atlas: mongodb+srv://server.example.com/database ホストは、DNS SRV レコードに対応するホスト名にすることができます。SRV 形式ではポートは不要であり、デフォルトの MongoDB ポート、27017 が使用されます。
さらに、ジョブスクリプトで次のオプションを指定できます。
-
"database"
: (必須) 読み込み元の MongoDB データベース。 -
"collection"
: (必須) 読み込み元の MongoDB コレクション。 -
"ssl"
: (オプション、MongoDB でのみ利用可能)true
の場合、AWS Glue は SSL 接続を開始します。デフォルト値は、「false
」です。 -
"ssl.domain_match"
: (オプション)true
とssl
がtrue
の場合、AWS Glueは ドメイン一致チェックを実行します。デフォルト値は、「true
」です。 -
"batchSize"
: (オプション): 内部バッチのカーソル内で使用される、バッチごとに返されるドキュメントの数。 -
"partitioner"
: (オプション): MongoDB から入力データを読み取るためのパーティショナーのクラス名。コネクタには、次のパーティショナーがあります。-
MongoDefaultPartitioner
(デフォルト) -
MongoSamplePartitioner
(MongoDB 3.2 以降が必要です) -
MongoShardedPartitioner
-
MongoSplitVectorPartitioner
-
MongoPaginateByCountPartitioner
-
MongoPaginateBySizePartitioner
-
-
"partitionerOptions"
(オプション): 指定されたパーティショナーのオプション。各パーティショナーでは、次のオプションがサポートされています。-
MongoSamplePartitioner
–partitionKey
、partitionSizeMB
、およびsamplesPerPartition
-
MongoShardedPartitioner
–shardkey
-
MongoSplitVectorPartitioner
–partitionKey
およびpartitionSizeMB
-
MongoPaginateByCountPartitioner
–partitionKey
およびnumberOfPartitions
-
MongoPaginateBySizePartitioner
–partitionKey
およびpartitionSizeMB
-
これらのパラメータの詳細については、「https://docs.mongodb.com/spark-connector/master/configuration/#partitioner-conf