MongoDB または MongoDB Atlas 接続を使用する - AWS Glue

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": (オプション) truessltrue の場合、AWS Glueは ドメイン一致チェックを実行します。デフォルト値は、「true」です。

  • "batchSize": (オプション): 内部バッチのカーソル内で使用される、バッチごとに返されるドキュメントの数。

  • "partitioner": (オプション): MongoDB から入力データを読み取るためのパーティショナーのクラス名。コネクタには、次のパーティショナーがあります。

    • MongoDefaultPartitioner (デフォルト)

    • MongoSamplePartitioner (MongoDB 3.2 以降が必要です)

    • MongoShardedPartitioner

    • MongoSplitVectorPartitioner

    • MongoPaginateByCountPartitioner

    • MongoPaginateBySizePartitioner

  • "partitionerOptions" (オプション): 指定されたパーティショナーのオプション。各パーティショナーでは、次のオプションがサポートされています。

    • MongoSamplePartitionerpartitionKeypartitionSizeMB、および samplesPerPartition

    • MongoShardedPartitionershardkey

    • MongoSplitVectorPartitionerpartitionKey および partitionSizeMB

    • MongoPaginateByCountPartitionerpartitionKey および numberOfPartitions

    • MongoPaginateBySizePartitionerpartitionKey および partitionSizeMB

これらのパラメータの詳細については、「https://docs.mongodb.com/spark-connector/master/configuration/#partitioner-conf」を参照してください。