在向hdfs上传/插入数据时是否涉及mappers reducer?

webghufk  于 2021-05-29  发布在  Hadoop
关注(0)|答案(3)|浏览(363)

在这里我有一个很大的困惑,当我们上传/插入/放入hadoop hdfs中的数据时,我们知道数据是基于块大小和复制因子存储在块中的。而且map reduce只在处理数据时起作用。
当我在一个表中插入任何数据时,我使用的是mrv2。我可以看到有map reduce进度条。那么这里的确切图片是什么。实际上,在将数据插入/上载到hdfs时是否涉及到Map器和还原器?

ccgok5k5

ccgok5k51#

从本地复制数据或将数据放入hdfs时,不使用mapreduce。

eqfvzcg8

eqfvzcg82#

是否需要mapreduce取决于写入操作的类型。
操作如 hdfs dfs -put 或者 -copyFromLocal 将数据从localfs写入hdfs时不要使用mapreduce。鉴于 DistCp ,使用Map器执行集群间/集群内hdfs数据复制。同样地, Sqoop 使用Map器将数据导入hdfs。Hive LOAD 语句在 INSERT 是的。
而且他们只是Map绘制者的工作。
当我在一个表中插入任何数据时,我使用的是mrv2
我假设您正在向配置单元表中插入数据。 INSERT 配置单元中的语句使用Map器。
在将数据插入/上传到hdfs时是否涉及Map器和还原器?
不总是这样。基于写操作,需要Map器。

q9rjltbz

q9rjltbz3#

hdfs客户机在与namenode协商块位置后直接写入datanode。无需Map器或还原器。
参考:hdfs读写架构
因为有一个进度条,并不意味着它是一个mapreduce进程。
如果写入hdfs的每个文件都是mapreduce进程,那么warn resourcemanager ui会记录所有文件,所以如果您不相信我,请查看这里

相关问题