老李分享:大数据测试之HDFS文件系统
老李分享:大数据测试之HDFS文件系统? ???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,得到所有数据块信息,以及数据块对应的所有数据服务器的位置信息尝试从某个数据块对应的一 组数据服务器中选出一个,进行连接。数据被一个包一个包发送回客户端,等到整个数据块的数据都被读取完了,就会 断开此链接,尝试连接下一个数据块对应的数据服务器,整个流程,依次如此反复,直到所有想读的都读取完了为 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Perl入门简明教程
- Caused by: java.sql.SQLException: Value '0000-00-00
- 如何在我的Spring 4.0 RestFul Web服务上实现Spring Securi
- Delphi Rest.JSON JsonToObject仅适用于f变量
- groovy 直接将给定的文本转换成Java中的Class<?>对象从而
- Perl 利用Win32::OLE操作Excel 技巧和诀窍
- 妙用interface来判断是否实现某些函数
- Golang以OO的方式实现二叉查找树
- AI眼中的历史:用人工智能挖掘旧报纸里的英国现代史
- 敏捷BI已成大势所趋!国内首家大数据可视化厂商永洪科技完成