与服务器一起的日子

  • mysql
  • linux
  • 高可用
  • nginx
与服务器一起的日子
冰冷的机器也熄不灭火热的心
  1. 首页
  2. centos
  3. 正文

hadoop技术探秘01——hadoop环境搭建03

2017年9月27日 543点热度 0人点赞 0条评论

上一篇当中,我们的准备工作做的差不多了,现在是时候开始我们的大数据之旅了;但是我们要规划一下我们的旅行路线。我们的六个节点(大数据的主机被称为节点)如何使用?

一:hadoop是由HDFS(分布式文件系统)提供数据存储,它会将数据切分成块进行存储,每个块由我们自己定义,比如我们可以把块定义为128M一个,当然hadoop作为离线的数据分析平台,处理的数据量很大(PB或者ZB级别数据),所以,实际生产环境一个块一般存储为处理数据的百分之一左右(这个看数据读写速度,机械硬盘的IOPS小,所以要考虑磁盘IO性能,涉及到了hadoop性能调优)

二:在数据存储的安全方面,最简单的就是备份数据,HDFS默认采用了“一个数据块,两个备份块”的方式,还采用了“机架感知”的方式来备份数据,将数据块,两个数据块放到一个机架的电脑上(类似本地备份,c盘放一份,d盘放一份),另一个块放到另一个机架的服务器上(网络备份,类似电脑存好了再放到百度云盘上面)

三:整个HDFS是基于网络进行存储,整个网络基于TCP,所以防火墙需要开放对应的端口,HDFS的初衷就是建立一个类似Google的存储系统,所以大型HDFS对于其网络的带宽要求很大

四:HDFS分为namenode和datanode两种节点;

namenode:负责管理文件系统的命名空间(Namespace),相当于领导。它维护着文件系统树(filesystem tree)以及文件树中所有的文件和文件夹的元数据(metadata)。管理这些信息的文件有两个,分别是Namespace 镜像文件(Namespace image)和操作日志文件(edit log),这些信息被Cache在RAM中,当然,这两个文件也会被持久化存储在本地硬盘。Namenode记录着每个文件中各个块所在的数据节点的位置信息,但是他并不持久化存储这些信息,因为这些信息会在系统启动时从数据节点重建。

datanode:文件系统的工作节点,他们根据客户端或者是namenode的调度存储和检索数据,并且定期向namenode发送他们所存储的块(block)的列表。

五:namenode如此重要,如何容错;

第一种方式是将持久化存储在本地硬盘的文件系统元数据备份(fsimage)。Hadoop可以通过配置来让Namenode将他的持久化状态文件写到不同的文件系统中。这种写操作是同步并且是原子化的。比较常见的配置是在将持久化状态写到本地硬盘的同时,也写入到一个远程挂载的网络文件系统(namenode的高可用)。

第二种方式是运行一个辅助的Namenode(Secondary Namenode)。 事实上Secondary Namenode并不能被用作Namenode它的主要作用是定期的将Namespace镜像与操作日志文件(edit log)合并,以防止操作日志文件(edit log)变得过大。通常,Secondary Namenode 运行在一个单独的物理机上,因为合并操作需要占用大量的CPU时间以及和Namenode相当的内存。辅助Namenode保存着合并后的Namespace镜像的一个备份,万一哪天Namenode宕机了,这个备份就可以用上了。

六:配置我们的hadoop的HDFS;

单节点配置(针对只能开启一台虚拟机的同学):

1.配置hadoop目录下的etc/hadoop/core-site.xml():

<configuration>
           <property>
                  <name>fs.defaultFS</name>
                  <value>hdfs://localhost:9000</value>
            </property>
</configuration>

2.配置hadoop目录下的etc/hadoop/hdfs-site.xml:

<configuration>
             <property>
                      <name>dfs.replication</name>
                      <value>1</value>
             </property>
</configuration>

这样,“单机版”的HDFS就配置完成了。

七:如何启动?

1.格式化:

bin/hdfs namenode -format

2.启动HDFS:

sbin/start-dfs.sh

3.查看namenode的网页:

http://hadoop网址:9870/

======================分割线======================

我发现我每次写都会写超字数,以后一定改进。

标签: hadoop HDFS 大数据
最后更新:2017年9月27日

jhin

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2024 与服务器一起的日子. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang