如何将PySpark数据帧写入DynamoDB表?

如何将PySpark数据帧写入DynamoDB表?,pyspark,amazon-dynamodb,Pyspark,Amazon Dynamodb,如何将PySpark数据帧写入DynamoDB表?没有找到关于这个的很多信息。根据我的要求,我必须将PySpark数据帧写入Dynamo db表。总的来说,我需要从PySpark代码读/写dynamo 提前感谢。Ram,直接从pyspark无法做到这一点。如果您有正在运行的管道软件,可以通过一系列步骤来完成。以下是如何做到这一点: 创建一个临时配置单元表,如 创建临时表 第1列类型, 第2列类型。。。 储存为兽人 运行pySpark作业并将数据写入其中 dataframe.createOrRep

如何将PySpark数据帧写入DynamoDB表?没有找到关于这个的很多信息。根据我的要求,我必须将PySpark数据帧写入Dynamo db表。总的来说,我需要从PySpark代码读/写dynamo


提前感谢。

Ram,直接从pyspark无法做到这一点。如果您有正在运行的管道软件,可以通过一系列步骤来完成。以下是如何做到这一点:

创建一个临时配置单元表,如

创建临时表 第1列类型, 第2列类型。。。 储存为兽人

运行pySpark作业并将数据写入其中

dataframe.createOrReplaceTempViewdf spark.sqlINSERT覆盖表温度从df选择*

创建dynamo连接器表

创建表TENTODYNAMO 第1列类型, 第2列类型。。。 由“org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler”存储 TBLProperty dynamodb.table.name=发电机温度, dynamodb.column.mapping=column1:column1,column2:column2

用临时表覆盖该表

插入覆盖表TENTODYNAMO SELECT*FROM TEMP

更多信息请点击此处: 您可以使用

根据回购协议:

# Load a DataFrame from a Dynamo table. Only incurs the cost of a single scan for schema inference.
dynamoDf = spark.read.option("tableName", "SomeTableName") \
                     .format("dynamodb") \
                     .load() # <-- DataFrame of Row objects with inferred schema.

# Scan the table for the first 100 items (the order is arbitrary) and print them.
dynamoDf.show(100)

# write to some other table overwriting existing item with same keys
dynamoDf.write.option("tableName", "SomeOtherTable") \
              .format("dynamodb") \
              .save()

这个AWS博客解释了如何使用AWS胶水创建一个唯一的键、分区并将S3数据csv写入DynamoDB表


想知道PySpark是否支持Dynamodb?据我所知,python支持。任何用Pypark试过的人。这是给斯卡拉的。回答得好,伙计!太好了!感谢及时的建议。这种方法不适用于dynamodb中的maps/list/boolean/null数据类型。上面的管道是否足够健壮,可以处理400万次插入?它确实适用于列表。也是的,我们每周都要写上千万的插页