zoukankan      html  css  js  c++  java
  • 2020年暑假 (3)

    开始学习Hadoop

    1、什么是hadoop

    hadoop中有3个核心组件:

      分布式文件系统:HDFS —— 实现将文件分布式存储在很多的服务器上

      分布式运算编程框架:MAPREDUCE —— 实现在很多机器上分布式并行运算

      分布式资源调度平台:YARN —— 帮用户调度大量的mapreduce程序,并合理分配运算资源

     

    2.hdfs整体运行机制

    hdfs:分布式文件系统

    hdfs有着文件系统共同的特征:

      1、有目录结构,顶层目录是:  /

      2、系统中存放的就是文件

      3、系统可以提供对文件的:创建、删除、修改、查看、移动等功能 

    hdfs跟普通的单机文件系统有区别:

      1、单机文件系统中存放的文件,是在一台机器的操作系统中

      2、hdfs的文件系统会横跨N多的机器

      3、单机文件系统中存放的文件,是在一台机器的磁盘上

      4、hdfs文件系统中存放的文件,是落在n多机器的本地单机文件系统中(hdfs是一个基于linux本地文件系统之上的文件系统)

    hdfs的工作机制:

      1、客户把一个文件存入hdfs,其实hdfs会把这个文件切块后,分散存储在N台linux机器系统中(负责存储文件块的角色:data node)<准确来说:切块的行为是由客户端决定的>

      2、一旦文件被切块存储,那么,hdfs中就必须有一个机制,来记录用户的每一个文件的切块信息,及每一块的具体存储机器(负责记录块信息的角色是:name node)

      3、为了保证数据的安全性,hdfs可以将每一个文件块在集群中存放多个副本(到底存几个副本,是由当时存入该文件的客户端指定的)

    综述:一个hdfs系统,由一台运行了namenode的服务器,和N台运行了datanode的服务器组成!

     

    3.搭建hdfs分布式集群

     这一部分是多台在虚拟机上进行操作,有很多细节需要注意到,简单来说有这几部分:

      1.准备n台linux服务器

      2.修改各台及其的主机名和ip地址

      3.配置linux服务器的基础软件环境

        关闭防火墙

        安装jdk

        集群内主机的域名映射配置

      4.安装hdfs集群

        上传安装包,配置环境变量

        修改配置文件(hadoop-env.sh  core-site.xml  hdfs-site.xml)

      5.启动HDFS

        初始化name的的元数据目录

        启动namenode进程

        端口访问

    4.遇到的问题

      1.Xshell连接不上Linux服务,同时在服务器内部运行Shell无法查询出ip,通过重启网卡(service network restart)解决

      2.运行Hadoop命令出现警告:

        Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

      需要升级gilbc,用到的命令依次为:

        wget  http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz 

        tar -xf glibc-2.17.tar.gz

        cd glibc-2.17

        mkdir build; cd build

        ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

        make -j 8

        make  install

  • 相关阅读:
    关于Design Complier/Library Compiler的跌坑(坑爹)记录
    博客暂时停更
    简单的Verilog测试模板结构
    存储器的设计/建模
    静态时序分析的三种分析模式(简述)
    Linux系统的基本使用
    Modelsim的使用——复杂的仿真
    Python-第三方库requests
    MySQL查询结果写入到文件总结
    MySQL创建函数报“ERROR 1418 ”错误,不能创建函数
  • 原文地址:https://www.cnblogs.com/ywqtro/p/13509151.html
Copyright © 2011-2022 走看看