如何处理pysp中Glue数据目录中的空表

2024-09-27 04:27:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用AWS Glue在SageMaker上执行SparkSQL,但是没有成功。在

我要做的是参数化粘合作业,所以我希望访问空表是可以接受的。但是,当方法glueContext.create_dynamic_frame.from_catalog与空表一起提供时,它会引发一个错误。在

以下是引发错误的代码:

import sys
from awsglue.transforms import *
from awsglue.utils import getResolvedOptions
from pyspark.context import SparkContext
from awsglue.context import GlueContext
from awsglue.job import Job

glueContext = GlueContext(SparkContext.getOrCreate())

df1 = glueContext.create_dynamic_frame.from_catalog(
    database = "<glue's database name>",
    table_name = "<glue's table name>",  # I want here to be parameterized
    transformation_ctx = "df1"
)
df1 = df1.toDF()  # Here raises an Error
df1.createOrReplaceTempView('tmp_table')
df_sql = spark.sql("""SELECT ...""")

这是一个错误:

Unable to infer schema for Parquet. It must be specified manually.

是否不可能使用空表作为DynamicFrame的输入?提前谢谢你。在


Tags: namefromimport错误createcontexttabledynamic

热门问题