-1
我有一个以JSON格式存储在Azure BLOB中的海量数据集。有些应用程序不断向其添加新数据。 BLOB被组织在分区中,如对大量JSON数据集的临时查询
/dataset={name}/date={YYYY-MM-DD}/one_or_more_json_files
数据段不遵循任何特定模式。 JSON字段名称不是一致的字母大小写。一些JSON行可能被破坏。
有人可能会建议一种很好的方式来查询这些数据,而无需事先定义架构。我愿做这样
select * from my_huge_json_dataset where dataset='mydataset' and date>'2015-04-01'
的东西,但没有设定表
我首先考虑的是HIVE明确的架构,但事实证明,SERDE需要的模式来定义创建表。 json_tuple可能是一个答案,但它是区分大小写的,如果遇到格式不正确的json行则会崩溃。
我也在考虑Apache Drill和Pig,但没有经验,希望得到一些指导。
它支持分区或疑问,只有单一的文件? – irriss
@Ruslan是的,您可以查询单个文件或目录(假设所有文件具有非常类似的json结构),并且还可以通过对数据进行分区来优化查询[请参阅此示例](https://drill.apache.org/文档/如何对分区数据/) –