我们正在获取各种JSON / XML作为输入,其中模式总是在不断发展。我想在Hadoop / Hive环境中使用ORC或Parquet格式处理它们以获得性能提升。
我知道以下实现同一目标的共同风格: 使用JSONSerde或XMLSerde库,首先使用这些serde创建hive表。稍后选择*字段查询将在每个xml / json配置单元表上触发,以保存为orc或另存为另一个表格。成功完成后,我可以删除这些Serde表和XML / JSON数据。
这样做的另一个好方法是什么?
答案 0 :(得分:0)
正如您所建议的,这是将JSON / XML数据脱机转换为镶木地板格式的最常用方法。 但另一种方法可能是解析JSON / XML并为每个JSON记录创建Parquet Groups。基本上:
打开JSON文件 阅读每个单独的记录 打开另一个文件 从#2中读取的记录创建一个Parquet组 将镶木地板组写入#3中创建的文件 对文件中的所有记录执行此操作 关闭这两个文件。
我们为我们用过的一个案例想出了这样一个转换器。