字节跳动-面试经历复盘

字节跳动数仓开发实习生-商业化-一面 2022.11.30 50min

1.自我介绍

2.项目

BI报表

3.大数据组件

3.1 HDFS

3.1.1 默认备份文件数量

3.1.2 读取和写入数据流程

3.1.3 写入的时候是写入一份备份就返回ACK还是写完三份才返回

3.2 MapReduce

3.2.1 讲讲MR原理

3.3 Hive

3.3.1 Hive内部表和外部表区别,为什么

3.3.2 Hive怎么把SQL转换成底层计算引擎的计算任务的

3.3.3 Hive元数据库

3.3.4 Hive和HDFS关系,什么时候需要用到HDFS

3.4 资源调度

3.4.1 对比下k8s和yarn

3.4.2 为什么大数据一般工业界用yarn,而后端用k8s

4.MySQL

4.1 索引

4.1.1 为什么是B+树

4.1.2 你一般怎么用索引的

5.sql

5.1 左右内外全连接区别

6.算法lc 34

sql一个lateral view的实操

字节跳动数仓开发实习生-商业化-二面 2022.12.08 30min

1.自我介绍

2.mysql

2.1 索引

2.1.1 解释数据库,表,索引

2.1.2 为什么索引加了查找会变快

2.1.3 举了6个sql,问会不会走索引,走到什么程度,考点包括联合索引,范围查询,类型转换,sql语句重写,like

2.2 第三范式

3.数据结构

3.1 二叉树

3.1.1 讲讲二叉树能拿来干啥

3.1.2 怎么遍历二叉树

4.lc 112

字节跳动后端开发实习生-生活服务-一面 2023.2.16 60min

1.自我介绍

2.计网

2.1 tcp

2.1.1 四次挥手过程

2.1.2 讲讲两个time状态

2.1.3 tcp和udp有什么区别

2.1.4 tcp和http有什么关系

2.1.5 tcpudp能不能共用一个端口号

3.操作系统

3.1 并发

3.1.1 讲讲进程线程纤程关系

3.1.2 线程间有什么同步手段

3.1.3 生产者消费者模式应该如何实现

4.mysql

4.1 索引

4.1.1 为什么是B+树

4.1.2 一般B+树多深

5.大数据组件

5.1 MR过程

5.2 MR中间有什么排序

5.3 MR最后输出结果有序嘛

5.4 HBase和MySQL区别

6.虚拟化

6.1 讲讲docker的桥接网络

7.Redis

7.1 数据结构

7.2 跳表底层

7.3 Bitmap

8.lc 103

字节跳动数仓开发实习生-data-一面 2023.6.19 50min

1.自我介绍

2.项目

3.大数据组件

3.1 讲讲宽窄依赖

4.sql

4.1 where和having区别

4.2 having能不能单用

4.3 各种join区别

5.sql一般的连表查询

字节跳动数仓开发实习生-data-二面 2023.6.21 60min

1.自我介绍

2.项目

3.大数据组件

3.1 为啥yarn引入了队列的概念

4.数仓

4.1 为啥一般同时带timestamp和data

5.sql一般的连表查询+对着写出来的sql进行优化

字节跳动后端开发实习生-国际化内容安全平台-一面 2023.9.26 60min

1.自我介绍

2.实习

*2.1 开发流程

*2.2 自研框架底层原理

*2.3 优化工作深挖,想出尽可能多的指标来确定mysql层面优化的效果,如果上了缓存又用什么指标评价优化效果,如果异步化上了mq又可以用什么指标衡量优化效果

3.操作系统

3.1 进程间通讯方式及其在java中怎么实现

4.java

4.1 juc

4.1.1 syn和volatile比较

5.sql

5.1 各种join区别

6.场景题

6.1 40亿个数字,怎么判断某个数字存不存在

7.lc 75

字节跳动数仓开发实习生-dataleap-一面 2023.11.07 60min oc

1.自我介绍

2.自我介绍

3.实习

4.MySQL

4.1 索引

4.1.1 为什么建一个索引(A,B,C)当sql语句写where B = XX的时候没办法走索引

5.大数据组件

5.1 大数据组件

5.1.1 大数据组件整体介绍

5.1.2 spark出现是为了解决之前存在的什么问题

