草庐IT

buffer_memory

全部标签

hadoop - RM UI 中的 YARN "Memory Used"是 spark-shell 请求的两倍

spark-shell开始使用:spark-shell--masteryarn--executor-memory4G--num-executors100我期望yarn为spark-shell分配大约400GB的内存,但是当我转到RMUI时,它显示“已使用的内存”增加了大约804GB。我正在运行HDP2.5,在yarn-site.xml中将yarn.scheduler.minimum-allocation-mb设置为4096。对这是怎么发生的感到困惑。原来是spark内存开销和yarn内存分配机制的问题,查看:http://www.wdong.org/spark-on-yarn-wher

java - 为什么 HDFS 使用 Protocol Buffer 而不是 Java 序列化 API 进行序列化?

为什么HDFS使用ProtocolBuffer而不是Java序列化API?如果我想通过Java序列化将对象从一个数据节点发送到另一个数据节点怎么办?我已经尝试了几件事,但我收到以下错误:java.io.WriteAbortedException:写入中止;java.io.NotSerializableException:java.lang.Thread 最佳答案 因为具有外部架构定义的格式(如ProtocolBuffers)比生成非常冗长文件的内置Java序列化更节省空间。HDFS可以使用不同的格式来存储数据。提供最佳空间效率同时又

java - 如何在HBase中设置In-Memory

我已经在我的HDFS0.20.0上启动并运行了HBase0.94.0。我正在做作业,我必须将我的列族放入In-Memory我有两个列族No和Subject。将它们设置为In-Memory之后newHColumnDescriptor("No").setInMemory(true);newHColumnDescriptor("Subject").setInMemory(true);当我检查我的localhost:60010时,表的详细信息仍然显示IN_MEMORY=>'false'为什么会这样?我需要的不仅仅是设置.setInMemory(true) 最佳答案

hadoop - 如何使用 LZO 以外的压缩处理 Hadoop Map/Reduce 中的 Protocol Buffer 文件?

我想使用HadoopMap/Reduce来处理delimited使用LZO以外的东西压缩的ProtocolBuffer文件,例如xz或gzip。Twitter的elephant-bird库似乎主要支持读取LZO压缩的protobuf文件,因此似乎不能满足我的需求。是否有现有的库或标准方法来执行此操作?(注意:正如您从我选择的压缩算法中看到的那样,解决方案没有必要使protobuf文件可拆分。您的答案甚至不需要指定特定的压缩算法,但应该至少允许我提到的其中之一。) 最佳答案 您可能需要查看Hadoop的RAgzip补丁,以处理大型gz

hadoop - ArrayIndexOutOfBoundsException 在 MapOutputBuffer$Buffer.write 在 MapTask (Hadoop 2.7.1)

在Hadoop2.7.1上运行的Scalding驱Action业中出现ArrayIndexOutOfBounds的情况非常奇怪。下面的映射器日志转储。看起来Equator在spill2中以某种方式设置为负数。这正常吗?2015-08-1223:39:19,649INFO[main]org.apache.hadoop.mapred.MapTask:numReduceTasks:12015-08-1223:39:20,174INFO[main]org.apache.hadoop.mapred.MapTask:(EQUATOR)0kvi469762044(1879048176)2015-08

hadoop - "Container is running beyond physical memory limits"

我正在从事一项工作,其中Hive查询使用R文件,分布在集群上以在每个节点上运行。像那样:ADDFILEShdfs://path/reducers/my_script.RSEThive.mapred.reduce.tasks.speculative.execution=false;SETmapred.reduce.tasks=80;INSERTOVERWRITETABLEfinal_output_tablePARTITION(partition_column1,partition_column2)SELECTselected_column1,selected_column2,partit

java - 运行 mapreduce 程序时出现 "Java Heap space Out Of Memory Error"

我在运行mapreduce程序时遇到内存不足错误。如果我将260个文件保存在一个文件夹中并作为mapreduce程序的输入,它会显示Java堆空间内存不足错误。如果我只提供100文件作为mapreduce的输入,它运行良好。那么我如何限制mapreduce程序一次只处理100个文件(~50MB)。任何人都可以就这个问题提出建议......Nooffiles:318,Noofblocks:1(blocksize:128MB),Hadoop运行在32位系统上MyStackTrace:==============15/05/0511:52:47INFOinput.FileInputForma

hadoop - Cloudera 管理器 "Memory Overcommit Validation Threshold"

我目前有一个由3台机器组成的集群,它们都在运行Ubuntu,并且已经使用ClouderaManager进行了配置。查看集群后,我发现其中两台机器出现错误“MemoryOvercommitValidationThreshold”。一种是在机器只有3.8GB的物理内存时使用6.3GB的内存,另一种是在机器只有7.8GB的物理内存时使用11.6GB的内存。我认为这是因为这两个都被设置为数据节点和名称节点,但我不确定如何使它只使用可用的内存而不交换。我已经在sysctl.conf文件中将swappiness设置为0。我无法为名称节点使用另一台机器或向机器添加任何内存。知道如何降低内存使用量,以

java - Hadoop MapReduce : Strange Result when Storing Previous Value in Memory in a Reduce Class (Java)

如果我希望存储迭代器的当前值以与Reduce方法中迭代器的下一个值进行比较,Hadoop要求我克隆它而不是简单地将其引用分配给临时变量。我要将代码发布到我的reducer。你会看到两部分:Eclipse中测试的主要方法在Hadoop中执行的reduce方法你会注意到这两行代码是相同的,除了以下几点:main方法从我硬编码到其中的ArrayList获取Iterator,而reduce方法从mapper方法获取Iterator。main方法当然不会执行context.write。这是两者几乎共享的代码:MMIcurrentMMI=null;MMIpreviousMMI=null;Ultra

memory - Hadoop 名称节点内存使用情况

我对hadoopnamenode内存问题感到困惑。当namenode内存使用率高于一定百分比(比如75%)时,通过hadoopapi读写hdfs文件会失败(比如调用一些open()会抛出异常),请问是什么原因?有没有人有同样的事情?PS.这次namenode的diskio不高,CPU比较空闲。什么决定了namenode的QPS(每秒查询数)?非常感谢! 最佳答案 因为名称节点基本上只是一个管理HashMap的RPC服务器对于这些block,您有两个主要的内存问题:JavaHashMap成本很高,它的冲突解决(单独的链接算法)也很昂贵