zoukankan      html  css  js  c++  java
  • 错题整理

    zookeeper集群的角色和作用?

    Leader:Zookeeper集群工作的核心,事务请求(写操作)的唯一调度和处理者,保证集群事务处理的顺序性,集群内各个服务器的调度者;对于 create, setData, delete 等有写操作的请求,则需要统一转发给leader 处理.leader 需要决定编号、执行操作,这个过程称为一个事务。  Follower:处理客户端非事务(读操作)请求,转发事务请求给Leader,参与集群Leader选举投票。  Observer:对于访问量比较大的集群,可以新增观察者角色, 处理客户端非事务(读操作)请求,不参与leader的选举投票。 

    Zookeeper有哪几种节点类型?

    永久(Persistent):客户端和服务器端断开连接后,创建的节点不删除 临时(Ephemeral):客户端和服务器端断开连接后,创建的节点自己删除 (1)永久化目录节点 客户端与Zookeeper断开连接后,该节点依旧存在 (2)永久化顺序编号目录节点 客户端与Zookeeper断开连接后,该节点依旧存在,只是Zookeeper给该节点名称进行顺序编号 (3)临时目录节点 客户端与Zookeeper断开连接后,该节点被删除 (4)临时顺序编号目录节点 客户端与Zookeeper断开连接后,该节点被删除,只是Zookeeper给该节点名称进行顺序编号。

    以下TextInputFormat怎么进行文件切分?

    TextInputFormat根据文件大小将文件拆分成splits,如果单个文件较小小于128的1.1倍,则每个文件为一个split,并将文件按行分割形成<key,value>对,如果单个文件较大。超过block块(128M)默认大小得1.1倍,则会将文件切分为多个split。这一步由MapReduce框架自动完成,其中偏移量包括了回车所占的字符数。将分割好的<key,value>对交给用户定义的map方法进行处理,在map方法中根据业务逻辑处理<key,value>后生成新的<key,value>对输出。 

    描述MapReduce不合适对哪些场景的使用?

    1).MapReduce不适合做低延迟数据访问场景的使用。

    (2).MapReduce不适合存储大量小文件。

    (3).MapReduce不支持多用户写入及任意修改文件

    yarn有哪几部分组成,作用分别是什么?调度器主要有哪三种,hadoop默认的是哪一种?

    ResourceManager、NodeManager、ApplicationMaster和Container等组件构成; ResourceManager:处理客户端请求、监控NodeManager、启动或监控ApplicationMaster、资源的分配与调度 NodeManager:管理单个节点上的资源、处理来自ResourceManager的命令、处理来自ApplicationMaster的命令 ApplicationMaster:负责数据的切分、为应用程序申请资源并分配给内部的任务、任务的监控与容错 Container:Container是YARN中的资源抽象,它封装了某个节点上的多维度资源,如内存、CPU、磁盘、网络等。 FIFO、Capacity Scheduler(容量调度器)和Fair Scheduler(公平调度器)。Hadoop2.7.2默认的资源调度器是Capacity Scheduler(容量调度器)

    请简述ZooKeeper的选举机制?

    半数机制:集群中半数以上机器存活,集群可用。所以Zookeeper适合安装奇数台服务器。 (1)全新集群选举:  假设目前有5台服务器,每台服务器均没有数据,它们的编号分别是1,2,3,4,5,按编号依次启动,它们的选举过程如下:  服务器1启动,给自己投票,然后发投票信息,由于其它机器还没有启动所以它收不到反馈信息,服务器1的状态一直属于LOOKING。  服务器2启动,给自己投票,同时与之前启动的服务器1交换结果,由于服务器2的编号大所以服务器2胜出,但此时投票数没有大于半数,所以两个服务器的状态依然是LOOKING。  服务器3启动,给自己投票,同时与之前启动的服务器1,2交换信息,由于服务器3的编号最大所以服务器3胜出,此时投票数正好大于半数,所以服务器3成为领导者,服务器1,2成为Follower。  服务器4启动,给自己投票,同时与之前启动的服务器1,2,3交换信息,尽管服务器4的编号大,但之前服务器3已经胜出,所以服务器4只能成为Follower。  服务器5启动,后面的逻辑同服务器4成为Follower。 (2)非全新集群选举  对于运行正常的zookeeper集群,中途有机器down掉,需要重新选举时,选举过程就需要加入数据ID、服务器ID和逻辑时钟。  其中:   数据ID:数据新的version就大,数据每次更新都会更新version。   服务器ID:就是我们配置的myid中的值,每个机器一个。   逻辑时钟:这个值从0开始递增,每次选举对应一个值。 如果在同一次选举中,这个值是一致的。   这样选举的标准就变成:         逻辑时钟小的选举结果被忽略,重新投票;         统一逻辑时钟后,数据id大的胜出;         数据id相同的情况下,服务器id大的胜出;   根据这个规则选出leader。

    使用Java编写代码,将hdfs上/a.txt文件下载到本地 提示信息:Configuration、FileSystem、FSDataInputStream、FileOutputStream、IOUtils(IOUtils.copyBytes、IOUtils.closeStream)

     public void customGet() throws IOException {         Configuration configuration = new Configuration();         FileSystem fileSystem = FileSystem.get(                 URI.create("hdfs://jinghang100:9000"),                 configuration,                 "jinghang"         );         //设置HDFS数据文件的路径         Path hdfsPath = new Path("/a.txt");         //使用HDFS文件系统对象打开文件         FSDataInputStream inputStream = fileSystem.open(hdfsPath);         //指定要下载到本地的文件路径         String localPath = "C:\Users\Administrator\Desktop\filetest\a.txt";         //将hdfs系统文件下载值本地         FileOutputStream outputStream = new FileOutputStream(localPath);         IOUtils.copyBytes(inputStream,outputStream,configuration,true);         IOUtils.closeStream(inputStream);         IOUtils.closeStream(outputStream);         fileSystem.close();     }

    Hadoop 由开源的JAVA程序所编写。

    查看hadoop的日志文件:

     Cat hadoop-root-datanode-hadoop01.log

    less  hadoop-root-datanode-hadoop01.log

    More  hadoop-root-datanode-hadoop01.log

    检查安装NTP服务命令:rpm -qa ntp

    ZKFC是由hadoop框架提供的服务进程。

    hdfs系统的模块启动脚本是start-dfs.sh

    HDFS和YARN均是( 主从)架构

    运行WordCount命令  hadoop jar hadoop-examples-2.7.2.jar wordcount /data/input /data/output

    hadoop的发行版本:

     Apache

     Cloudera

    Hortonworks

    为了能够使用ls程序列出目录的内容,并能够使用cd进入该目录,操作者需要有读和执行该目录的权限

    YARN服务组件不包括Application Master

    YARN 总体上仍然是Master/Slave 结构

    YARN服务组件包括:

    ApplicationMaster

     Container

    ResourceManager

    生成RSA秘钥对的命令是:

     ssh-keygen -t rsa

    ssh-keygen -t rsa -P ''

     hadoop2.版本文件切分成块(默认大小128M),以块为单位.

    文件关闭之后不能修改文件内容,只能完成追加操作

    描述HDFS的计数器:

    计数器相当于是一个全局变量

    计数器每次增加的值一般都是1

    Yarn的调度器:

    FIFO 先进先出

    B. 公平调度器 (Fair Scheduler)

    C. 容量调度器(Capacity Scheduler)

    实现服务器之间的文件分发的命令:

    scp -r

     rsync -av

    继承自FileInputFormat的类的是:

    CombineTextInputFormat

     TextInputFormat

     NLineInputFormat

     KeyValueTextInputFormat

    Shuffle中的Partitioner设置分区发生在溢写过程

    在执行MapJoin过程中用JoB.addCacheFile()方法提交缓存文件小表数据

  • 相关阅读:
    OGG复制同步,提示字段长度不够ORA-01704
    19c修改system,sys密码
    NFS服务端与客户端断网,导致作为NFS客户端的Oracle主机hang住
    ACFS启动报错acfsload start line 42: /lib/acfstoolsdriver.sh: No such file or directory
    OGG MAXTRANSOPS 参数
    TCP详解
    异步机制
    Linux 下创建和使用静态库
    U3D简单得换装技术
    排序
  • 原文地址:https://www.cnblogs.com/lu0420-0412/p/12153394.html
Copyright © 2011-2022 走看看