5.1.3 RDD

5.1.4 spark任务提交后发生的过程

6.sql直播间峰值

字节跳动数仓开发实习生-dataleap-二面 2023.11.10 45min oc

1.自我介绍

2.项目

3.大数据组件

3.1 大数据组件整体介绍

3.2 spark出现是为了解决mr什么问题

3.3 spark处理提交任务的流程

4.数仓

4.1 数仓整体介绍

5.算法

5.1 算法整体介绍

5.2 讲讲对时序数据挖掘一般怎么处理

6.一般的sql连表查询

table A,B -> table C

统计父表拥有的子表的数量和涉及到的用户的数量

字节跳动数仓开发实习生-dataleap-三面HR面 2023.11.15 25min oc

1.自我介绍

2.实习最大的收获

3.实习怎么团队协作的

4.实习人际关系怎么处理

5.之前面试流程的感觉怎么样

6.对于前面的业务老师有什么感受

7.希望在实习中收获到什么

8.压力大怎么办

9.认为自己有什么优缺点

字节跳动后端开发实习生-dataleap-一面 2024.1.30 60min BitSail组

1.自我介绍

2.项目

*2.1 为啥不独立部署,需要引入资源调度框架

*2.2 为啥作了本地缓存和云端redis缓存两极缓存架构

3.大数据组件

3.1 计算引擎

3.1.1 spark和mr计算引擎的本质区别?

3.1.2 计算引擎演进历史?各个不同时代出现的计算引擎为了解决什么问题?所以有什么特点?然后带上了什么缺点?

3.1.3 讲讲spark怎么进行内存管理的?各个大版本的内存管理模型有什么不同?

3.1.4 spark节点之间是怎么进行通信的?为什么通信模型会这么设计?

3.1.5 谈谈spark支持的各种sort?各种不同的sort分别是怎么实现的?

3.1.6 在海量数据进行排序的时候,肯定内存是会不够用的,你了解过spark是怎么针对这个问题进行优化的嘛?

3.1.7 你提到了tungsten计划,那你对于tungsten的其他的大改进有了解嘛?比如说火山模型进行了怎么优化?

3.1.8 最后谈谈他对于JVM架构通过unsafe重写吧,这块你了解有多深入?你是怎么看待这个设计的?

3.2 存储引擎

3.2.1 聊聊LSM树?

3.2.2 为什么LSM树相比于B+树更支持时序数据场景?

3.2.3 谈谈Influxdb的TSM和HBase的LSM的区别

4.场景题

4.1 当同时有海量计算任务在运行的时候,怎么设计计算引擎迁移的方案,怎么平滑迁移,不带来突然崩溃的问题?

4.2 mr引擎迁移到spark引擎时,应该注意考虑到的问题,对具体的任务要针对性考虑什么东西?

4.3 请你设计一个从Influxdb到Hive的一个数据同步方案?Hive里面的数据模型怎么设计?spark或者flink怎么做并行同步消费,如何分片?同步数据源的怎么消费,调用API还是处理文件?

5.Java

5.1 谈谈volatile?

5.2 volatile在硬件上是怎么实现的?CPU提供了什么支持?

6.计算机组成原理

6.1 谈谈堆和栈的区别?

6.2 哪个访问速度更快,为什么?

6.3 cache和寄存器有什么区别?

6.4 cache和寄存器哪个访问速度更快?

7.计网

7.1 聊聊拥塞控制算法?

7.2 流量控制和拥塞控制有什么区别?

7.3 spark里有流量控制算法嘛?

8.积累

8.1 对flink接触多少

8.2 平时参与开源活动嘛

9.lc 112

字节跳动后端开发实习生-dataleap-二面 2024.2.02 60min BitSail组

面试官是工作了有十四年的大神级前辈,不PUA纯讨论技术,收获了老多东西,可惜没机会跟大神学习

0八股0算法

1.自我介绍

2.项目

2.1 对于分区域数据中心的思考1,这样会不会引入数据同步的问题,由于网络通信的问题,增大架构的不稳定性?

2.2 对于分区域数据中心的思考1,对于有地理分布情况下的数据传输,需不需要增加而外的手段保证其可靠性呢?

2.3 对于数据倾斜的思考,由于什么情况产生了数据倾斜?

