问题标签 [input-split]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hadoop - mapreduce 中的 InputSplits
我刚刚开始学习 Mapreduce 并且有一些我想回答的问题。开始:
1)案例1:FileInputFormat作为输入格式。具有多个要处理的文件的目录是输入路径。如果我有 n 个文件,所有文件小于 hadoop 集群中的块大小,为 map reduce Job 计算多少拆分?
2) 我在一个名为 MyFileInputFormat 的类中扩展 FileInputFormat,并重写 isSplitable 以始终返回 false。输入配置同上。在这种情况下我会得到 n 次拆分吗?
3)如果说n个文件中的1个文件略大于集群的块大小,我会在第二种情况下得到n+1个分割吗?
在此先感谢您的帮助!
mapreduce - MapReduce 基础知识
我有一个 300mb 的文本文件,块大小为 128mb。因此将创建总共 3 个块 128+128+44 mb。纠正我 - 对于 map reduce,默认输入拆分与可以配置的 128mb 块大小相同。现在记录阅读器将读取每个拆分并创建键值对,键是偏移量,值是单行。(TextInputFormat) 问题是,如果在我的块的最后一行,块结束但该行确实在另一个块中结束,那么该行的其余部分是否会从不同的节点中取出,或者剩余的行是否会在另一个节点中运行。另外,第二个节点如何理解它的第一行已经被处理并且不需要再次处理。
例如,这是 stackoverflow。这(块 1 结束/输入拆分)是一个 map reduce 示例。(行结束)
hadoop - Calculating input splits in MapReduce
A file is stored in HDFS of size 260 MB whereas the HDFS default block size is 64 MB. Upon performing a map-reduce job against this file, I found the number of input splits it creates is only 4. how did it calculated.? where is the rest 4 MB.? Any input is much appreciated.
hadoop - hadoop中如何确定两对Mapreduce作业的mapper数量
我正在使用两对 MapReduce 作业。第一个 MapReduce 对的输出输入到第二个 MapReduce 对。我对第二个 MapReduce 作业使用的映射器数量有点困惑。我知道这取决于输入拆分,但我的问题是如何确定输入拆分的数量?
假设我使用 4 个减速器,减速器的输出是 part-r-00000 到 part-r-00003。Hadoop 是否会将所有这 4 个分区组合成一个输入文件,然后根据块大小将其划分为输入拆分?
比如说,块大小=64MB
第一个 MapReduce 作业的输出文件大小:
部分-r-00000:20MB,部分-r-00001:30MB,部分-r-00002:50MB,部分-r-00003:28MB
Hadoop 会将所有这 4 个输出文件合并为一个大小为 128MB(20MB+30MB+50MB+28MB=128MB)的文件,然后创建 2 个输入拆分(128MB/64MB)以由两个映射器处理,还是使用 4 个映射器我们有来自第一个减速器的输出的 4 个分区(part-r-00001-part 到 r-00003)?