Hadoop整理

Hadoop整理

  1. 一台服务器登录到另一台
    a) Ssh + ip 例如ssh 192.168.56.100
    b) 登录其他计算机,都要输入密码 免密的目的就是能够方便登录

  2. Hadoop 分布式 启动的时候
    a) 启动首先在namenode启动所有服务
    b) 因为你datanode 是别的机器,不同服务器,必须有访问权限
    c) 所以需要设置免密 否则在启动每台节点的时候,都会提示你输入密码

  3. 不超过十台配置,可以使用ssh-copyid命令去实现免密

  4. 如果集群超过十台,使用expect脚本去实现

  5. ssh-copyid 命令
    a) 首先要生成.ssh文件夹,这个文件夹在root下
    b) Ssh-keygen -t rsa 其目的是生成 公钥和私钥文件 id_rsa.pub id.rsa
    c) Ssh-copyid -i id_rsa.pub root@ip
    d) 一般情况下,普通用户 useradd
    e) 下ssh-keygen命令时,会生成一个图像
    f) 实现自身免密 一般 cat id_rsa.pub>>authorized_keys(当前目录是/root/.ssh)
    g) Chomod 600 authorized_keys
    h) 第一个是属主 第二个属组 第三个其他用户
    i) 所有用户免密

  6. 搭建hadoop
    a) 1.jdk环境
    b) 2.免密
    c) 3.修改hosts文件
    d) 4.修改配置文件
    e) 5.启动hadoop集群

  7. Jdk
    a) 版本1.8
    b) 环境变量

  8. Hadoop文件(版本2.7.3)
    a) 1.core-site.xml 核心文件
    i. 指定NN位置
    ii. 指定产生临时文件数据的文件夹
    b) 2.hdfs-site.xml
    i. 指定副本数量
    ii. 进阶(配置多个NN)
    iii. 进阶(配置SN节点)
    c) 3.mapred-site.xml
    i. 指定hadoop集群的资源管理框架为yarn
    d) 4.yarn-site.xml
    i. 指定ResourcesManage所在的节点
    ii. 正常配置localhost 配置localhost 即代表 NN作为resourcesManage所在节点
    e) 5.hadoop-env.sh
    i. 指定jdk所在的目录
    f) 6./etc/profile
    i. 配置hadoop环境变量
    ii. 其中包括hadoop common库所在的路径 Hadoop标准库所在路径
    iii. Hadoop资源其他jar包所在路径
    g) 7.slaves
    i. 指定其他DN所在的ip
    ii. 本身是localhost 需要修改

  9. Hadoop文件系统基本命令
    a) Hdfs dfs -mkdir -p /usr/soft 创建hdfs上的多级目录
    b) Hdfs dfs -ls -R / 递归查看所有目录(一般不用)
    c) Hdfs dfs -ls /usr/soft 查看具体的目录
    d) Hdfs dfs get /usr/soft/aaa.txt 从hdfs上下载aaa.txt到linux本地
    e) Hdfs dfs put /usr/soft/bbb.txt 将bbb.txt从linux本地上传到hdfs
    f) Hdfs dfs -text /usr/soft/bbb.txt 查看bbb.txt 详细内容
    g) Hdfs dfs -cat /usr/soft/aaa.txt 查看aaa.txt 内容
    h) Hdfs dfs -rm /usr/soft/aaa.txt 删除命令
    i) 注意:当hadoop集群非正常关闭时,可能会自动进入安全模式
    i. 退出hadoop安全模式命令:
    ii. Hdfs dfsadmin -safemode leave

  10. HDFS 上传文件过程
    a) 1.客户端发送上传请求到NN
    b) 2.NN识别 上传的文件是否在相应目录下,或者相应文件,目录是否存在
    c) 3.NN发送可以写入文件的反馈给客户端
    d) 4.客户端将请求发送到DN(根据客户端来定)DN是具体存放数据的位置
    e) 5.DN将上传信息根据备份策略,发送到所有存放副本的DN
    f) 6.加入我们又三台DN DN1通知DN2,DN2通知DN3,然后开始发送DN3确认后发送相应给DN2,DN2确认后,发送相应给DN1,然后DN1通知NN响应完毕,NN告知DN,开始写入,DN1写入完后,将副本发给DN2,然后依次发给DN3,当所有节点写完后,发送反馈给NN。
    g) NN确认写完后,由SN配合NN进行数据操作日志文件的合并,该文件叫fsimage,当fsimage过大时,会合并成edit文件,并删除原有的fsimage文件,合并完成后,NN将目录写入自身元数据中。
    h) PS:SN并不是NN的备份,而是协助NN生成数据操作的日志文件的节点。
    i) 谈及文件恢复:
    j) 当文件因不可控因素丢失时,可以通过fsimage或者edit文件 进行读写操作的恢复

  11. HDFS 副本机制:
    a) 一般 副本设置为3
    b) 如果集群分为两台机架
    c) 第一个副本,建立在同一机架的不同机器上
    d) 第二个副本,建立在不同机架的不同机器上
    e) 第三个副本,建立在与第二副本不同的机器上
    f) 目的:保证HDFS分布式文件系统的高可用性

  12. HDFS
    a) 分布式文件系统
    b) Hadoop1.x 块大小:64M
    c) Hadoop2.x 块大小:128M

  13. Maven
    a) 工程管理工具,能够方便的构建pom.xml工程配置文件
    b) 在pom.xml下可以增加 我们需要的jar 也就是依赖
    c)
    d) https://mvnrepository.com/
    e)
    f)
    g)
    h)

  14. Hadoop jar wc.jar com.kgc.driver.WCDriver /输入文件目录 /输出目录
    a) 输出目录必须不存在

  15. MR maven wc

    MR:

  16. 分布式计算框架

  17. 继承mapper reducer即可

Hive:搭建在hadoop上的壳 用于简化mapreduce操作
元数据:存放表结构的表
内部表,外部表
内部表:删除表 数据 表结构都删除
外部表:只删除表结构 不删除数据文件
内部表在加载数据文件时,只能加载hive维护目录下的文件
外部表可以任意加载hdfs上的文件

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值