如何在Hadoop HDFS中管理JSON

yhqotfr8  于 2022-12-09  发布在  HDFS
关注(0)|答案(2)|浏览(322)

HadoopHDFS如何管理JSON文件?
假设一些JSON文件存储在HDFS中,并且每个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是不可能的 *。

at0kjp5o

at0kjp5o1#

Hadoop/HDFS除了放置文件块之外,不会“管理”任何文件。
如果你想对数据运行查询,你需要使用一个工具,如Hive,Presto,Drill,Spark,Flink等,或者你可以改变你的文件上传程序,写入HBase。
每个JSON都与其他JSON不同
大多数查询工具都喜欢半结构化数据,所以JSON的键最好是相似的。如果你真的需要存储随机的JSON对象,那么最好使用Mongo这样的文档数据库。(Hadoop不是Mongo的替代品)

gijlo24d

gijlo24d2#

我认为最容易与HDFS一起使用的工具是spark。它为您提供了许多丰富的工具,包括许多丰富的文件格式,这些格式的性能比将文本信息存储为文本、CSV或JSON要好得多。我建议您在处理大数据时使用非文本文件格式。

相关问题