10篇校招/社招面经请你查收~

2024-09-06 18:58
文章标签 面经 查收 社招 篇校

本文主要是介绍10篇校招/社招面经请你查收~,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击上方蓝色字体,选择“设为星标”

回复”面试“获取更多惊喜

目前各大公司的校招已经启动,相信很多小伙伴有和我当年一样的困扰。国内高校开辟大数据相关专业正好一个毕业季过去了,那么作为一个科班出身的学生,该怎么准备校招呢?

本文是在和读者交流的过程中,在网络上搜集到的一些面试资源,只要自己掌握方法并且准备充分,其实很容易在面试中脱颖而出。

其实当时的我也非常发愁,觉得自己什么都不会,又不知道该准备些什么,走了不少弯路。在收集面试资源的同时,也发现同样作为95后,现在的学生面试的眼界和能力都比2-3年前强出很多,但是基础知识会稍微差一些。大概也是因为网上太多的这个实战、那个实战内容太多了,反而基础知识准备不充分。

小米/字节/阿里

Hadoop

  • 1.介绍下Hadoop(字节.好未来)

  • 2.mapreduce处理流程/shuffle过程(阿里.好未来.网易)

  • 3.Yarn是怎么工作的(小米)

  • 4.mapreduce和hdfs是一体的吗,有什么关系(阿里)

  • 5.数据倾斜是如何产生的及解决方案(阿里.字节.小米.网易.好未来)

  • 6.mapreduce有几种join(字节)

  • 7.Hadoop的HA

Hive

  • 1.内部表和外部表的区别(字节.好未来)

  • 2.数据仓库的分层(小米.好未来.网易)

  • 3.星型模型和雪花模型的选择(字节.好未来)

  • 4.数据仓库和传统数据库的区别(好多都问了)

  • 5.接上问,维度冗余及三范式(字节.好未来)

  • 6.hive数据存储格式.压缩格式,区别(好未来)

  • 7.HQL执行慢是怎么解决的(字节.阿里.小米)

Spark

  • 1.job.stage.task的关系(小米)

  • 2.spark任务提交过程(阿里.小米)

  • 3.spark常见算子(小米)

  • 4.spark shuffle和mr shuffle的区别及优化

  • 5.spark容错机制(阿里)

  • 6.sparkSQL的几种join实现

  • 7.介绍下sparkstreaming

  • 8.spark RDD的理解

Flink

  • 1.spark streaming和flink的比较(小米)

  • 2.flink的状态(小米)

  • 3.flink的容错机制.状态一致性(阿里)

  • 4.讲述一致性检查点的实现——分布式快照(阿里)

  • 5.flink的watermark.窗口机制.时间(小米)

  • 6.flink的运行构架

Mysql

  • 1.索引相关,b+tree(阿里)

  • 2.建立索引的考虑因素(使用频率.联合索引.索引顺序)

  • 3.聚簇索引.覆盖索引与回表查询

  • 4.索引失效的情况,如何知道索引是否被用到

  • 5.什么是事务,事务并发带来的问题(脏读.不可重复读.幻读)

  • 6.ACID.隔离级别

Kafka

  • 1.kafka的文件存储机制

  • 2.kafka的可靠性保障 1)生产者往broker发送消息(副本数据同步策略.ISR.ACK) 2)topic分区副本 3)leader选举

  • 3.kafka一致性保障

  • 4.如何保障数据有序性

  • 5.kafka和传统消息队列的区别

Redis

  • 1.redis的优缺点

  • 2.redis的数据类型

  • 3.为什么redis效率高

  • 4.redis主从复制过程

  • 5.AOF.RDB的优缺点.适用场景

  • 6.redis的过期淘汰策略

  • 7.缓存雪崩.缓存击穿及如何解决

Java基础

这个写起来就太多了,基本包含了Java的基础知识、JVM、多线程等等。

开放型问题

  • 1.谈谈对大数据处理思想的理解(可以围绕分而治之、计算向数据移动展开)

  • 2.谈谈对大数据体系演变的理解(阿里)

  • 3.你觉得未来大数据体系的变化可能是怎样的(阿里)

  • 4.如果你的抖音突然卡住了,会是因为什么(字节)

算法

