Apache spark 将spark数据帧转换为aws glue动态帧
我尝试将spark数据帧转换为动态,以作为glueparquet文件输出,但出现了错误 “DataFrame”对象没有“fromDF”属性 我的代码使用了大量的spark数据帧。有没有一种方法可以将spark数据帧转换为动态帧,这样我就可以把它写成glueparquet?如果有,请提供一个例子,并指出我在下面的错误之处 代码: 错误:Apache spark 将spark数据帧转换为aws glue动态帧,apache-spark,pyspark,aws-glue,Apache Spark,Pyspark,Aws Glue,我尝试将spark数据帧转换为动态,以作为glueparquet文件输出,但出现了错误 “DataFrame”对象没有“fromDF”属性 我的代码使用了大量的spark数据帧。有没有一种方法可以将spark数据帧转换为动态帧,这样我就可以把它写成glueparquet?如果有,请提供一个例子,并指出我在下面的错误之处 代码: 错误: 'DataFrame' object has no attribute 'fromDF' Traceback (most recent call last):
'DataFrame' object has no attribute 'fromDF'
Traceback (most recent call last):
File "/mnt/yarn/usercache/livy/appcache/application_1574556353910_0001/container_1574556353910_0001_01_000001/pyspark.zip/pyspark/sql/dataframe.py", line 1300, in __getattr__
"'%s' object has no attribute '%s'" % (self.__class__.__name__, name))
AttributeError: 'DataFrame' object has no attribute 'fromDF'
fromDF
是一个类函数。下面是如何将Dataframe
转换为DynamicFrame
from awsglue.dynamicframe import DynamicFrame
DynamicFrame.fromDF(test_df, glueContext, "test_nest")
为了整合Scala用户的答案,下面介绍如何将Spark数据帧转换为DynamicFrame(DynamicFrame的Scala API中不存在fromDF方法):
我希望它有帮助!看起来您正在尝试从动态帧创建动态帧。您能否确认test_df是一个数据帧,从脚本中我看到您是将其创建为动态帧而不是数据帧。
from awsglue.dynamicframe import DynamicFrame
DynamicFrame.fromDF(test_df, glueContext, "test_nest")
import com.amazonaws.services.glue.DynamicFrame
val dynamicFrame = DynamicFrame(df, glueContext)