GlueでDynamoDBに書き込む方法

connection_typedynamodbを指定し、dynamodb.output.tableNameに書き込み先のテーブル名を指定することで簡単にDynamoDBに書き込むことが出来ます。DynamoDBに書き込む際はキャパシティの値を超えないように気をつけないといけないですが、書き込みキャパシティをdynamodb.throughput.write.percentのオプションを割合で指定できます。

また、dynamodb.output.numParallelTasksを指定することで並列書き込み数を指定することも出来ます。

glueContext.write_dynamic_frame_from_options(
    frame=dyf,
    connection_type="dynamodb",
    connection_options={
      "dynamodb.output.tableName": tablename,
      "dynamodb.throughput.write.percent": "0.7"
    }
)

DynamicFrameを渡す必要があるのでDataFrameを使用している場合には下記の様に変換してからframeに指定します。

dyf = DynamicFrame.fromDF(df, glueContext, "dyf")

参照