笔者不是算法大神,剑指offer刷过两遍,整体回顾过四五次,建议每次面试前将j剑指offer 链表、二叉树、栈和队列、动态规划、递归及回溯 的题目都分块回顾一次,链表的题一般用虚拟头结点、步长差解决。

二叉树的题目一般要么和遍历有关,借助栈和队列,比如镜像和对称二叉树、求深度、之字形打印...都相当于在遍历中加入判断条件;要么用递归及回溯思想解决,比如树的子结构,最低公共祖先、和为某值的路径等题目。

动态规划思想我认为是维护一个状态,关注点就在目前状态和新进来的数据上面,然后进行比较和状态更新,需要多练习找感觉。

另外排序算法也要熟悉,冒泡啥的不说了,快速排序、归并排序也要可以直接写出来。算法练习过程中注意思考多种方法解题,字节面试中有遇到追问第二种方法解决问题。

字节

一面

  • 维度建模 :确认主题、确认粒度、确认度量、确认事实表、确认维度表

  • Hive shuffle 和 spark shuffle的区别

  • Spark 为什么快?Spark任务是怎么执行的

  • 转化率如何计算

  • 缓慢变化维怎么处理

  • Flink状态

  • Flink窗口

  • Flink广播流

二面

  • Hive count(distinct)有几个reduce 海量数据会有什么问题

  • Spark优化

  • Flink 精确一致怎么保证

  • Flink 实时topN

  • Flink 写入redis怎么保证精确一致

  • Spark hive 用过的解决数据倾斜的方案

  • 事实表分类

  • 累积型快照事实表做法

三面

  • Hdfs读数据流程 源码级别(要回答出来 rpc)

  • Hdfs写数据流程 源码级别(要回答出来rpc)

  • Mapreduce shffule原理 源码级别(要回答出来锁 多线程 以及缓存写磁盘交换)

  • 数仓为什么要分层

  • 实时比起来离线 要注意啥

  • 特征挖掘是怎么做的?怎么管理的

Shopee

一面

  • 自我介绍(要求重点介绍项目)

  • 怼项目(重点在于Hadoop相关部分)

  • Hadoop相关问题的延伸(HDFS写数据流程,要求越详细越好)

  • 如果要实现一个HashMap怎么做,算法复杂度多少

  • 手撸快排。(有思路没撸出来)

  • 面试要求尽可能的说出细节,但是我只能大概说出来一些设计原则

  • 由于实习的时候用过 clickhouse(其实就当关系数据库存储了一下数据),所以面试官让我讲讲 clickhouse,我给小姐姐说明我只是当数据库用的之后,她就只让我说了 clickhouse 有哪些特点?

  • 对 java 熟悉吧?JVM 的内存结构?

  • volatile 关键字的作用?

  • 说说 MySQL 的索引?b树与b+树的区别?

  • Redis的应用场景有哪些?Redis支持的数据结构?

  • 40亿条数据,内存只有10G,如何确定一个数是否存在于这40亿的数字里面?

  • Spark的作业运行流程是怎么样的?

  • Spark处理数据倾斜的方法?

  • Kafka作为消息队列,它可解决什么样的问题?

  • Hive的文件存储格式都有哪些?

  • HQL:行转列、列转行

  • HQL:一张表字段有 id,name,date,其中id有重复,问如何拿到最新的date对应的id的name?

  • ZooKeeper 如何实现分布式锁?

  • 了解Linux吧?如何查看占用CPU最高的进程?

  • 算法题:用栈实现一个队列,提供入队、出队方法?

二面

  • namenode的主要职责,元数据的形式

  • 介绍namenode宕机的恢复过程

  • namenode启动时datanode向namenode的心跳报告内容

  • block划分的原因

  • HDFS写数据流程

  • 一个多线程代码,判断是否会跳出线程。(主要考察线程中对类静态成员变量的访问)

  • linux bash,一行命令,输出文件中某关键字的出现的行数

