hive中的多行json文件查询

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

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

  1. [
  2. {
  3. "id": 1,
  4. "name": "ryan",
  5. "stuff: {
  6. "x": true,
  7. "y": [
  8. 123,
  9. 456
  10. ]
  11. },
  12. },
  13. ...
  14. ]
j5fpnvbx

j5fpnvbx1#

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

相关问题