2.4 对于数据倾斜处理方案的思考1,直接全局负载均衡是不是不太好?可不可以考虑局部负载均衡?

2.5 对于数据倾斜处理方案的思考2,静态的负载均衡是不是也不太好?能不能根据不同时期特点动态自适应负载均衡?

2.6 对于流计算链路架构的思考1,为啥考虑Kappa?比较各种不同的流计算架构,有没有更适合的?能不能不照着模板,自己根据实际需要,设计出针对性定制化改进的流计算架构链路?

2.6 对于流计算链路架构的思考2,整体架构设计怎么考虑容灾冗余,故障恢复的?

2.7 对于流计算链路架构的思考3,整体架构怎么考虑应对瞬时数据洪峰的?

2.8 对于流计算链路架构的思考4,整体架构怎么考虑保障数据处理链路的准确性的?万一某个环节数据丢了或者错了或者多了,是不是最后结果实际上也就丢了或者错了或者多了,但是我们并不知道?

2.7 对于存储架构的思考1,为啥考虑LSM?为啥用TSM的Influxdb,能不能用依靠于纯LSM的TiDB等改造成适合时序数据处理的存储架构?

2.8 对于存储架构的思考2,可不可以不只依靠于LSM树系列,构建分层次多级的存储架构,来更加适应实际数据读取和写入的需要呢?

2.9 对于代码细节层面的思考,SparkStreaming和Structured Streaming在实现核心流计算任务上的功能实现和性能的区别?

2.10 对于代码细节层面2的思考,flink和Structured Streaming在实现核心流计算任务上的功能实现和性能的区别?

2.11 对于代码细节层面3的思考,缓存架构设计上,spark本身维护的变量和云端redis在实现核心流计算任务上的功能实现和性能的区别?

2.12 衍生的基础知识,谈谈你对大数据组件怎么处理大的认识,尽可能举所有了解的组件采集的不同的手段?

2.13 衍生的基础知识,Kakfa怎么保证数据一致性?

2.14 衍生的基础知识,Spark怎么保证数据一致性?

2.15 衍生的扩展知识,如果交由你从0-1地设计并且实现一个分布式系统,你会怎么做?如果是分布式计算引擎,你会

从哪里切入,考虑什么,怎么设计?如果是分布式存储引擎,你会从哪里切入,考虑什么,怎么设计?如果是分布式中间件,你会从哪里切入,考虑什么,怎么设计?

#字节跳动##java##阿里巴巴##腾讯##软件开发2024笔面经#
全部评论

相关推荐

#软件开发2024笔面经# 4.10 45min leader面,语速很快,我们两个高速吟唱对话1.自我介绍2.对测开的理解3.一个故障你怎么定位是服务端还是客户端4.日志怎么看5.http状态码有哪些6.为什么投测开7.做题 无重复字符的最长子串 3min写完  之后让你思考:你作为测试组怎么做测试,给我测试用例8.你的职业规划?9.抖音刷视频出现卡顿了,有哪些可能原因,还有吗,还有吗,还有吗10.你的优点和缺点?11.你觉得你善于沟通吗,为什么,怎么证明12.栈和队列的区别13.二分查找是什么,说具体查找过程14.为什么想来深圳15.你怎么用junit,postman这些工具的,为什么学习,在哪使用16.现在手上的offer17.你考研没考好,你觉得是为什么18.你是否觉得高考大省出来的同学就一定厉害?18.为什么选择互联网厂,为什么选择走软件这块反问1.为什么我被转部门了,我四面是没有过吗 答:你过了,我们几个部门根据hc协调了一下,把你分过来了2.四面和五面部门业务区别? 答:我只说我们部门,抖音开放平台,sdk测试开发,你来了就知道了3.部门工作会使用大模型吗,怎么去规定大模型在代码编写中的使用范围呢 答:在用自研发的,具体改革还在探索4.假设侥幸能过,会有提前实习吗 答:这会已经迟了,你先过好大学最后的美好生活吧5.后续还有流程吗,我面的已经绷不住了 答:等吧,你大概率有hr面,看排序,其他的不方便告诉你许愿hr面 再来一个技术面我就要疯掉了面完一个小时 约hr面 4.11
点赞 评论 收藏
转发
7 16 评论
分享
牛客网
牛客企业服务