如何在 Hadoop HDFS 中管理 JSON
How to manage JSON in Hadoop HDFS
Hadoop如何HDFS管理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。
我认为与 HDFS 一起使用的最简单的工具是 spark。它为您提供了许多丰富的工具,包括许多丰富的文件格式,这些文件格式比将文本信息存储为文本、CSV 或 JSON 的性能要好得多。我建议您在处理大数据时研究使用非文本文件格式。
Hadoop/HDFS 除了放置块之外不“管理”任何文件。
如果你想运行查询数据,你需要使用Hive、Presto、Drill、Spark、Flink等工具,或者你可以改变你的文件上传过程写入HBase .
each of these JSONs is different from the others
大多数查询工具更喜欢半结构化数据,因此 JSON 的键最好相似。如果你真的需要存储随机 JSON 对象,那么最好使用像 Mongo 这样的文档数据库。 (Hadoop 不是 Mongo 的替代品)
Hadoop如何HDFS管理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。
我认为与 HDFS 一起使用的最简单的工具是 spark。它为您提供了许多丰富的工具,包括许多丰富的文件格式,这些文件格式比将文本信息存储为文本、CSV 或 JSON 的性能要好得多。我建议您在处理大数据时研究使用非文本文件格式。
Hadoop/HDFS 除了放置块之外不“管理”任何文件。
如果你想运行查询数据,你需要使用Hive、Presto、Drill、Spark、Flink等工具,或者你可以改变你的文件上传过程写入HBase .
each of these JSONs is different from the others
大多数查询工具更喜欢半结构化数据,因此 JSON 的键最好相似。如果你真的需要存储随机 JSON 对象,那么最好使用像 Mongo 这样的文档数据库。 (Hadoop 不是 Mongo 的替代品)