AWS Glue无法从CSV检测正确的架构

问题描述 投票:0回答:1

我有一个具有当前结构的csv:

  • 名称,路径,日期
  • 奥罗拉,芝加哥,20200130
  • 标记,“锡拉丘兹,2365”,2020131

Glue中的结果表如下:

  • 名称,路径,日期
  • 奥罗拉,芝加哥,20200130
  • 马克,锡拉丘兹,2365

[我试图为CSV建立一个分类器,并将其添加到抓取工具中,但是由于引号仅出现在某些行中,所以它无法帮助Glue找到正确的模式,这是:

  • 名称,路径,日期
  • 极光|芝加哥| 20200130
  • 标记|锡拉丘兹(Syracuse),2365年| 2020131

有什么想法吗?

csv etl aws-glue amazon-athena aws-glue-data-catalog
1个回答
0
投票

您应该为此使用OpenCSV SerDe

您的CREATE TABLE查询将如下所示:

CREATE EXTERNAL TABLE IF NOT EXISTS testtimestamp1(
 `profile_id` string,
 `creationdate` date,
 `creationdatetime` timestamp
 )
 ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
 LOCATION 's3://<location>'

使用上述查询在雅典娜中创建表(而不是使用胶水)

一旦创建了表,请使用MSCK REPAIR TABLE <table_name>来实际加载分区。

© www.soinside.com 2019 - 2024. All rights reserved.