poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标。如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200。POPTEST是国内最早在大数据测试领域中探索的机构,已经形成了先进的行业课程体系和教学方法。poptest陆续会推出大数据方面的知识分享。

Hadoop主要由HDFS和MapReduce引擎两部分组成。

http://hadoop.apache.org/

从0.20.X分支发展出hadoop 1.0.X版 目前是稳定版本。生产环境优先使用。

分布式文件系统(DFS)

1、是一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的用户分享文件和存储空间。

2、对用户透明。用户看来就像访问本地的磁盘一样。

3、容错性。即使系统中某个节点宕机,整体系统仍然可以持续运作而不会有数据丢失。

HDFS的架构

主从(Master-Slave),master在系统中只有一个,slave在系统中可以有多个。master维护namenode。

slave维护datanode。

Namenode:整个文件系统的管理节点。负责文件系统名称空间的管理与维护,客户文件操作的控制及具体

存储任务的管理与分配。元数据的管理。元数据(fsimage:存储某一时段NameNode内存元数据信息;edits:

操作日志文件;fstime:保存最近一次chechpoint的时间;version:标志性文件,表明前三个创建成功)。

hdfs-site.xml的dfs.name.dir的属性。

DateNode:提供真实文件数据的存储服务。文件分块(Block),默认块大小64MB。Replication:默认有两个

副本。有三个文件保证文件的安全。在hdfs.site.xml的dfs.replication配置。

SecondaryNameNode:从NameNode上下载元数据信息(fsimage,edits),然后把二者合并,生成新的fsimage,

在本地保存,并将其推送到NameNode,同时重置NameNode的editis.SecondaryNameNode默认安装在NameNode

节点上,但这样不安全,可以移动位置。

HDFS数据流-写文件流程:

1、客户端把数据缓存到本地临时文件夹

2、客户端联系NameNode,申请文件命名空间,文件权限等,NodeNode分配DataNode,DateNode依照客户端的位置

被排列成一个有着最近物理距离的序列。

3、与序列的第一个数据服务器建立Socket连接,发送请求头,然后等待回应,一次下传,客户端得到回包,流水线建

立成功。

4、正式发送数据,以4K为大小传送。

HDFS数据流-读文件流程

客户端联系NameNode,得到所有数据块信息,以及数据块对应的所有数据服务器的位置信息尝试从某个数据块对应的一

组数据服务器中选出一个,进行连接。数据被一个包一个包发送回客户端,等到整个数据块的数据都被读取完了,就会

断开此链接,尝试连接下一个数据块对应的数据服务器,整个流程,依次如此反复,直到所有想读的都读取完了为止。

老李分享:大数据测试之HDFS文件系统的更多相关文章

  1. 大数据测试之初识Hadoop

    大数据测试之初识Hadoop POPTEST老李认为测试开发工程师是面向测试的开发,也就是说,写代码就是为完成测试任务服务的,写自动化测试(性能自动化,功能自动化,安全自动化,接口自动化等等)的cas ...

  2. 大数据测试之hadoop集群配置和测试

    大数据测试之hadoop集群配置和测试   一.准备(所有节点都需要做):系统:Ubuntu12.04java版本:JDK1.7SSH(ubuntu自带)三台在同一ip段的机器,设置为静态IP机器分配 ...

  3. 老李分享:接口测试之jmeter

    老李分享:接口测试之jmeter   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.移动端自动化测试很多人把他仅仅理解成appu ...

  4. 我要进大厂之大数据Hadoop HDFS知识点(2)

    01 我们一起学大数据 老刘继续分享出Hadoop中的HDFS模块的一些高级知识点,也算是对今天复习的HDFS内容进行一次总结,希望能够给想学大数据的同学一点帮助,也希望能够得到大佬们的批评和指点! ...

  5. 我要进大厂之大数据Hadoop HDFS知识点(1)

    01 我们一起学大数据 老刘今天开始了大数据Hadoop知识点的复习,Hadoop包含三个模块,这次先分享出Hadoop中的HDFS模块的基础知识点,也算是对今天复习的内容进行一次总结,希望能够给想学 ...

  6. 大数据测试之Hadoop的基本概念

    poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标,也是国内最早探索大数据测试培训的机构,开发了独有的课程体系.如果对课程感兴趣,请大 ...

  7. Java+大数据开发——HDFS详解

    1. HDFS 介绍  • 什么是HDFS 首先,它是一个文件系统,用于存储文件,通过统一的命名空间--目录树来定位文件. 其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角 ...

  8. 大数据(1)---大数据及HDFS简述

    一.大数据简述 在互联技术飞速发展过程中,越来越多的人融入互联网.也就意味着各个平台的用户所产生的数据也越来越多,可以说是爆炸式的增长,以前传统的数据处理的技术已经无法胜任了.比如淘宝,每天的活跃用户 ...

  9. 大数据学习——hdfs客户端操作

    package cn.itcast.hdfs; import org.apache.commons.io.IOUtils; import org.apache.hadoop.conf.Configur ...

随机推荐

  1. devexpress表格控件gridcontrol实现纵向标头

    1.devexpress控件gridcontrol中的标头默认是横向的,如果要实现纵向标头应该怎么做呢.通过官网的资料整理了一个简单的案例,给大家分享一下.运行效果图如下: 2.数据绑定代码如下: D ...

  2. 【WC2015】混淆与破解 (Goldreich-Levin 算法)

    这个嘛= =直接贴VFK的题解就行了吧,感觉自己还是差别人太多 http://vfleaking.blog.uoj.ac/blog/104 讲得挺明白了的说,但还是挺难理解的说,中间实现部分简直不要太 ...

  3. android列表停止滚动,加载图片,较为通用的一种办法

    在Adapter的itemView里面,判断列表是否在滚动中,其实是比较麻烦的,可能耦合性会比较严重. 所以考虑了下,是否能在itemView里面,检测列表的滚动状态,并监听停止状态加载图片,实现it ...

  4. Mysql删除表格之后,进行恢复

    一:存在在PHPmyAdmin下找到表格导出然后再导入 二:当没有备份时,使用binlog功能进行恢复 先进入到/etc/my.cnf文件中. 在文件中添加一句:log-bin=mysql-bin 然 ...

  5. java线程学习(一)

    1.简介 java基础知识部分线程创建的三种方式.线程执行的样例. 代码地址:http://git.oschina.net/blue_phantom/javaj 包位置:package com.blu ...

  6. request.RequestContextListener

    由于是使用spring mvc来做项目,因此脱离了HttpServletRequest作为参数,不能够直接使用request,要想使用request可以使用下面的方法: 在web点xml中配置一个监听 ...

  7. CentOs下安装PHP环境的步骤

    前言 在CentOs环境下安装php开发环境,需要首先安装一些源文件,然后使用yum命令直接安装即可,在Fedora 20 源中已经有了PHP的源,直接可以使用以下命令安装即可: # yum inst ...

  8. SQLServer提取日期中的年月日及其他格式

    提取年:datepart(yy,getdate())提取月:datepart(mm,getdate())提取日:datepart(dd,getdate())提取日期格式:Select CONVERT( ...

  9. JAVA基础:自己构造一个按递增排列的数组,用户输入一个数,插入适当位置

  10. js数组,字符串常用方法汇总(面试必备)

    字符串: 1.concat() – 将两个或多个字符的文本组合起来,返回一个新的字符串.  2.indexOf() – 返回字符串中一个子串第一处出现的索引.如果没有匹配项,返回 -1 .  3.ch ...