三面

  • 一个线程生成key-value对,另外一个线程合并相同的key对value求和

  • SQL语句,合并表里相同人姓名的成绩求和

  • 最后linux bash脚本求去除表头后第二列值的和

  • sql:用户连续登录问题

  • sql:求平均成绩大于80,且0001课程分数高于0002课程分数的学生id

  • 数据倾斜问题

  • jvm内存中,堆和栈的区别?

  • Objects类中的通用方法?其中hashCode方法的返回值是什么?

  • 如何创建一个线程?使用线程设置堆大小?

  • jvm垃圾回收机制?

  • 算法:二叉树的镜像

  • 内存只有256M,有两个10G的文件,从这两个文件中找出相同的数字?(只说思路)

  • 大概就是这些啦,后边要是想起来其他的,会来更。

腾讯

一面

  • 自我介绍

  • 在工作中负责的内容

  • 数仓分层

  • Spark 任务遇见过哪些问题?怎么解决的

  • 维表和事实表

  • 事实表有哪些种类

  • 项目组有哪些人,什么指责

  • 有多少张表,是怎么管理的

  • sql题

  • join 时 on 和 where 语法

  • 用户连续打卡天数

二面

  • 主题是怎么划分的,从那一层开始,为什么

  • 维表和事实表

  • 事实表有哪些种类

  • 数据质量是怎么保证的,有哪些方法保证

  • 怎么衡量数仓的数据质量,有哪些指标

  • 离线任务遇见过哪些问题,怎么处理的,如数据迟到、数据重复

  • 怎么保证数据的一致性

  • 数据仓库和数据中台区别

  • 数据仓库中有哪几类数据建模

  • 对于缓慢变化的数据,在数据仓库中是如何处理的

  • 如何建立用户画像指标的,如何维护

  • 如何实施数据清洗的?从哪些方面着手

  • 如若提供出去的指标有问题,如何解决和定位

美团

一面

  • 1 自我介绍

  • 2 介绍一下数学建模竞赛,做了什么、遇到什么问题、怎么解决的

  • 3 做了几道SQL题

  • 4 常用的操作系统命令

  • 5 io占用很高怎么解决

  • 6 MySQL索引

  • 7 mapreduce原理

  • 8 说说shuffle

  • 9 数据倾斜了解吗,怎么优化

  • 10 项目相关,数据为什么存到mongodb

  • 11 hive了解吗

  • 面试官人很好,建议我找点数据跑一下

二面

  • 1 项目说说你具体做了什么

  • 2 Java实现一个word count

  • 3 改进一下写的代码

  • 4 聊聊spark,spark你做过什么

  • 5 项目里spark streaming用哪一个层面的接口,RDD,dataframe,dataset

  • 6 说一下spark的DAG

  • 7 spark的懒加载机制

  • 8 hive常见的调优方法

  • 9 分区分桶的逻辑

  • 9 网络七层协议,通过每一层解决什么问题

  • 10 Linux常见命令

  • 11 shell写过什么东西

  • 12 shell中管道的概念怎么理解

  • 13 常见数据结构有哪些,怎么理解B树和B+树

  • 14 MYSQL插入一条数据,索引的变化

  • 15 敲键盘,屏幕显示对应的数据,这个过程计算机做了什么

  • 16 字符集编码解码的原理

  • 17 六个人围成一个圆桌就餐有多少种就坐方式?每个人点一道菜,一共有四种菜系,有多少种点法

三面

  • 1 自我介绍

  • 2 本科研究生学过什么计算机的知识

  • 3 操作系统文件系统介绍一下

  • 4 说说你擅长的吧,展开说说Hadoop,hive,hbase

  • 5 Hadoop你搭建过吗,怎么搭建的详细说说

  • 6 zookeeper搭建要配置什么

  • 7 最近做过大数据的相关东西吗,说说你的项目

  • 8 详细说说你建的什么表,rowkey是怎么设计的

  • 9 HBASE适合解决什么问题

  • 10 MySQL适合做什么,你对MySQL了解多少,说说建过的表

  • 11 为什么项目里不把MySQL存的数据不存到HBASE

  • 12 你用MySQL解决过什么实际问题

  • 13 讲讲Java关键的语法特性

  • 14 hashmap的key和value对于存储的实例有什么要求

  • 15 用原始的数据类型实现一个list

网易

