分享

字节跳动-数据仓库高级工程师面试

问题导读

1.字节跳动关于思想和方法论问了哪些问题?
2.Spark问了哪些问题?
3.Shell问了哪些问题?
4.数据结构和算法常问的有哪些?


写在前面:

2020.05月份疫情期间面试整理,已斩offer,试用期现已转正。金三银四,2021加油!


思想和方法论:
  • 如何建设数仓,如何构建主题域
  • 缓慢变化维 几种处理方式
  • 什么是维度建模,星型模型与雪花模型的区别
  • 数仓的好处
  • 分层的好处
  • 怎么做数据质量,怎么保证及时性和准确性
  • 什么是维度,什么是度量
  • 如何数据治理?
  • 三范式
  • 数据仓库vs数据中台vs数据湖
  • 做过实时数仓吗,讲一下




hadoop:
  • MapReduce原理,map数、reduce数的参数
  • 说一下 map join 与 reduce join
  • hive sql怎么优化
  • spark和hive的区别
  • 数据倾斜几种解决方式
  • 数据如何清洗
  • 说一下udf、udtf、udaf ,集成的类、接口,怎么写
  • hive文件存储格式,对比
  • 内外表区别
  • hive执行的job数是怎么确定的




Spark:
  • join 实现有几种呢,源码有研究过吗?底层是怎么实现的
  • shuffle形式有几种?都做哪些优化
  • 是通过什么管理shuffle中的内存,磁盘的
  • 讲讲spark内存模型?说说你了解这些,对实际的工作有什么帮助?
  • rdd有哪些特性?
  • 宽依赖,窄依赖都是什么?有什么不同?除了大家都认为的不同点以外,还有哪些不同?
  • spark为什么比hive快
  • 讲讲sparksql优化
  • 讲讲RDD, DAG, Stage
  • 说说groupByKey, reduceByKey
  • spark是怎么读取文件的?
  • 有没有遇到过spark读取文件,有一些task空跑的现象?
  • 窗口函数中几个rank函数有啥不同
  • parquet文件和orc文件有啥不同




shell:
  • 字符串替换(sed)
  • 本文逗号分隔输出第二列(awk)


       注:新浪也考过 awk输出并求和



python:
  • 数组和列表的区别,什么是字典
  • 什么是模块,有哪些内置模块
  • 全局变量与局部变量




算法与数据结构:
  • 几种排序算法,说一下冒泡排序
  • 堆vs栈
  • 布隆过滤器
  • Bitmap
  • B+树
  • LSM Tree
  • 跳表
  • Hyperloglog




关于数据结构是名企最常问的,可参考
阿里面试宝典(十五):数据结构与算法【跳表】
https://www.aboutyun.com/forum.php?mod=viewthread&tid=30093



sql题:
  • 手写7日留存
  • 手写连续3日登陆
  • 1000亿userid如何最高性能求uv




业务:
  • 讲一个最复杂的业务场景
  • 数据赋能,你如何体现数仓职位的价值
  • 你能为我们带来什么?




实时:
  • 实时PV,UV统计
  • 实时TOP N 统计
  • 广告曝光流和点击流实时join
  • Spark Streaming 与Flink的对比
  • Flink怎么做到Exactly Once
  • Flink的StateStore有哪些,工作中用过哪些
  • 做过Flink内存调优吗
  • 讲讲Spark Streaming 与Flink的反压机制
  • Flink的窗口函数,时间机制,CheckPoint机制,两阶段提交
  • Flink 双流Join
  • Flink State TTL怎么设置
  • Flink 维表关联有哪些方式,数据量大时怎么处理





已有(2)人评论

跳转到指定楼层
莱斯特没有城 发表于 2021-2-18 09:36:28
mark一下 很好的面试贴
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条