DataNode的无GC行为(HDFS)
12年3月3月2日月2日2日日
22:35:25
Hadoop的datanode可以只使用很少内存(xmx1g),而且可以通过
jstat
-gcutil <pid> 1000 1000
来看进程的垃圾回收情况,会发现FCT,YGCT都是非常少的。
对例如是写操作:
可以在DataXceiver(据说,这个名字是错的...^_^)看到:
writeData(DataInputStream
in),
这个负责接收网络数据,然后传到后续的mirror
servers,这个是网络来,网络去;
然后写本地文件时,还是通过ByteBuffer,这个buf是网络和本地硬盘的同一buffer。
解释一下ByteBuffer,是java
NIO 指定的封疆大臣。
简单地来说,使用这个,避免了java
heap上的new/gc~
分享到:
相关推荐
在读数据场景中,如果遇到DataNode宕机或数据损坏,HDFS通过DFSInputStream的readWithStrategy()方法进行处理。当读取数据异常时,系统会尝试连接其他可用的DataNode,并对读取的数据进行校验。如果数据校验失败,...
- **Datanode 01**: IP地址为10.10.97.142,主机名为gc04vm12。 - **Datanode 02**: IP地址为10.10.97.144,主机名为gc04vm14。 所有服务器均采用Cent-OS操作系统,防火墙已关闭,SSH服务已开启并设为自动启动。每...
- **Datanode 01**: IP地址10.10.97.142,主机名gc04vm12 - **Datanode 02**: IP地址10.10.97.144,主机名gc04vm14 - **操作系统**: 所有节点均运行CentOS操作系统。 - **防火墙**: 所有节点的防火墙均处于关闭...
- 大规模数据处理:如日志分析、用户行为分析等。 - 内容分发:视频、图片等媒体文件的存储与分发。 8. **HDFS读写流程**: - **写入流程**:客户端发起写请求,NameNode分配DataNode存储,DataNode间进行流水线...
`hdfs-site.xml`则用来配置HDFS的具体参数,包括副本数量、块大小、NameNode和DataNode的相关设置。`mapred-site.xml`则是针对MapReduce任务的配置,涉及调度器、任务内存分配等。 HDFS调优主要包括以下几个方面: ...
- HDFS配置文件hdfs-site.xml:设置了HDFS的副本数量(dfs.replication),名称节点的数据目录(dfs.namenode.name.dir),以及数据节点的数据目录(dfs.datanode.data.dir)。 - MapReduce配置文件mapred-site....
选项A错误,DataNode节点上的磁盘不需要做RAID1,HDFS本身通过数据复制来保证可靠性。选项B正确,HDFS可以通过balance操作平衡磁盘负载。选项C错误,DataNode之间通常建议数据盘一致以保持平衡。选项D正确,Active和...
Hadoop 单机系统 安装配置13#Hadoop 文件下载和解压13#配置 hadoop-env.sh 环境变量13#Hadoop Common组件 配置 core-site.xml13#HDFS NameNode,DataNode组建配置 hdfs-site.xml14#配置MapReduce - JobTracker ...
这里需要注意的是,如果发现CMS垃圾回收的效果不够理想,可以考虑使用G1垃圾回收器(G1GC),并通过一系列参数来调整其行为,例如: - `-XX:+UseG1GC`: 启用G1垃圾回收器。 - `-XX:MaxGCPauseMillis=200`: 设置...
*.sink.ganglia.slope = jvm.metrics.gcCount=zero,jvm.metrics.memHeapUsedM=both *.sink.ganglia.dmax = jvm.metrics.threadsBlocked=70,jvm.metrics.memHeapUsedM=40 namenode.sink.ganglia.servers = 239.2....
该环节涉及到Hadoop文件的下载和解压、配置hadoop-env.sh环境变量、Hadoop Common组件以及HDFS NameNode和DataNode组件的配置、MapReduce JobTracker和TaskTracker启动配置等。系统安装配置完成后,需要进行启动执行...
- 增加NameNode和DataNode的堆内存。 - 选择合适的垃圾回收策略。 ##### 12.4.3 使用客户端元数据缓存提高读取性能 - 使用客户端元数据缓存可以有效提高读取性能,特别是在频繁访问同一文件的情况下。 ##### ...
- **GC算法**:包括标记-清除、复制、标记-整理等算法。 - **垃圾回收器**:如Serial、ParNew、Parallel Scavenge等。 - **分代收集理论**:将内存划分为新生代和老年代,采用不同的回收策略。 #### 序列化 - **...