/ / napíšte riadky dátového rámu iskra ako položky v tabuľke dynamoDB - apache-spark, amazon-dynamodb, pyspark

napíšte riadky dátového rámu iskra ako položky v tabuľke dynamoDB - apache-spark, amazon-dynamodb, pyspark

Existuje spôsob, ako napísať každý riadok môjho spark dátový rámec ako novú položku v a dynamoDB tabuľka? (v pySpark)

Použil som tento kód s boto3 knižnica, ale zaujímalo by ma, či existuje iná cesta, ako sa vyhnúť pandas a for loop kroky:

sparkDF_dict = sparkDF.toPandas().to_dict("records")
for item in sparkDF_dict :
table.put_item(Item = item)

odpovede:

0 pre odpoveď č. 1

DynamoDB ponúka a BatchWriteItem API, to je k dispozícii v boto3, takže by ste mohli zavolať po vytvorení dlhých častí prvkov sparkDF_dict 25. Všimnite si, že BatchWriteItem API podporuje iba písanie 25 položiek naraz, a nie všetky zápisy môžu na začiatku uspieť (pretože sa môžu dostať na strane služieb a vrátiť sa k vám UnprocessedItems časť odpovede). Vaša žiadosť sa musí pozrieť UnprocessedItems v odpovedi a zopakujte podľa potreby.