草庐IT

副本Replication

全部标签

hadoop - Mapreduce 并行副本与 http 线程

我无法了解以下2个mapreduce作业配置属性之间的差异。mapreduce.reduce.shuffle.parallelcopiesmapreduce.tasktracker.http.threadsmapreduce.reduce.shuffle.parallelcopies是在复制(洗牌)阶段由reduce运行的并行传输的数量。mapreduce.tasktracker.http.threads是http服务器的工作线程数。这用于map输出获取。parallelcopies表示并行传输的数量,我猜它指的是一次将map输出并行传输到reducer。httpthreads表示要在

apache-spark - Hadoop/ Spark : How replication factor and performance are related?

在不讨论所有其他性能因素、磁盘空间和名称节点对象的情况下,复制因子如何提高MR、Tez和Spark的性能。如果我们有5个数据链,执行引擎将复制设置为5是否更好?什么是最好的和最坏的值(value)?这对聚合、连接和仅限map的作业有何好处? 最佳答案 Hadoop的主要租户之一正在将计算转移到数据。如果您将复制因子设置为大约等于数据节点的数量,则可以保证每台机器都能够处理该数据。但是,正如您提到的,namenode开销非常重要,更多的文件或副本会导致请求缓慢。在不健康的集群中,更多的副本也会使您的网络饱和。我从未见过高于5的数据,而

java - 将对象副本传递给 hadoop 中所有映射器的最佳实践

您好,我目前正在学习MapReduce并尝试使用hadoop1.0.4构建一个小型作业。我有一个停用词列表和一个模式列表。在我的文件被映射之前,我想将停用词加载到一个高效的数据结构中,比如map。我还想从我的模式列表中构建一个正则表达式模式。由于这些是串行任务,我想在映射之前执行它们并将每个映射器传递给它们可以读取/写入的对象的副本。我考虑过在我的驱动程序类中简单地使用一个带有getter的静态变量,但是使用java调用对象作为指针原则这是行不通的。我当然可以在传递对象之前克隆该对象,但这看起来确实不是一个好的做法。我阅读了一些有关分布式缓存的内容,但据我了解,它仅适用于文件而不适用于

java - Hadoop副本处理

Hadoop是否也处理副本?例如工作节点i,在mapper阶段,只处理存储在该机器上的数据。在数据(不是副本,而是原始数据)完成在mapper阶段处理或可能未完成后,是否存在机器i处理存储在上的副本数据的情况那台机器?或者只有当某个节点关闭时才使用副本? 最佳答案 是的,处理副本也会发生在称为推测执行的特定场景中。如果机器i花费太多时间来处理存储在该机器中的数据block,那么该作业的应用程序主机将针对存储在数据block中的另一个副本启动一个重复的并行映射器不同的机器。这个新的推测映射器将在存储副本的machinej中运行。无论哪

hadoop - 目标副本数为 10 但找到 3 个副本

我该如何解决这个问题?/tmp/hadoop-yarn/staging/ubuntu/.staging/job_1450038005671_0025/job.jar:UnderreplicatedBP-938294433-10.0.1.190-1450037861153:blk_1073744219_3398.TargetReplicasis10butfound3replica(s).当我在我的主节点中运行hadoopfsck/时,我得到了这个。我假设我应该更改conf中的.xml文件或类似的文件,我只是不知道要更改哪个文件。请注意,hdfs-site.xml中的dfs.replica

hadoop - 当并非所有副本都可以存储在集群上时,将文件存储在 Hadoop 上

有人可以告诉我如果我的Hadoop集群(复制因子=3)只剩下15GB的空间并且我尝试保存一个6GB大小的文件会发生什么吗?hdfsdfs-put6gbfile.txt/some/path/on/hadoopput操作是否会失败给出错误(可能是集群已满),或者它是否会保存6GB文件的两个副本并将无法保存在集群上的block标记为复制不足,从而占用整个15GB的剩余空间? 最佳答案 您应该能够存储文件。它将尝试容纳尽可能多的副本。当它无法存储所有副本时,它会发出警告但不会失败。结果,您将遇到复制不足的block。你会看到的警告是WARN

hadoop - "dfs.replication"和 "dfs.datanode.data.dir"配置如何在集群中工作?

我已按照Apache“单节点设置”说明在单节点上设置dfs.replication。但是后来我按照“ClusterSetup”进行操作,但它没有提到这个属性,所以我不知道这是要在Namenode上设置的属性,还是也/仅在Datanodes上设置的属性..我还读到在数据节点上的dfs.datanode.data.dir中设置多个(逗号分隔)路径将复制所有路径上的数据。所以我的问题是:dfs.replication将对哪个节点产生影响,如果dfs.datanode.data.dir的多个路径是设置,这些额外的独立复制是否仅针对每个数据节点,或者这些是否也以某种方式与dfs.replicat

Hadoop fsck 显示缺少副本

我正在运行具有两个数据节点和一个名称节点的Hadoop2.2.0集群。当我尝试在名称节点或任何数据节点上使用hadoopfsck命令检查系统时,我得到以下信息:TargetReplicasis3butfound2replica(s).我尝试更改hdfs-site.xml中的配置(dfs.replication为2)并重新启动集群服务。在运行hadoopfsck/时,它仍然显示相同的状态:TargetReplicasis3butfound2replica(s).请澄清,这是缓存问题还是错误? 最佳答案 通过设置dfs.replicat

hadoop - 在一致性 ONE 下读取查询期间 Cassandra 超时(需要 1 个响应,但只有 0 个副本响应)

我在一个有500000行的表上执行读取和更新查询,有时在处理大约300000行后出现错误,即使没有节点关闭也是如此。CassandratimeoutduringreadqueryatconsistencyONE(1responseswererequiredbutonly0replicaresponded)基础设施详情:拥有5个Cassandra节点、5个Spark节点和3个Hadoop节点,每个节点具有8个内核和28GB内存,Cassandra复制因子为3。Cassandra2.1.8.621|DSE4.7.1|星火1.2.1|Hadoop2.7.1。Cassandra配置:read_

Hadoop:FSCK 结果显示缺少副本

谁能告诉我如何修复丢失的副本?==========================================================================总大小:3447348383B目录总数:120文件总数:98区block总数(已验证):133(平均区block大小25919912B)最少复制block:133(100.0%)过度复制block:0(0.0%)复制不足的block:21(15.789474%)错误复制block:0(0.0%)默认复制因子:3平均block复制:2.3834586损坏block:0缺失副本:147(46.37224%)数据节点