AWS胶水:忽略JSON属性中的空格

时间:2019-01-15 16:51:02

标签: amazon-web-services aws-glue

我有一个带有JSON文件的数据集。这些JSON的某些条目在

之类的条目中有空格。
mplayer

我已经由多个不同的搜寻器搜寻了此数据集,以尝试获取所需的架构。由于某种原因,在我的某个爬网中,空格被删除了,但是在尝试复制该过程时,我无法删除要删除的空格,并且在Athena中进行查询时出现此错误

{
    'propertyOne': 'something',
    'property Two': 'something'
}

位置x是JSON条目中“属性”和“两个”之间空格的位置。

我只希望能够排除此字段或在爬网时删除空格,但是我不确定如何删除。我无法更改JSON格式。感谢您的帮助

2 个答案:

答案 0 :(得分:0)

我相信,在这种情况下,您唯一的选择是创建自己的custom JSON classifier,以仅选择希望爬网程序添加到数据目录中的那些属性。

即如果只想检索propertyOne,则可以使用将JSONPath表达式指定为$.propertyOne

还请注意,您的JSON应该用双引号引起来,单引号也可能在解析数据时引起问题。

答案 1 :(得分:0)

这实际上是aws gule json分类器的错误,因为它在嵌套属性中不能很好地发挥作用。语法错误出现在搜寻器生成的架构中,而不是json中。它会生成如下内容:

struct<propertyOne:string, property Two:string>

“属性2”中的空间应已由搜寻器转义。此时,为表生成DDL也不起作用。我们还面临着这个问题,并正在寻找解决方法