从零学习Hadoop之Hadoop的RPC机制

从零学习Hadoop之Hadoop的RPC机制
说在前面的话 一般我们说了解的RPC(Remote Procedure Call,远程过程调用)机制都要面对两个问题: 对象调用方式; 序列/反序列化机制。 RPC架构如图所示: Hadoop自己实现了简单的RPC组件,依赖于Hadoop Writable类型的支持。 Hadoop Writable接口要求每个实现类都要确保将本类的对象正确序列化(writeObject)与反序列化(readObject)。因此,Hadoop RPC使用Java动态代理与反射实现对象的调用方式(...

Hadoop性能调优之部分参数设置技巧

Hadoop性能调优之部分参数设置技巧
这里主要针对Hadoop1中Mapreduce的性能调优,Hadoop2的MapReduce的性能调优大同小异。 这里主要涉及的参数包括: HDFS: dfs.block.size Mapredure: io.sort.mb io.sort.spill.percent mapred.local.dir mapred.map.tasks & mapred.tasktracker.map.tasks.maximum mapred.reduce.tasks & mapred.tasktracker.reduce.tasks.maximum mapred.reduce.max.attempts mapred.reduce.parallel.copies map...

从零学习Hadoop之HDFS架构

从零学习Hadoop之HDFS架构
上一篇《从零学习Hadoop之认识HDFS》简单介绍了一下HDFS。已经了解到HDFS为Hadoop这个分布式计算框架提供高性能、高可靠、高可扩展的存储服务。HDFS架构是一个典型的主从架构,包括一个NameNode节点(主节点)和多个DataNode(从节点)并提供应用程序访问接口。 NameNode是整个文件系统的管理节点,它负责文件系统名字空间(NameSpace)的管理与维护,同时负责客户端文件操作的控制以及具体存储任务的管理...

LinkedHashSet和LinkedHashMap源码剖析

LinkedHashSet和LinkedHashMap源码剖析
总体介绍 如果你已看过前面关于HashSet和HashMap,以及TreeSet和TreeMap的讲解,一定能够想到本文将要讲解的LinkedHashSet和LinkedHashMap其实也是一回事。LinkedHashSet和LinkedHashMap在Java里也有着相同的实现,前者仅仅是对后者做了一层包装,也就是说LinkedHashSet里面有一个LinkedHashMap(适配器模式)。因此本文将重点分析LinkedHashMap。 LinkedHashMap实现了Map接口,即允许放入key为null的元素...

大话Future模式

大话Future模式
说在前面的话 什么是Future 模式呢?对于多线程,如果线程A要等待线程B的结果,那么线程A没必要等待B,直到B有结果,可以先拿到一个未来的Future,等B有结果是再取真实的结果。其实这个模式用的很多,比如浏览器下载图片的时候,刚开始是不是通过模糊的图片来代替最后的图片,等下载图片的线程下载完图片后在替换。 思想 实例 Main:系统启动,调用Client发出请求 package com.ifcoding.future; pub...

Java并发容器之ConcurrentHashMap精讲

Java并发容器之ConcurrentHashMap精讲
ConcurrentHashMap是Java5中新增加的一个线程安全的Map集合,可以用来替代HashTable。对于ConcurrentHashMap是如何提高其效率的,可能大多人只是知道它使用了多个锁代替HashTable中的单个锁,也就是锁分离技术(Lock Stripping)。实际上,ConcurrentHashMap对提高并发方面的优化,还有一些其它的技巧在里面(比如你是否知道在get操作的时候,它是否也使用了锁来保护?)。 ConcurrentMap 提供其他原子 put...

从零开始搭建Hadoop-0.20.2平台的详细过程

从零开始搭建Hadoop-0.20.2平台的详细过程
说在前面的话 本来是之前写在我的另外一篇博客cndwzone.com的文章,时间是2014年6月份的,现在借用一下,由于当时对搭建Hadoop-0.20.2版本记录的比较详细,当然回过头看看,还是存在一些问题,比如SSH是为什么了什么,里面的密钥起到什么作用,当时没有深究,可能会对原理性的东西进行学习记录。 由于硬件限制,我在这里说的是hadoop伪分布式模式(Pseudo-Distributed Mode),其实网上已经有很多教程,不...

从零学习Hadoop之HDFS的Federation机制

从零学习Hadoop之HDFS的Federation机制
上一篇介绍了Hadoop2中的新特性HA机制,是由于单节点故障而开发的,并且提到随着集群规模的变大,NameNode成为性能的瓶颈,而这次介绍一下HDFS的Federation机制就是为了解决这两个问题而开发的。 在Hadoop1的HDFS架构中,HDFS集群只有一个名字空间,并且只有单独的一个NameNode,这个NameNode负责对这单独的一个名字空间进行管理。这也正是单点失效(Single Point Failure)的隐患所在。 可得:HDFS Federa...

从零学习Hadoop之文件在HDFS中的读取和写入

从零学习Hadoop之文件在HDFS中的读取和写入
在《从零学习Hadoop之Hadoop的RPC机制》中介绍了Hadoop的RPC机制,本文接着讲述文件是如何在HDFS中进行读取和写入的,注意其中使用到RPC的地方。 文件的读取 客户端以及与之交互的HDFS、NameNode、DataNode的读取数据流如下图所示:     文件读取的过程如下: 使用HDFS提供的客户端开发库Client,向远程的NameNode发起RPC请求。 NameNode会视情况返回文件的部分或者全部Block列表,对于每个Blo...

操作系统之哲学原理-导论

操作系统之哲学原理-导论
说在前面的话 得知《操作系统之哲学原理》这本书,貌似也是知乎。所谓基础不牢地动山摇,操作系统原理乃是计算机学科非常重要的基础学科之一,也是程序员进阶必备。本着加强记忆,有助思考,决定将我所看、所想有所记,以读书笔记形式来记录。 人造与神造 要有学习操作系统的恰当思维:“哲学”,其为一种思维方式或者一种生活方式。 “什么是计算机的根本特征”?答案:“人造”。 稍微引申一下,计算机学科就是...
Copyright © If Coding 保留所有权利.   Theme  Ality   

用户登录