当我试图理解hadoop
架构时,我想弄清楚一些问题。
当有大数据输入时,HDFS会把它分成很多 block (每个 block 64MB或128MB)然后复制很多次存储在内存块中,对吧?
但是,我仍然不知道MapReduce
在哪里工作。是用分合数据来存储的吗?或者用它来返回一些有用的输出?
最佳答案
在 HDFS 中存储数据与使用 MapReduce 范式分析数据是完全不同的事情。
当上传到 HDFS 时,大数据文件被拆分成 block 存储在数据节点中,每个 block 被复制的次数与配置的复制因子(默认为 3)一样多。数据拆分就像将文件除以配置的 block 大小一样简单。
如上所述,MapReduce 是分析大数据文件以获得增值信息时的一种编程范式。简而言之,每个文件 block 都分配给一个映射任务,以便所有映射器对 block 执行相同的操作;完成后,输出的部分结果将发送到 reducer,以便以某种方式聚合数据。
关于hadoop - hadoop如何存储数据和使用MapReduce?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29882326/