AWSGlue作业有时无法解析给定的输入列'xxx'
创始人
2024-09-25 18:02:56
0

可能问题的根源是在Glue中定义的表模式与数据源中实际存在的模式不匹配。为了解决这个问题,你可以使用代码来指定输入源和输出表的模式。下面是一个源于GitHub上的代码示例:

from awsglue.transforms import *
from awsglue.utils import getResolvedOptions
from pyspark.context import SparkContext
from pyspark.sql import SparkSession
from pyspark.sql.types import StructType, StructField, IntegerType, StringType, DoubleType

glueContext = GlueContext(SparkContext.getOrCreate())
spark = glueContext.spark_session

# Here is where you specify the input source and output S3 path
input_job_path = "s3://my-bucket/input/"
output_job_path = "s3://my-bucket/output/"

input_schema = StructType([
    StructField("id", IntegerType(), True),
    StructField("name", StringType(), True),
    StructField("value", DoubleType(), True)])

# Read data from S3
dynamic_frame = glueContext.create_dynamic_frame_from_options(
    connection_type="s3",
    format="csv",
    connection_options={
        "path": input_job_path,
        "recurse":True},
    format_options={
        "withHeader": True,
        "separator": ","},
    schema=input_schema)

# Convert dynamic frame to data frame
df = dynamic_frame.toDF()

# Apply transformations to data frame
df_transformed = 

output_schema = StructType([
    StructField("new_id", IntegerType(), True),
    StructField("first_name", StringType(), True),
    StructField("last_name", StringType(), True),
    StructField("final_value", DoubleType(), True)])

# Write back to S3 with new schema
df_transformed.write.mode("overwrite").format("parquet").option("compression", "snappy").save(output_job_path)

# Glue Catalog metadata for new table schema
spark.catalog.refreshTable("default.new_table_name")
df_output = spark.read.format("parquet").load(output_job_path)

# Rename columns and convert to Glue dynamic frame
df_output_transformed = df_output

相关内容

热门资讯

专业讨论!wepoke能赢嘛,... 专业讨论!wepoke能赢嘛,德州免费辅助神器app,科技教程(从前有挂)1、在德州免费辅助神器ap...
分辨真假!gg扑克有辅助吗,w... 分辨真假!gg扑克有辅助吗,wpk透视辅助,wepoke教程(往昔真的是有挂)1、构建自己的微扑克辅...
每日必看!微扑克发牌有问题吗,... 您好,aapoker辅助这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家...
实测交流!线上德州辅助工具有哪... 实测交流!线上德州辅助工具有哪些,wpk提高胜率,高科技教程(切实真的是有挂)1)wpk提高胜率辅助...
最新技巧!wepoke辅助技巧... 最新技巧!wepoke辅助技巧,wpk提高胜率,透牌教程(起初存在有挂)1、很好的工具软件,可以解锁...
重大推荐!德州alphax辅助... 重大推荐!德州alphax辅助,wepoke真的有挂,切实教程(原先是真的有挂)1、超多福利:超高返...
玩家实测!扑克世界app辅助,... 玩家实测!扑克世界app辅助,wepoke辅助机器人,详细教程(都是真的是有挂)是一款可以让一直输的...
科技介绍!wepoke辅助有挂... 科技介绍!wepoke辅助有挂吗,微扑克ai辅助工具,可靠技巧(好像存在有挂)1.微扑克ai辅助工具...
玩家必备科普!菠萝德州辅助神器... 玩家必备科普!菠萝德州辅助神器,wpk透视辅助测试,介绍教程(先前真的有挂)1、很好的工具软件,可以...
玩家交流!wpk机器人代打,微... 玩家交流!wpk机器人代打,微扑克游戏辅助器,透明挂教程(总是真的有挂);是一款可以让一直输的玩家,...