HDFS数据组织和数据块.pptx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
朱佳 目录0102HDFS数据组织和数据块获取集群的机架信息 HDFS数据组织和数据块1 HDFS数据组织和数据块 HDFS将数据组织成文件和目录,这与Linux文件系统的数据组织形式相似。可以通过被称为FSshell的命令行接口来访问HDFS数据。FSshell的使用方法与其他Linux的shell类似,如bash shell。脚本语言也可以使用FS shell命令访问HDFS上的数据。HDFS同时为应用程序提供了Java API接口,也可以通过HTTP浏览器查看HDFS文件。 HDFS数据组织和数据块 Hadoop的数据存储组织单位是数据块,即可以写入磁盘或从磁盘读取的最小数据块。用户一般处理文件级别的数据,但是fsck命令这类维护工具处理的是块级别。默认情况下,Hadoop 的块大小为128MB,更大的块大小如256MB也很常见。Hadoop使用较大的块大小的原因是因为其被设计为处理大量的数据,较大的数据块大小可以最大限度地降低磁盘搜索和数据传输的成本,这主要取决于传输数据的速率(磁盘传输速率)。Hadoop 将会在集群的DataNode中分发数据块。如果文件小于块大小,它只占用它所需的空间,而不是整个块。 HDFS数据组织和数据块 当客户端向HDFS写入数据时,会先将数据写入到本地临时文件。一 旦本地临时文件超过一个文件块的大小,客户端与NameNode联系,并请求在HDFS上创建一个文件。NameNode会将文件名加入命名空间,并在HDFS中为其分配一个数据块。NameNode会告知客户端文件块的数量以及客户端可以存储和复制数据的DataNode列表。 获取集群的机架信息2 获取集群的机架信息在Hadoop的高可用的配置中,集群通常有一个active NameNode和一个Standby NameNode同时运行。DataNodes 同时向两个NameNode发送块报告。这样,Standby NameNode就能够随时接管activeNameNode。 获取集群的机架信息可以通过fsck和dfsadmin命令来测试是否正确地配置了机架信息。fsck 命令会在输出的最后显示集群机架的数量信息。dfsadmin -report 命令也可以显示集群中每个节点的机架信息HDFS的可靠性以及性能,取决于它的副本的位置。机架感知的副本放置策略提高了数据的可靠性和可用性。如果通过定义机架拓扑脚本来配置机架拓扑结构,那么即使整个机架失效,也可以保护数据的可用性。 获取集群的机架信息Hadoop 的数据块的第一个副本放在客户端运行的同一个节点上,其他的两个副本分别放在不同机架的不同节点上。(如果客户端是集群外部的,那么第一个块被放置在集群上随机选择的节点上)。因此,突然丢失整个机架不会导致数据丢失。丢失多个机架的多个节点理论上可能会导致数据丢失,但这不太可能发生。假设集群节点分布在三个机架上,如果没有为集群配置机架拓扑脚本,则Hadoop不会采用任何文件块放置策略,那么写入的文件将被随机复制到集群中的任意三个节点上。这是因为,在没有配置机架拓扑脚本的情况下,Hadoop 不知道节点属于哪个机架,它会默认所有的节点在同一机架。

文档评论(0)

胡老师K12教育坊 + 关注
实名认证
内容提供者

从业20余年,中学高级教师,擅长公开课PPT制作等。

1亿VIP精品文档

相关文档