【面试题】京东大数据面试真题汇总,收藏必备

今年冬天冷的好慢,现在空气中吹的风还是暖的...

京东大数据面试题

_

hive中都有哪些join操作?

  • left join:以左侧为主表,返回记录与主表记录数相同,关联不上的字段为空。

  • right join:以右侧表为主表,返回记录与主表记录数相同,关联不上的字段为空。

  • full join:以两个表的记录为基准,返回两个表的记录去重之和,关联不上的字段为null。

  • cross join:返回两个表的笛卡尔积结果,不需要指定关联键。

  • map join map端连接,与普通连接的区别是这个连接中不会有reduce阶段存在,连接在map端完成。

  • common join:普通连接,在sql中不特殊指定连接方式使用的都是这种普通连接。

  • skew join:倾斜连接,主要针对数据倾斜的情况优化。

  • bucket map join:分桶连接。

_

数仓分层,主要负责哪些任务?

_

有没有遇到过数据倾斜,怎么处理数据倾斜的?

_

HashMap和HashTable区别?

_

sql题:某网站每天有很多人登陆,请你统计一下该应用每个用户最近登陆是哪一天,用的什么设备,

一个登陆(user_login)表:

id,user_id,client_id,date
1    1    1    2022-01-01
2    2    2    2022-02-01
3    1    2    2022-01-03

一个用户表(user)

id,user
1    xiaohong

一个客户端表(client)

id,name
1    pc
2    ios

最终输出字段:

用户名    日期    设备名

 微信公众号:OnlyCoding

_

统计新登录用户的次日留存

一个登陆(user_login)表:

id,user_id,client_id,date
1    1    1    2022-01-01
2    2    2    2022-02-01
3    1    2    2022-01-03

_

算法:给定一颗二叉树,按照从顶部到底部的顺序,返回从右侧能看到的节点值?

输入:[1,2,3,null,5,null,4]

输出:[1,3,4]

2e0cb7930d4dddc0fc91c73aaedb5e6f.png

_

hive分区和分桶区别?

_

hive分桶表的作用?

_

两个表join过程中,空值的情况如何处理?

_

hive存储结构的区别?

_

hive本身对于sql做了哪些优化?

_

flink retrict/append

_

sql题:

用户表(pin,name,address)
订单表(orderid,pin,orderdate)
订单明细表(orderid,sku,price.quantity,discount)

要求:

  • 统计去年一年内用户消费超过10000的。

  • 对用户进行分级,

    10000<x<11000,属于s级

    10000<x<12000,属于m级

    12000<x<13000,属于a级

  • 连续多次下单,查出第一笔订单和最后一笔订单时间差小于等于3天的用户。

_

_

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值