hadoop源码剖析
从小白到大神的必经之路
Ai之家-开箱测评
这个作者很懒,什么都没留下…
展开
-
Hadoop源码剖析11-Hadoop的IPC实现过程
1. ConnectionIPC连接(Connection)是IPC客户端和服务器关系的一个抽象,一个IPC客户端在调用服务器上的方法前,需要和服务器建立一个连接。由于客户端对连接的抽象与服务器端对连接的抽象不太一样,连接必须区分为客户端连接类Client.Connection和服务器连接类Server.Connection,它们各自提供了客户端和服务器管理连接需要的相关信息和方法。Ha...原创 2020-02-16 15:26:41 · 4356 阅读 · 0 评论 -
Hadoop源码剖析10-Hadoop的IPC代码实现
什么是HadoopIPC?在Hadoop中,不同节点间使用RPC机制进行通信,在Java中比较典型的RPC是RMI(Remote Method Invocation)的调用方式,虽然Hadoop使用Java语言实现的,但是Hadoop并没有使用RMI实现RPC,而是实现了一套自己独有的节点通信机制,称为Hadoop IPC(Inter-Process Communication,进程间通信)。...原创 2020-01-07 07:47:51 · 4401 阅读 · 0 评论 -
Hadoop源码剖析09-javaNIO(一)
1.基本的java套接字(socket)客户端所做的事情:连接远程机器发送数据接受数据关闭连接服务器所做的事情:绑定端口监听入站数据在所绑定的端口上接受来自远程机器的连接socket源码public class Socket{//构造函数public Socket();//连接到远程函数public void connect(SocketAddress end...原创 2020-01-02 22:44:42 · 4212 阅读 · 0 评论 -
Hadoop源码剖析08-java远程过程调用(二)
java的RMI需要实现remote接口下面我来演示一个 规范的 开发RMI接口的方法规范package com.czxy.mapreduce.demo01;import java.rmi.RemoteException;import java.rmi.Remote;/** * @author 550894211@qq.com * @version v 1.0 * @da...原创 2019-12-31 22:29:06 · 4157 阅读 · 0 评论 -
Hadoop源码剖析07-远程过程调用(一)
为什么要用远程过程调用作为典型的分布式系统,Hadoop中各个实体间存在着大量的交互,远程过程调用让用户可以像调用本地方法一样调用另外一个应用程序提供的服务,而不必设计和开发相关的信息发送、处理和接收等具体代码,是一种重要的分布式计算技术,它提高了程序的互操作性,在Hadoop的实现中得到广泛的应用.RPC原理简要地说,RPC就是允许程序调用位于其他机器上的过程(也可以是同一台机...原创 2019-12-30 22:49:13 · 4223 阅读 · 0 评论 -
Hadoop源码剖析06-Snappy压缩算法
什么是snappy?snappy的前身是Zippy,Google表示该算法库对性能做了调整,针对64位x86处理器进行了优化并在英特尔酷睿i7处理器单一核心上实现了至少每秒250MB的压缩性能和每秒500MB的解压缩性能,使用 New BSD协议开源setInput()方法setlnputO方法为压缩器提供数据,在做了一番输入数据的合法性检査后,先将finished标志位置为fals...原创 2019-12-29 10:11:22 · 5491 阅读 · 0 评论 -
hadoop源码剖析05-压缩与解压缩
什么是压缩一般来说,计算机处理的数据都存在一些冗余度,同时數据中间,尤其是相邻数据间存在着相关性,所以可以通过一些有別于原始编码的特殊编码方式来保存数据,使数据占用的存储空间比较小,这个过程一般叫压缩.和压缩对应的概念是解压编,就是将被压缩的数据从特殊编码方式还原为原始数据的过程.压缩广泛应用于海量数据处理中,对数据文件进行压缩,可以有效减少存储文件所需的空间,并加快数据在网络上或者到...原创 2019-12-29 09:40:34 · 4336 阅读 · 0 评论 -
hadoop源码剖析04-典型的Writable与序列化
1.java基本类型对应的writable类型目前java基本类型对应的writable封装都继承自 writableComparable他们是可比较的,同时,他们拥有get()和set()用来值的获取和设置2.可变的VintWritable与LongWritableVintWritable/** 一个WritableComparable,用于以可变长度格式存储的整数值。 *这...原创 2019-12-25 22:49:57 · 4190 阅读 · 0 评论 -
hadoop源码剖析03-hadoop的序列化与反序列化机制
序列化的作用作为一种持久化的格式一个对象被序列化以后,他的编码可以被存储到磁盘上,供以后反序列化用作为一种通讯数据格式序列化结果可以从一个正在运行的虚拟机,通过网络被传递到另一个虚拟机上作为一种拷贝丶克隆(clone)机制将对象序列化到内存的缓存区中,然后通过反序列化,可以得到一个对已存在的对象进行深拷贝的新对象在分布式数据处理中,主要使用以上提到的前两种功能:数...原创 2019-12-25 21:57:07 · 4167 阅读 · 0 评论 -
hadoop源码剖析02-configuration类
configuration主要功能: 读取hadoop的配置文件setQuietmode() -->用来设置加载配置的模式,默认为true,在加载配置文件中不输出日志信息 public synchronized void setQuietMode(boolean quietmode) { this.quietmode = quietmode; }addR...原创 2019-12-23 22:33:27 · 4280 阅读 · 0 评论 -
hadoop源码剖析01
先不说刨不刨源码什么的,今天先来了解一下大数据的基本生态圈hadoop生态组成hadoop Commoncommon为hadoop提供了一些常用的工具类,如系统配置文件configuration,远程过程调用RPC,序列化机制,和hadoop抽象文件系统FileSystem等Avro数据序列化系统Zookeeper分布式的服务框架,解决分布式计算中一致性问题HDFS海量数据存...原创 2019-12-23 22:28:49 · 4134 阅读 · 0 评论
分享