hive中的多行json文件查询

vu8f3i0k  于 2021-06-27  发布在  Hive
关注(0)|答案(1)|浏览(358)

我知道大多数json-serde格式 .json 每行存储一条记录的文件。
我有一个s3桶多行缩进 .json 我想使用AmazonAthena查询的文件(不控制源代码)(尽管我认为这同样适用于hive)。
有没有一个serde格式可以解析多行缩进的 .json 文件夹?
如果没有serde格式来执行此操作:
有没有处理这样的文件的最佳实践?
我是否应该计划使用不同的工具(如python)将这些记录展平?
有没有一种编写自定义serde格式的标准方法,这样我就可以自己编写了?
示例文件正文:

[
  {
    "id": 1,
    "name": "ryan",
    "stuff: {
      "x": true,
      "y": [
        123,
        456
      ]
    },
  },
  ...
]
j5fpnvbx

j5fpnvbx1#

不幸的是,没有支持多行json内容的serde。有一个专门的cloudtrail serde,它支持与您类似的格式,但是它只针对cloudtrail json格式进行了硬编码——但至少它表明了至少在理论上是可能的。不过,目前还没有办法编写自己的serdes来与雅典娜一起使用。
你将无法使用雅典娜来使用这些文件,你必须先使用emr、glue或其他工具将它们重新格式化为json流文件。

相关问题