【发布时间】:2020-04-19 07:58:29
【问题描述】:
我是 AWS Glue 的新手,并且通过爬虫创建了作业,该作业指向 S3-bucket 中的源目标 CSV 文件。
CSV 文件包含以下列:
userId jobTitleName firstName lastName preferredFullName employeeCode region
现在在作业执行期间,它会抛出以下错误
Key error: userid' not exist。根据通知,该问题看起来是区分大小写的问题。所以根据胶水文档,我为模式创建了映射
mappingsSchema=[('userid', 'integer', 'userId', 'integer'),
('jobtitlename', 'string', 'jobTitleName', 'string'),
('firstname', 'string', 'firstName', 'string'),
('lastname', 'string', 'lastName', 'string'),
('preferredfullName', 'string', 'preferredFullname', 'string'),
('employeecode', 'string', 'employeeCode', 'string'),
('region', 'string','region', 'string')]
mapped_dynamic_frame_read=dynamic_frame_read.apply_mapping(mappings = mappingsSchema, case_sensitive = True, transformation_ctx = "tfx")
##And converting to the spark df
df = mapped_dynamic_frame_read.toDF()
我仍然收到同样提到的错误。 如何解决此类问题?
【问题讨论】:
-
看起来没有数据读入您的动态框架。您可以通过检查 mappingsSchema.count() 或 mappingsSchema .show() 来验证相同
-
嗨@Dunedan,我看到正在从“mappingsSchema .show()”中读取数据。但是“用户 ID”返回 null。请告诉我需要进行哪些更改才能解决此问题?
-
您是否通过胶水表表示读取 csv 文件?