XX公司大数据笔试题(A)
- 大数据基础(HDFS/Hbase/Hive/Spark〉 1.1. 对出Hadoop集群典型的配置文件名称,并说明各配置文件的用途。 1.2 怎么往HDFS上传文件和目录,并指定被上传文件再HDFS上存储块大小为4MB?怎么限制被上传的文件只允许本账号(假定账号为user1)可读写? 假定要新增账号user2?对上传文件可读,怎么设置? 1.3 什么是Hbase Namespace?写出命令,创建hbase namespace “jk”,并创建表“user2”对上传文件可读,怎么设置? 1.4 简单说明HBase出现热点的原因,给出避免热点的方法(尽量多举例)。 1.5 请说明 Hive 中 Sort By,Order By,Cluster By,Distrbute By 各代表什么意思 1.6 写出 HQL 语句,将zz.20170101.tog 文件放入 hive 中 access 表 ‘20170101’ 分区,access的分区字段是eventday。 1.7 Hadoop MapReduce和Spark的都是并行计算,有什么相同和区别? 1.8 简单说一下Spark的shuffle过程。 1.9 什么是数据倾斜?如何解决?
- 脚本能力 写一段程序(Shell或Python),将指定本地目录/data/log/nginx (包括子目录)文件传到指定HDFS目录/apps/logs/nginx,且只传输变化的文件(包括新增文件、文件大小发生变化的文件)
- Spark 编程 在 HDFS 目录"/data/log/nginx/2017010"下,存放着多个日志文件 access.0.log, access.1.log,…, access.23.log 日志文件内每一行的格式:来源IP地址,HTTP Request,如下表所示: f-J 11.1.2.3,POST /appl/index.html 123.3.56/GET/app2/user?id=3 23.3.3,POST /appl/submitorder 其中request的格式为HTTP Method URL, URL的第一个分段为应用名,如app1, app2, app3,…,要求: 1)写出spark程序统计各应用的的PV和UV(基于IP去重) 2)要求先将日志文件加载到RDD进行处理,然后转换为DataFrame,最后用SparkSQL 统计出上述结果
- Spark可以用java,python或Scala,程序书写需要完整,符合编程规范