一面

  • 1.自我介绍(3分钟)

  • 2.介绍ETL开发项目(15分钟)

  • 3.为什么数据存入hdfs还要再倒入NoSql,为什么hdfs对olap支持不友好。

  • 4.spark任务执行全过程。

  • 5.mapReduce对比spark

  • 6.linux操作命令(没答上来,表示没用到过)

  • 7.统计学中p值的意义,中位数的意义,和均值对比,使用场景

  • 8.业务题:1.网易云课堂突然订阅量下降,怎么定位分析原因2.在各个平台投放简历,怎么评估效果。

二面

  • 1.自我介绍(3分钟)

  • 2.介绍ETL开发项目(15分钟)

  • 3.介绍数据仓库开发,数据迁移项目(10分钟)

  • 4.介绍机器学习项目,怎么和大数据开发做的结合(5分钟)

  • 5.kafka结构,怎样防止脑裂,为什么最新版本不用zookeeper来维护offset

  • 6.手撕代码,找出数组中第二大的数。

三面

  • 1.自我介绍(3分钟)

  • 2.介绍ETL开发项目(15分钟)

  • 3.手撕代码:知道二叉树前中序遍历,怎么得到后续遍历,限时5分钟

  • 4.业务题: 1.开发统计某app用户各功能使用时长,整个流程怎么实现,怎么优化,怎么横向拓展。2.统计评估各个网页的重要性,采取的算法思路,spark代码实现。(实际就是Google page rank算法)

四面

  • 实习做的事

  • 实习公司的技术整体架构

  • 前后端,数据中心算法团队的协同配合

百度

一面

  • 1.项目介绍

  • 2.join的left join , inner join, cross join

  • 3.MR

  • 4.冒泡排序

  • 5.维度建模三种模型

  • 6.Awk

  • 7.动态分区静态分区

  • 8.数据倾斜

  • 9.Join大小表

二面

  • 1.项目介绍(深度挖掘,问到自闭)

  • 2.Sql 取A、B两个表的交集,A表减交集,B表减交集

  • 3.Sql 成绩排名前三的学生的情况

  • 4.Sql 左连接的情况

  • 5.二叉树查找

  • 6.两个有序链表合并

  • 7.Shell、linux常用的语句

  • 8.工厂模式

  • 9.mysql中myIsam,Innodb各自区别和使用场景

三面

  • 1.手撕代码:两个有序数组的交集(写的有点错误)

  • 2.动态分区

  • 3.Linux常用命令

  • 4.Spark数据倾斜、Spark血缘等

八千里路云和月 | 从零到大数据专家学习路径指南

我们在学习Flink的时候,到底在学习什么?

193篇文章暴揍Flink,这个合集你需要关注一下

Flink生产环境TOP难题与优化,阿里巴巴藏经阁YYDS

Flink CDC我吃定了耶稣也留不住他!| Flink CDC线上问题小盘点

我们在学习Spark的时候,到底在学习什么?

在所有Spark模块中,我愿称SparkSQL为最强!

硬刚Hive | 4万字基础调优面试小总结

数据治理方法论和实践小百科全书

标签体系下的用户画像建设小指南

4万字长文 | ClickHouse基础&实践&调优全视角解析

【面试&个人成长】2021年过半,社招和校招的经验之谈

大数据方向另一个十年开启 |《硬刚系列》第一版完结

我写过的关于成长/面试/职场进阶的文章

当我们在学习Hive的时候在学习什么?「硬刚Hive续集」

你好,我是王知无,一个大数据领域的硬核原创作者。

做过后端架构、数据中间件、数据平台&架构、算法工程化。

专注大数据领域实时动态&技术提升&个人成长&职场进阶,欢迎关注。

这篇关于10篇校招/社招面经请你查收~的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1142850

相关文章

腾讯社招面试经历

前提:本人2011年毕业于一个普通本科,工作不到2年。   15号晚上7点多,正在炒菜做饭,腾讯忽然打电话来问我对他们的Linux C++的职位是否感兴趣,我表达了我感兴趣之后,就开始了一段简短的电话面试,电话面试主要内容:C++和TCP socket通信的一些基础知识。之后就问我一道算法题:10亿个整数,随机生成,可重复,求最大的前1万个。当时我一下子就蒙了,没反应过来,何况我还正在烧

【Unity面经】实习篇:面试官常问的一百个面试题

