Hadoop之 hdfs 系统
一、NameNode维护着2张表:
1.文件系统的目录结构,以及元数据信息
2.文件与数据块列表的对应关系
存放在fsimage中,在运行的时候加载到内存中的。
操作日志写到edits中
二、DataNode
使用block形式存储。在hadoop2中,默认的大小是128MB。
使用副本形式保存数据的安全,默认的数量是3个。
使用shell访问hdfs
bin/hdfs dfs –xxx
三、RPC(remote procedure call)
远程过程调用要有一个服务端(对外暴露方法供调用者使用),要有一个客户端(主动调用方法)。
问题1:简述HDFS
答:1.HDFS是hadoop 的文件存储系统分布式存储,采用总分模式,在业界有一个2级映射的方式,1数据与分区的映射,2.分区与机器的映射。
2.数据存储是总分结构,有专门存储元数据的namenode ,有专门存储数据的datanode。数据在datanode中是以数据块block的形式存储的。数据与block 之间是一种映射,block 与节点datanode 之间是一种映射,这2个映射在namenode 中存储着,同事,namenode 还接受用户的请求,进行读或写操作的时候,虽然经过namenode 但最终要通过datenode读取。
3.Datanode有很多节点,这样才能扩大数据的存储。在生产环境中,一般通过副本方式保证数据的安全,工业上一般副本数量为3.
问题2:RPC 理解
RPC是一个远程过程调用,remote procedure call .在hadoop 中是指不同进程之间的通信,不同虚拟机之间的调用,通过代理机制实现,是一种CS的结构 ,C作为调用端发送请求调用服务端的接口。接口在服务端实现。当服务端接收到请求,然后去找相应的函数,然后将处理结果返回给客户端,而客户端一直挂起等待服务端的结果。 服务端一直等待状态。
RPC在hadoop 中的体现:
Hadoop 整体体系是建立在rpc基础之上的。 比如hdfs中,有客户端,服务端,
1 客户端(用户代码)与namenode 之间通过rpc通讯,客户端通讯所依赖的接口是clientprotocol ,通常调用一些方法,写,移动,列表等方法。
2.namenode与datanode 之间也是一种rpc机制,接口是datanodeprotocol ; namenode 作为客户端不同的发送心跳请求指的是datanodeprotocol中的heartbeat 方法,在这个方法中datanode把自己的状态信息(使用以及剩余信息)发送给namenode。
3. datanode 之间通讯也是rpc机制。
Hadoop之 hdfs 系统的更多相关文章
- 【Hadoop】HDFS - 创建文件流程详解
1.本文目的 通过解析客户端创建文件流程,认知hadoop的HDFS系统的一些功能和概念. 2.主要概念 2.1 NameNode(NN): HDFS系统核心组件,负责分布式文件系统的名字空间管理.I ...
- Hadoop之——又一次格式化hdfs系统的方法
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46352939 又一次格式化hdfs系统的方法: (1)查看hdfs-ste.xml ...
- 重新格式化hdfs系统的方法
重新格式化hdfs系统的方法: (1)查看hdfs-ste.xml <span style="font-size:18px;"><property> < ...
- 搭建maven开发环境测试Hadoop组件HDFS文件系统的一些命令
1.PC已经安装Eclipse Software,测试平台windows10及Centos6.8虚拟机 2.新建maven project 3.打开pom.xml,maven工程项目的pom文件加载以 ...
- Hadoop操作hdfs的命令【转载】
本文系转载,原文地址被黑了,故无法贴出原始链接. Hadoop操作HDFS命令如下所示: hadoop fs 查看Hadoop HDFS支持的所有命令 hadoop fs –ls 列出目录及文件信息 ...
- Hadoop学习-HDFS篇
HDFS设计基础与目标 硬件错误是常态.因此需要冗余 流式数据访问.即数据批量读取而非随机读写,Hadoop擅长做的是数据分析而不是事务处理(随机性的读写数据等). 大规模数据集 简单一致性模型.为了 ...
- 非常不错 Hadoop 的HDFS (Hadoop集群(第8期)_HDFS初探之旅)
1.HDFS简介 HDFS(Hadoop Distributed File System)是Hadoop项目的核心子项目,是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文件的需求而开 ...
- Hadoop之HDFS及NameNode单点故障解决方案
Hadoop之HDFS 版权声明:本文为yunshuxueyuan原创文章.如需转载请标明出处: http://www.cnblogs.com/sxt-zkys/QQ技术交流群:299142667 H ...
- Hadoop记录-hdfs转载
Hadoop 存档 每个文件均按块存储,每个块的元数据存储在namenode的内存中,因此hadoop存储小文件会非常低效.因为大量的小文件会耗尽namenode中的大部分内存.但注意,存储小文件所需 ...
随机推荐
- Java学习笔记(五)——google java编程风格指南(中)
[前面的话] 年后开始正式上班,计划着想做很多事情,但是总会有这样那样的打扰,不知道是自己要求太高还是自我的奋斗意识不够?接下来好好加油.好好学学技术,好好学习英语,好好学习做点自己喜欢的事情,趁着自 ...
- Git.Framework 框架随手记--ORM项目工程
前面已经简单介绍过了该框架(不一定是框架),本文开始重点记录其使用过程.可能记录的内容不是太详尽,框架也可能非常烂,但是里面的代码句句是实战项目所得.本文非教唆之类的文章,也非批判之类的文章,更不是炫 ...
- [AHOI2013]找硬币(搜索)
[Ahoi2013]找硬币 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 348 Solved: 114[Submit][Status] Descri ...
- CSharpThinking---C#版本总结(附加三)
C#版本总结: 日期 框架.net Visual Studio C# CLR 2002.2 1.0 2002 1.0 1.0 2003.4 1.1 2003 1.2 1.1 2005.11 2. ...
- 第三十五课:Ajax详解
一个完整的Ajax请求: var xhr = new (self.XMLHttpRequest || ActiveXObject)("Microsoft.XMLHTTP"); ...
- angular的编辑器tinymce
angular的插件的确挺少的, 编辑器更是少, ui-tinymce是angular-ui推荐的一款编辑器(GIT: https://github.com/angular-ui/ui-tinymce ...
- 一套简单可依赖的Javascript库
还是[百度]的产品——Tangram不是我偏心,百度不是我亲戚这东西看上去确实不错 Tangram是一套简单可依赖的Javascript库,主要分为Base和Component两部分.Base提供了开 ...
- 传智168期JavaEE就业班 day04-dom
* 课程回顾: * js语法 * js的动态函数和匿名函数 * js动态函数 Function new Function(); * 匿名函数:没有名称的函数,起个名称 var add = functi ...
- 【转】Dubbo_与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
原文链接:http://blog.csdn.net/congcong68/article/details/41113239 互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服 ...
- Java基础-转义字符
Java中的字符占两个字节.一些常用的转义字符: ①\r表示接受键盘输入,相当于按下了回车键: ②\n表示换行: ③\t表示制表符,相当于Table键: ④\b表示退格键,相当于Back Space键 ...