Hadoop 如何管理JSON文件?
假设某些JSON文件存储在HDFS中,并且每个JSON与其他JSON不同,我想输出通过查询创建的JSON。就像MongoDB。
例如,我向您展示了这个伪代码:
FOR EACH json IN hdfs:
name = json.NAME
IF json HAS this_attribute:
x = json.this_attribute.value
CREATE A CSV THAT CONTAINS ALL INFO REQUIRED (name, x)
RETURN CSV在MongoDB中,生成这个输出是最容易的。但我对一个不可能使用MongoDB的项目感兴趣。
发布于 2021-11-15 19:11:08
Hadoop/HDFS除了放置块之外,不会“管理”任何文件。
如果您想对数据运行查询,您需要使用诸如Hive、Presto、data、Spark、Flink等工具,或者您可以修改您的文件上传过程以写入HBase。
这些JSON中的每一个都与其他的不同。
大多数查询工具更喜欢半结构化数据,因此最好使用JSON的键类似。如果您确实需要存储随机的JSON对象,那么最好使用像Mongo这样的文档数据库。(Hadoop不是蒙古人的替代品)
发布于 2021-11-15 14:06:35
我认为在HDFS中最容易使用的工具是火花。它为您提供了许多丰富的工具,包括许多比将文本信息存储为文本、CSV或JSON更好的富文件格式。我建议您在使用大数据时使用非文本的文件格式进行调查。
https://stackoverflow.com/questions/69975437
复制相似问题