4399大数据笔试题

    今天晚上参加了厦门4399公司的大数据笔试,自己没有拍下题目,一下是根据自己在草稿纸上简要记录回忆下写出来的,具体的选项记不起来,大体题目在下面,欢迎大家给出自己的见解答案

 

一、选择题

    1.四个土豪在一次聚会中比拼财产的逻辑推理题。
        A:四个人中,B最富。
        B:四个人中,C最富。
        C:我不是最富有的。
        D:C比我富,A比C富。
        已知,其中只有一个人在说假话。
        请问:四个人中谁最富?从最富到最不富的顺序应该怎么排?
        答案:A、B两人的答案不同,所以一定有一个人在说谎。也就是说,C和D说的都是实话。所以,C不是最富的,也就是说B说的是假话。这样可以得到顺序为:B、A、C、D。

    2.与HDFS类似的框架有哪些?

    3.下面哪一个程序与NameNode在一个节点上启动?
      A. SecondaryNameNode   B. DataNode    C. TaskTracker   D. JobTracker

    答案:A

    4.哪个是RDD的窄依赖?
    5.HBase的RowKey的设计原则是什么?

    6.HBase的存储底层是什么?

    答案:HBase中的所有数据文件都存储在Hadoop HDFS文件系统上,主要包括上述提出的两种文件类型:
         HFile,HBase中KeyValue数据的存储格式,HFile是Hadoop的二进制格式文件,实际上StoreFile就是对HFile做了轻量级包装,即StoreFile底层就是HFile
        HLog File,HBase中WAL(Write Ahead Log) 的存储格式,物理上是Hadoop的Sequence File

    7.Scala语言的闭包描述哪一项不是正确的?

    8.Kafka高吞吐的原因?

    答案:    

        顺序读写磁盘,充分利用了操作系统的预读机制。
        linux中使用sendfile命令,减少一次数据拷贝,如下:
            ①把数据从硬盘读取到内核中的页缓存。
            ②把数据从内核中读取到用户空间。(sendfile命令将跳过此步骤)
            ③把用户空间中的数据写到socket缓冲区中。
            ④操作系统将数据从socket缓冲区中复制到网卡缓冲区,以便将数据经网络发出
        生产者客户端缓存消息批量发送,消费者批量从broker获取消息,减少网络io次数,充分利用磁盘顺序读写的性能。
        通常情况下kafka的瓶颈不是cpu或者磁盘,而是网络带宽,所以生产者可以对数据进行压缩。

    9.ZooKeeper的角色是什么?

    答案:

        Leader 角色 
        Leader 服务器是整个zookeeper 集群的核心,主要的工作任务有两项: 
            ①事物请求的唯一调度和处理者,保证集群事物处理的顺序性。 
            ②集群内部各服务器的调度者。

        Follower 角色 
        Follower 角色的主要职责是: 
            ①处理客户端非事物请求、转发事物请求给leader服务器。 
            ②参与事物请求Proposal的投票(Leader发起的提案,要求 Follower投票,需要半数以上follower节点通过,leader才会commit数据)。
            ③参与Leader选举的投票。

        Observer 角色 
            ①Observer 是 zookeeper3.3 开始引入的一个全新的服务器角色,从字面来理解,该角色充当了观察者的角色。观察 zookeeper 集群中的最新状态变化并将这些状态变化同步到 observer 服务器上。Observer 的工作原理与 follower 角色基本一致,而它和 follower 角色唯一的不同在于 observer 不参与任何形式的投票,包括事务请求Proposal的投票和leader选举的投票。简单来说,observer服务器只提供非事物请求服务,通常在于不影响集群事务处理能力的前提下提升集群非事物处理的能力。

    10.Spark Stage的数量有什么决定?

    答案:Partition

二、填空题

    1.Spark的三种部署模式?
    2.RDD有哪些缓存机制?
    3.RDD类型有几种?每一种有哪些操作?
    4.map和flatMap的区别是什么?
    5.RDD的依赖方式?
    6.有存储在Hive上的一张pay_log表
        ser_name    pay_money    pay_date
        1)使用SQL语句查询消费总额、消费总次数、消费最大的金额、消费最大的金额
        2)使用SQL语句每一天当天消费的总金额
        3)使用SQL语句对消费金额进行排名(用rank())
        4)使用SQL语句查询充值金额集合(用collect_set())
    7.HDFS block的默认值是多少?机架感知配置下分别存放在什么位置?
    8.有257个节点的完全二叉树有多深?
    9.数据库的三大范式?

三、问答题

    1.数据清洗的目的是什么?如何进行数据清洗?
    2.使用Spark对/tmp/a.txt中的字母进行频数统计?
        A,b,d,c
        A,c,b,d
        A,c,d,f
        已经创建好了SparkContext为sc:
    3.客户端向Yarn提交MR作业的过程
    4.使用linux shell编程实现
        有两个文件
        a.txt b.txt 文件内容(IP,user)
        1)输出出每一个文件的IP数
        2)输出在b.txt出现二在a.txt中没有出现的IP
        3)输出没和user出现的次数以及每个user对应的IP数
    5.数据倾斜发生的原因,解决方案有哪些?
    6.有哪些SQL on Hadoop,各有哪些特点?