👨‍💻个人主页:@元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 专栏交流🧧🟥Unity100个实战基础✨🎁🟦 Unity100个精华一记✨🎁🟩 Unity50个demo案例教程✨🎁🟨 Unity100个精华细节BUG✨🎁🟨 Unity100个面试题✨🎁 文章

PHP面经

CORS(cross origion resource sharing)跨域资源共享,可以允许跨站请求资源。客户端需要用特定的方法去请求资源(如xmlhttprequest)同时需要带上特定的报文头信息,服务端也要支持跨域的资源请求 memcache和redis的异同点 memcache可以利用多线程,吞吐量高,适合大访问量memcache只支持简单的key/value结构memcache无法

Minimax-秋招正式批-面经(计网)

6. websocket和http区别 websocket知识点总结_防火墙 websocket-CSDN博客 相同点 都是基于TCP协议,都是可靠性传输协议都是应用层协议 不同点 HTTP 类型: 请求-响应式的无状态协议,半双工通信,同一时刻只能一个方向上有动作通信方式: 单向传输,从浏览器到服务器连接持久性: 虽能支持通过 Keep-Alive 持久化连接,但有超时时间,其

【面试个人成长】2021年过半,社招和校招的经验之谈

点击上方蓝色字体,选择“设为星标” 回复”资源“获取更多资源 长话短说。 今天有点晚,因为一些事情耽误了,文章发出来有些晚。 周末的时候和一个知识星球的读者1对1指导了一些应届生的学习路径和简历准备。 因为马上就要秋招了,有些公司的提前批已经启动。2021年已经过半了,各位。时间真是太快了。 正好周末抽了一点时间看之前买的关于面试的电子书,针对校招和社招的面试准备和需要注意的点在啰嗦几句。 校

Java秋招面经(网搜版)

1.redis的数据结构 Redis 提供了多种高效的数据结构来满足不同的应用需求。主要包括字符串(String),这是最基础的数据类型,支持存储和操作各种数据;哈希(Hash),类似于键值对的集合,适合存储对象和结构化数据;列表(List),实现为双向链表,支持从两端插入和删除元素;集合(Set),存储唯一元素并支持集合运算如交集和并集;有序集合(Sorted Set),每个元素都有一个分数,

Minimax-秋招正式批-面经(other)

1. 谈谈对聚簇索引的理解 聚簇索引 InnoDB通过主键聚集数据,如果没有定义主键,InnoDB会选择非空的唯一索引代替。如果没有这样的索引,InnoDB会隐式定义一个主键来作为聚簇索引聚簇索引就是按照每张表的主键构造一颗B+树,同时叶子节点中存放的就是该行的行记录数据,也将聚簇索引的叶子节点称为数据页。这个特性决定了索引组织表中数据也是索引的一部分,每张表只能拥有一个聚簇索引 非聚簇索引

面经学习(hbkj实习)

个人评价 这次面试算是对我基础知识空缺的排查,有很多小知识点是我没有去复习到的,也是一次比较愉快的面试。  1.在java中有哪些数据属于共享变量?(共享变量怎么创建) 共享变量的形式还是很多的,首先就是今天变量进行一个共享变量。当我们需要将某个变量变成一个共享变量的时候需要使用Voliate进行修饰,使其变成共享变量。  2.多线程进行操作数据时如果不上锁为什么共享变量中的数据会被该的乱

【校招面经】机器学习与数据挖掘常见面试题整理 part9

八十、SVM的核函数 from:https://blog.csdn.net/lihaitao000/article/details/51173459 SVM核函数包括线性核函数、多项式核函数、径向基核函数、高斯核函数、幂指数核函数、拉普拉斯核函数、ANOVA核函数、二次有理核函数、多元二次核函数、逆多元二次核函数以及Sigmoid核函数. 核函数的定义并不困难,根据泛函的有关理论,只要一种函数

【校招面经】机器学习与数据挖掘常见面试题整理 part8

七十六、t-SNE from:http://www.datakit.cn/blog/2017/02/05/t_sne_full.html t-SNE(t-distributed stochastic neighbor embedding)是用于降维的一种机器学习算法,是由 Laurens van der Maaten 和 Geoffrey Hinton在08年提出来。此外,t-SNE 是一种非