AWS Glue爬网程序-无法正确拾取Timestamp列(始终定义为字符串)

时间:2019-04-15 10:01:31

标签: amazon-athena aws-glue

我已经设置了一个AWS Glue搜寻器,以在S3中索引一组存储桶的CSV文件(然后创建一个Athena数据库)。

我的时间戳为“ Java”格式-如文档示例中所定义;

2019-03-07 14:07:17.651795

我尝试创建自定义分类器(和新的搜寻器),但是此列始终被检测为“字符串”而不是“时间戳”。

我不知为什么雅典娜/胶水不会将其检测为时间戳。

2 个答案:

答案 0 :(得分:0)

我认为问题可能是由于时间戳中的小数秒引起的。我发现this StackOverflow answer包含Glue识别为时间戳的模式(但是我没有找到模式的来源,我在Glue文档中找不到它们)。

使用a custom classifier使其了解您的时间戳格式可能会更好。

我不知道它将对您有多大帮助,因为您还必须说服Athena解析时间戳。让Glue将它们分类为字符串并在使用DATE_PARSE的视图中将字符串转换为时间戳可能会更好。

答案 1 :(得分:0)

您是否尝试过“蛮力” dyFrame.resolveChoice(specs = [('your_timestamp_string','cast:timestamp')])