京东面试题

 

京东大数据面试题都有那些

 

学长1

1)笔试部分

(1)列举几种数据倾斜的情况,并解释为什么会倾斜,以及如何解决?

(2)解释一下SQL运行步骤,是否有优化空间,如果有,如何优化:

SELECT a.id, b.name FROM a LEFT OUTER JOIN b ON a.id = b.id WHERE a.dt = ‘2016-01-01’ AND b.dt = ‘2016-01-01’;

(3)已知表a是一张内部表,如何将它转换成外部表?请写出相应的Hive语句

(4)用select做查询是,用哪个函数给值为null的数据设置默认值?

(5)Hive中,建的表为压缩表,但是输入文件为非压缩格式,会产生怎样的现象或者结果?

(6)订单详情表ord_det(order_id订单号,sku_id商品编号,sale_qtty销售数量,dt日期分区)任务计算2016年1月1日商品销量的Top100,并按销量降级排序

(7)某日志的格式如下:

pin|-|request_tm|-url|-|sku_id|-|amount

分隔符为‘|-|’,

数据样例为:

张三|-|q2013-11-23 11:59:30|-|www.jd.com|-|100023|-|110.15

假设本地数据文件为sample.txt,先将其导入到hive的test库的表t_sample中,并计算每个用户的总消费金额,写出详细过程包括表结构

(8)test.log日志中内容如下左列所示,使用awk输出右列4行数据

10-3-jd-dv

2-4-jd-dv 10-4-jd-dv

5-7-pv-click 5-7-pv-click

36-24-pv-uv

37-24-pv-uv 37-24-pv-uv

24-3-uv-mq 24-3-uv-mq

(9)Storm的分组策略有哪些?

学长2

1)笔试部分

(1)HiveSQL语句中select from where group by having order by的执行顺序

(2)Hive中MapJoin的原理和实际应用

(3)写出你常用的HDFS命令

(4)使用Linux命令查询file1里面空行的所在行号

(5)有文件chengji.txt内容如下:

张三 40

李四 50

王五 60

请使用Linux命令计算第二列的和并输出

(6)在Linux环境下有文件/home/dim_city.txt如何加载dim_city外部表中,HDFS路径/user/dim/dim_city

(7)请列出正常工作的hadoop集群中hadoop都分别需要启动哪些进程,他们的作用分别是什么,尽可能写的全面些

(8)数据仓库的整体架构是什么,其中最重要的是哪个环节

学长3

1)笔试部分(京东金融)

(1)数据按照业务含义可以分为时点数和时期数,在一般情况下,下列哪些数据属于时点数?

A.昨天的订单量 B.昨天的库存量

C.昨天的点击量 D.昨天的访问次数

(2)About hadoop map/reduce,The right answer is?

A.reduce的数量必须大于零

B.reduce总是在所有map完成之后再执行

C.combiner过程实际也是reduce 过程

D.Mapper的数量由输入的文件个数决定

(3)Hive中的元数据不包括?

A.表的名字 B.表的外键

C.表的列 D.分区及其属性

(4)Hive中如何限制查询条数?

A、TOP B、limit C、rownum D、only

(5)关于hivesql以下说法正确的是:

A.cluster by不会对字段进行排序

B order by只保证每个reducer的输出有序,不保证全局有序

C sortby是全局有序

D distribute by制定规则字段,将相同组数据分发到同一reducer

(6)下面SQL的运行结果是什么?

Select a.id,b.name from (select id from table_id) a left semi join (select id, name from table_nm) b on a.id=b.id

 

京东大数据面试题都有那些

 

 

京东大数据面试题都有那些

 

A 、(a,ok) B、(2,null) C、(1,ok & & 2,null) D、以上结果均不对

(7)你处理过的最大数据量是多少?处理时是否遇到问题,采取了哪些优化的方案?

(8)列举Hive几种数据倾斜的场景以及解决方案?

学长4

1)技术部分

(1)你们Spark哪个版本

(2)SparkStreaming如何和Kafka对接

(3)Kafka消费过的消息如何再消费

(4)Redis版本多少

(5)CDH版本多少

(6)集群怎么部署的

(7)数据倾斜怎么处理

(8)MR和Spark的Shuffle的区别

(9)MR环形数组怎么设置最大能设置多大

(10)Redis分布式锁怎么实现

(11)Rdd和dateset的区别

(12)说说Scala伴生对象

(13)解释Scala的模式匹配

(14)谈谈Scala隐士转换

(15)Yarn的组件说说他们的功能

(16)Spark一个Excutor给多大内存

(17)Spark几种部署模式还有他们的区别

(18)你运行程序是client还是cluster 为什么

(19)说出git的几个常用命名

(20)git如何切换分支

(21)对Hive的理解做过哪些优化

4)算法部分

(1)用Idea写快速排序

5)手写代码部分

(1)手写Spark WordCount

6)项目部分

(1)整个业务数据的流向

7)场景部分

(1)现有两张大表所有字段都得保留不能再过滤了join操作就发生OOM怎么解决

(2)Session日志分析如何求出用户访问的Page路径

(3)三表的join求销量,order——id的统计(记得不了)就是三表join求统计吧

学长5

1)一面

(1)HDFS、MR、Yarn的理解

(2)MR的WordCount简单描述

(3)Kafka快的原因,零拷贝的原理

(4)Redis的数据类型

(5)Kafka的isr队列

(6)Spark的运行模式,WordCount的简单描述

(7)基本上是简历的东西

2)二面

基本上和简历无关,问的算法,我不懂,没办法整理

学长6

1)京东数科二面

(1)最近一两年内你做过感觉最有趣或者让你记忆深刻的项目,挑一个说一说。我说的是SparkStreaming实时计算(李老师讲的在线教育那个项目,我给稍微改了改成电商项目了)。

(2)有关于Spark、Kafka、MySQL的项目你感觉那个比较熟练一点。我回答我的是对spark比较感兴趣。

(3)做这个项目用的是Spark的哪个版本?

(4)这个版本里用Kafka用的是那种消费方式。

(5)可以简单讲一下direct大概的一个设计套路。

(6)如果说我每隔一百条或者一千条,记录偏移量,如果跑到八百条宕掉了,有可能重复消费,针对receiver优势能不能解决这一点?

(7)如果dsteam方式去拉取Reduce拉取出去,那有多少个线程从Kafka里拖数据?

(8)平时除了用Spark比较多,用Hive也不少,平时会涉及到调参优化方面有哪些?

(9)你能介绍一下Flume的架构或者设计。

(10)用代码实现一个类似于Flink水位线的机制。

(11)有做过依赖调解的工作吗?比如说有没有碰到问题说引用自己一个依赖,但是在别的地方用了一个其他的依赖由于版本不统一,不能兼容该怎么办

(12)最近为什么会想到说换一个工作。(离职原因)

(13)你有什么想问我们的。

大数据培训

相关文章: