如何解决使用胶水从 CSV 文件创建 athena 表的问题
我创建了一个胶水爬虫来将一个 S3 文件夹的多个 csv 文件加载到 Athena 上的 1 个表中,并且所有文件都是相同的 CSV 格式。 为此目的,我正在使用 CSV 分类器使用爬虫。但是这些文件的列之间有“逗号和双引号”。由于 Crawler 将列中的逗号视为分隔符,因此未在表中正确创建列。 但是在 Athena 中手动创建表时,我可以选择在表定义中提供 serde 和转义字符,如下所示:
CREATE EXTERNAL TABLE IF NOT EXISTS dump_table as (
columns
)
ROW FORMAT SERDE
'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
'escapeChar'='\\','separatorChar'=',')
LOCATION 's3://folder1//source'
TBLPROPERTIES (
'has_encrypted_data'='false','skip.header.line.count'='1'
);
我面临的问题是我无法在爬虫的分类器中将转义字符作为逗号提供,也无法像我在创建手动表时给出的那样在爬虫中提供 serde 信息。 任何人都可以帮我将此 CSV 数据加载到表中,该表中的列带有“列之间的逗号”
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。