字节跳动-数据仓库高级工程师面试
问题导读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 维表关联有哪些方式,数据量大时怎么处理
mark一下 很好的面试贴 感谢分享
页:
[1]