4399⼤数据笔试题 今天晚上参加了厦门 今天晚上参加了厦门4399公司的⼤数据笔试,⾃⼰没有拍下题⽬,⼀下是根据⾃⼰在草稿纸上简要记录回忆下 公司的⼤数据笔试,⾃⼰没有拍下题⽬,⼀下是根据⾃⼰在草稿纸上简要记录回忆下 写出来的,具体的选项记不起来,⼤体题⽬在下⾯,欢迎⼤家给出⾃⼰的见解答案 写出来的,具体的选项记不起来,⼤体题⽬在下⾯,欢迎⼤家给出⾃⼰的见解答案 ⼀、选择题 ⼀、选择题 1.四个⼟豪在⼀次聚会中⽐拼财产的逻辑推理题。 A:四个⼈中,B最富。 B:四个⼈中,C最富。 C:我不是最富有的。 D:C⽐我富,A⽐C富。 已知,其中只有⼀个⼈在说假话。 请问:四个⼈中谁最富?从最富到最不富的顺序应该怎么排? 答案:A、B两⼈的答案不同,所以⼀定有⼀个⼈在说谎。也就是说,C和D说的都是实话。所以,C不是最富的,也就是说B说的是假 话。这样可以得到顺序为:B、A、C、D。 2.与HDFS似的框架有哪些? 3.下⾯哪⼀个程序与NameNode在⼀个节点上启动? A. SecondaryNameNode B. DataNode C. TaskTracker D. JobTracker 答案:A 4.哪个是RDD的窄依赖? 5.HBase的RowKey的设计原则是什么? 6.HBase的存储底层是什么? 答案:HBase中的所有数据⽂件都存储在Hadoop HDFS⽂件系统上,主要包括上述提出的两种⽂件型: HFile,HBase中KeyValue数据的存储格式,HFile是Hadoop的⼆进制格式⽂件,实际上StoreFile就是对HFile做了轻量级包装, 即StoreFile底层就是HFile HLog File,HBase中WAL(Write Ahead Log) 的存储格式,物理上是Hadoop的Sequence File 7.Scala语⾔的闭包描述哪⼀项不是正确的? 8.Kafka⾼吞吐的原因? 答案: 顺序读写磁盘,充分利⽤了操作系统的预读机制。 linux中使⽤sendfile命令,减少⼀次数据拷贝,如下: 把数据从硬盘读取到内核中的页缓存。 把数据从内核中读取到⽤户空间。(sendfile命令将跳过此步骤) 把⽤户空间中的数据写到socket缓冲区中。 操作系统将数据从socket缓冲区中复制到⽹卡缓冲区,以便将数据经⽹络发出 ⽣产者客户端缓存消息批量发送,消费者批量从broker获取消息,减少⽹络io次数,充分利⽤磁盘顺序读写的性能。 通常情况下kafka的瓶颈不是cpu或者磁盘,⽽是⽹络带宽,所以⽣产者可以对数据进⾏压缩。 9.ZooKeeper的⾓⾊是什么? 答案: Leader ⾓⾊ Leader 服务器是整个zookeeper 集群的核⼼,主要的⼯作任务有两项: 事物请求的唯⼀调度和处理者,保证集群事物处理的顺序性。 集群内部各服务器的调度者。 Follower ⾓⾊ Follower ⾓⾊的主要职责是: 处理客户端⾮事物请求、转发事物请求给leader服务器。 参与事物请求Proposal的投票(Leader发起的提案,要求 Follower投票,需要半数以上follower节点通过,leader才会 commit数据)。 参与Leader选举的投票。 Observer ⾓⾊ Observer 是 zookeeper3.3 开始引⼊的⼀个全新的服务器⾓⾊,从字⾯来理解,该⾓⾊充当了观察者的⾓⾊。观察 zookeeper 集群中的最新状态变化并将这些状态变化同步到 observer 服务器上。Observer 的⼯作原理与 follower ⾓⾊基本⼀致,⽽它 和 follower ⾓⾊唯⼀的不同在于 observer 不参与任何形式的投票,包括事务请求Proposal的投票和leader选举的投票。简单来 说,observer服务器只提供⾮事物请求服务,通常在于不影响集群事务处理能⼒的前提下提升集群⾮事物处理的能⼒。 10.Spark Stage的数量有什么决定? 答案:Partition ⼆、填空题 ⼆、填空题 1.Spark的三种部署模式? 2.RDD有哪些缓存机制? 3.RDD型有⼏种?每⼀种有哪些操作? 4.map和flatMap的区别是什么? 5.RDD的依赖⽅式? 6.有存储在Hive上的⼀张pay_log表 ser_name pay_money pay_date 1)使⽤SQL语句查询消费总额、消费总次数、消费最⼤的⾦额、消费最⼤的⾦额 2)使⽤SQL语句每⼀天当天消费的总⾦额 3)使⽤SQL语句对消费⾦额进⾏排名(⽤rank()) 4)使⽤SQL语句查询充值⾦额集合(⽤collect_set()) 7.HDFS block的默认值是多少?机架感知配置下分别存放在什么位置? 8
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值