# 4.10美的数据开发笔试
题型:10道单项、5道不定项、2道算法、1道SQL,难度还可以
单项题
1.
哪个程序通常与NameNode在一个节点启动?Jobtracker
2.
HIVE的建表描述,错误的是:STORED AS 指定存储路径
正确应该是指定表的格式
3.
维度建模中雪花模型和星型模型的描述不正确的是:星型模型是多个事实表和多个维度表组成
正确应该是 1个事实表和多个维度表组成
4.
hive中用get_json_object解析ison字符串,如果解析的字段不存在,会返回什么结果:NULL
5.
hive中关于INSERT语句的描述(包括了INSETR INTO、INSERT OVERWRITE),正确是:INSERT OVERWRITE会先将原始表的数据remove,再插入新数据
6.
select ceil(-8.45)的结果是:-8
7-8一道是sql查询,name以“李”字开头的语句
9.
删除表table1的语句:drop table table1
不定项
1.
关于hive的四种排序方式,正确的是
B. cluster by只能支持倒序排列 C sort by只能保证局部有序
2.
MapReduce中对于数据倾斜的处理方式,正确的是
A根据数据分布情说,自定义分区函数,将key均匀分配到不同Reducer中
C使用map join让小的维度表先加载内存中
3.
属于Hive存储常见文件格式的是
A.PARQUET B.TEXTFILE C.ORC
4.
属于Hive基本数据类型的是
A.DOUBLE B.INT C.SMALLINT
5.
属于SQL聚合函数的是
A.AVG B.SUM
C.COUNT
编程题
1.
删除有序ArrayList中重复元素
输入【1,2,4,5,6,1,2】
输出【4,5,6】
输入描述
输入一组数组(内容可以为数字,字符,长度小于200)如1,2,4,5,7,1,3
输出描述
输出不包含重复元素的数组如1,2,4,5,7,3
2.
输入整数数组,其中有且仅有一个数字出现次数是超过一半的,输出这个数字
如[4,5,5,1,5.6,5.4,5],输出5
输入描述
第一行输入整数N代表接下来有N个用例,每个用例占一行对接下里的n行,每行给出一个整数数列,用空格分隔
2
4 2 4
1
输出描述
输出N行,每行对应一个输入用例,给出题目要求的数字
4
1
3.
SQL:有student表,sid(学号),sname(姓名),sgrade(年级),ssex(性别)
得到各年级学生人数、男生人数及占比,按学生人数倒序排列
select
sgrade '年级',
count(sgrade) '学生人数',
sum(case when ssex='男' then 1 else 0 end) '男生人数',
sum(case when ssex='男' then 1 else 0 end)/count(sgrade) '占比'
from student
group by sgrade
order by count(sgrade) desc
#我的实习求职记录#