HDFS之深入简出(一)
分布式文件系统HDFS
一:概述
1.HDFS设计目标
2.HDFS核心组件
3.HDFS副本机制
4.HDFS环境搭建
5.HDFS shell命令 java api
6.HDFS读写流程
7.HDFS优缺点
二:
思考:如何创建一个分布式文件系统
重点:文件以多副本的方式进行存储

缺点:文件不管多大都存在一个节点上

1.缺点不管文件多大,在进行数据处理的时候很难进行并行处理,节点有可能成为网络瓶颈,很难进行大数据处理
2.负载均衡很难,每个节点利用率很低
二:分布式文件系统HDFS,来源于Google的GFS论文
发表在2003年,HDFS是GFS的克隆版
1.HDFS是非常巨大的分布式文件系统
2.运行在普通的廉价的机器上面
3.易扩展,为用户提供不错的文件的存储服务(130M的文件,拆分成128M和2M,一般情况还有3个副本)

1.架构
1个Master(NameNode/NN)带N个Slaves(DataNode/DN)
HDFS/YARN/HBase
重点:一个文件将会被拆分成多个Block
blocksize:128M
130M ==> 将会被拆分成2个Block: 128M 和 2M

NameNode:
NameNode是对文件系统的操作,而DataNode是对block的操作
NameNode:是对客户端请求和响应,和元数据(文件的名称,副本的系数,Block存放的DataNode)的管理
DataNode:
DataNode:1.存储用户文件对应的数据块(Block)
2.要定期向NameNode发送心跳信息,汇报本身及其所有block信息,健康状况

一个典型是,一台机器上运行一个NameNode,集群中的其他的机器,每一个都会运行一个DataNode
1个NameNode + N个DataNode
这个架构也并不排除在一台机器上运行多个DataNode,但是在生产环境上是不建议这么做
三:HDFS副本机制

replication factor : 副本因子,副本系数
一个文件里面的所有的block前面的都是一样,只有最后一个不一样
四:HDFS副本存放的策略

HDFS之深入简出(一)的更多相关文章
- 深入简出的nginx
深入简出的nginx hosts的简单介绍 nginx的简单介绍 hosts介绍 谈到nginx我们不得不说hosts hosts的存放在C:\Windows\System32\drivers\etc ...
- Vuex 2.0 深入简出
最近面试充斥了流行框架Vue的各种问题,其中Vuex的使用就相当有吸引力.下面我就将自己深入简出的心得记录如下: 1.在vue-init webpack project (创建vue项目) 2.src ...
- 大数据系列博客之 --- 深入简出 Shell 脚本语言(高级篇)
首先声明,此系列shell系列博客分为四篇发布,分别是: 基础篇:https://www.cnblogs.com/lsy131479/p/9914747.html 提升篇:https://www.cn ...
- 分布式处理框架MapReduce的深入简出
1).MapReduce的概述 2).MapReduce 编程模型 3).MapReduce架构 4).MapReduce编程 Google MapReduce论文,论文发表于2004年 Hadoop ...
- YARN 的深入简出
1.YARN的产生背景 2.YARN的执行流程 3.YARN的概述 4.YARN的环境搭建 5.YARN的架构 6.如何提交作业到YaRN上执行 YARN的产生MapReduce1.x存在多种问题单节 ...
- 深入简出mysql--第一部分
第二章: 1.sql分类 DDL(Data Definition Languages)语句:数据定义语言,这些语句定义了不同的数据段.数据库.表.列.索引等数据库对象的定义. 常用的语句关键字主要包括 ...
- 大数据系列博客之 --- 深入简出 Shell 脚本语言(提升篇)
首先声明,此系列shell系列博客分为四篇发布,分别是: 基础篇:https://www.cnblogs.com/lsy131479/p/9914747.html 提升篇:https://www.cn ...
- 大数据系列博客之 --- 深入简出 Shell 脚本语言(基础篇)
首先声明,此系列shell系列博客分为四篇发布,分别是: 基础篇:https://www.cnblogs.com/lsy131479/p/9914747.html 提升篇:https://www.cn ...
- hadoop深入简出(二)
1.上传文件 Hadoop fs -put hello.txt / 2.查看上传的文件 hadoop fs -ls / hadoop fs -text /hello.txt 两个命令都可以 3.创建文 ...
随机推荐
- N的多次方Python实现
N的多次方描述编写一个程序,计算输入数字N的0次方到5次方结果,并依次输出这6个结果,输出结果间用空格分隔.其中:N是一个整数或浮点数.print()函数可以同时输出多个信息,采用如下方法可以使用空格 ...
- twisted reactor执行流程
#reactorbase的主循环 def mainLoop(self): while self._started: try: while self._started: # Advance simula ...
- oracle 相关操作
1,SqlPlus 的使用 1.01,软登入:sqlplus /nolog 1.02,登入 dba 用户:sqlplus /as sysdba 2,用户相关操作 2.01,创建用户:create us ...
- msimg32.lib不用为绝对路径发愁
msimg32.lib不用为绝对路径发愁 以前是每个工程添加bcb绝对路径下的 D:\Program Files (x86)\Borland\CBuilder6\Lib\Psdk\msimg32.li ...
- 八皇后问题C语言解法
偶遇八皇后问题,随即自己写了一个仅供参考 #include<stdio.h> #include<math.h> #define SIZE 8 void Circumsribe( ...
- 设计模式入门——Head First
设计模式是被前人发现.经过总结形成了一套某一类问题的一般性解决方案.使用模式最好的方式是:把模式装进脑子,然后在设计和已有的应用中,寻找何处可以使用它们.以往是代码复用,现在是经验复用. 从模拟鸭子游 ...
- Servlet开发
源地址:http://www.cnblogs.com/xdp-gacl/p/3760336.html 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun ...
- Extjs获取Form中的数据
var win = Ext.create("Ext.window.Window",{ width:300, height:200, title:"日期选择窗口" ...
- Java如何创建参数个数不限的函数
可变的参数类型,也称为不定参数类型.英文缩写是varargus,还原一下就是variable argument type.通过它的名字可以很直接地看出来,这个方法在接收参数的时候,个数是不定的. pu ...
- Android EditText 操作。。。
EditText请求焦点三连击... editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.req ...