某某证券大数据开发工程师招聘笔试题

某某证券大数据开发工程师招聘笔试题

一、基础知识(单选题,每题1分,共10分)

1、实现两个远程主机之间的文件复制是用 ( D ) .

A . mv B . cp C . cut D. scp

2、一个IP地址是由网络地址和 ( D ) 两部分组成.

A .广播地址 B .多址地址 C .主机地址 D .子网掩码

3、网络中的任何一台计算机必须有一个地址,而且 ( B ) .

A、 不同网络中的两台计算机的地址不允许重复

B、 同一个网络中的两台计算机的地址不允许重复

C、 同一个网络中的两台針算机的地址允许重复

4、下面Telnet使用不正确的是 ( C ).

A . telnet holly (主机名) B . telnet 192.38.7.16 80

C . telnet 192.168.1.1:80 D . telnet www.sina.com

5、 一旦发现正在使用的计算机有感染病毒的特征,首先应立即釆取的措施是一 ( C ).

A. 重启 B.关机 C.网络隔离 D.杀毒

6、 对于运行在MapReduce平台上的应用程序,此应用所依赖的jar包会被放在 ( A ).

A、 服务器本地

B、 Hive

C、 HDFS

D、 DB

7、在Spark中,关于广播变量说法错误的是 ( A ).

A、 广播变量在每个Task中保留一份

B、 广播变量在每个Executor中保留一份

C、 广播变量是只读的

D、 广播变量通过SparkContext. boradcast ()方法生成

8、Spark应用的计算逻辑会被拆解成DAG,这个解析操作由 ( D ) 功能模块完成。

A. Client B. Application Master C.Executor D.Driver

9、Hive中的元数据不包括 ( B )

A.表的名字 B.表的外键 C.表的列 D.分区及其属性

10、在如下场景下,最频繁的査询场景是基于客户号査询每个月、每半年的历史交易流水。 以下哪个HBase的rowkey设计是最优的 ( B ) 。

A、 姓名+客户号

B、 日期+客户号

C、 客户号+日期

D、 客户号+姓名

二、基础知识(填空题,每题1分,共10分)

1、 强制杀死hadoop job的命令是 yarn application -list yarn application -kill applicationID

hadoop job -list hadoop job -kill jobID

2、 删除hdfs /tmp/aaa路径下的所有文件的命令是 hdfs dfs -rm -f /tmp/aaa/*

3、 査看hive表对应hdfs文件位置的命令是 show create table hive表名

4、 hdfs判断文件/tmp/aa是否存在的命令式 hdfs dfs -ls /tmp

5、 hive执行本地/tmp/aa. sql脚本文件的命令式 hive -f /tmp/aa.sql

6、 hadoop中job和task之间的关系是 一个mr程序就是一个job,一个job中又有一个或多个task,task有maptask和reducetask

7、 spark stage的数量由 是由每个DAG中的RDD间的宽依赖 确定。

8、 hive job 的map task的数量由 是由文件切片的数量 确定。

9、 hive查看分区表a分区的命令是 show partitions a

10、hbase框架强依赖于大数据哪个组件 hdfs和zookeeper

三、数据库部分(简答题,共25分)

1、说一说drop、delete、truncate的差异,在哪种场景下使用对应操作,各自优劣是什么? (5分)

drop 删除表结构和表数据 drop table 表名

delete 删除表数据 delete from 表名where 来控制删除数据的范围

truncate 清空表中的数据 truncate table 表名

速度drop > truncate > delete

2.请用hiveQL 对如下表数据进行统计. (5分)

  1. 表数据内容如下
月份 交易金额
1 100
2 200
3 100
4 200

2)要求的统计效果如下:

月份 交易金额
1 100
2 300
3 400
4 600
select
`月份`,
sum(`交易金额`) over(order by `月份` rows between unbounded preceding and current row) as '交易金额'
from score
;

3.请用HiveQL对如下表数据进行统计. (5 分)

原数据表

A B C
1 0.5 9
0.9 1.5 2
3 0.7 0.8
4 3 4
0.01 80 1
100 0.92 5
0.7 25% 0

统计这个表每列的数字大于等于1的这个数.

结果如下:

A B C
4 3 4
select
sum( case when A >=1 then 1 else 0 end ) as a ,
sum( case when B >=1 && B!='25%' then 1 else 0 end ) as b,
sum( case when C >=1 then 1 else 0 end ) as c
from tmp
;

4.现在需要统计公司某年度每个分支网点,按客户类型(个人与机构) 分别获取交易量排名前十名的账号.请您任意设计不少于2张表,并写出查询语句.( 10分 )

四,大数据部分(筒答题,共20分)

1.hadoop的三大核心组件是什么?毎个组件郁有什么功能?(5分)

hdfs 分布式文件存储系统

mapreduce 分布式计算框架

yarn 分布式资源管理框架

2.Hive的UDF, UDAF, UDTF有什么区别?各自适用于哪些应用场景?(5分)

UDF 一对一 输入一条 然后经过我们自定义的逻辑处理后,输出处理结果数据一条

UDAF 多对一 适用于像sum, avg, max这种函数类型的操做逻辑.

UDTF 一对多 应用场景不多

3.公司有一个官方APP,其每天的用户登录、登出行为会被记录到一个日志文件中。但是之前通过 Flume + Kafka +Flink 的方式去实时统计当前登录用户数的效果并不好,延迟偏高,请问一般会有哪些原因造成?建议如何改善? (10 分)

五、编程题部分(程序设计题,共 20 分)

1、Java 中 Object 类有哪些方法,简单说明这些方法的作用?Java中如何实现序列化有什么意义?(5分)

2、有文件为 c∶\1.txt, 希望用Java读取该文件, 打印文件中第三行的内容(5分)。

3、用 Scala、java、python其中一种(或其他),使用递归实现数组【1,2,3,4,5,6, 7,8,9,10】的求和。(10分)

六、项目管理部分(简答题,共 15 分)

1、公司安排你去甲方的现场做项目开发,客户的需求会发生变动并且态度强硬,导致项目进度不可控,你会怎么处理这种情况?(10 分)

2、软件项目管理都包括那些内容?谈谈你对项目管理的理解?(5 分)

你可能感兴趣的:(大数据面试问题,大数据)