❤ 想知道大厂面试都问什么吗,附最强面试技巧!!(大数据开发岗)❤

举报
不吃西红柿 发表于 2021/07/14 23:20:19 2021/07/14
【摘要】 作者简介 蓝桥签约作者、大数据&Python领域优质创作者。维护多个大数据技术群,帮助大学生就业和初级程序员解决工作难题。 我的使命与愿景:持续稳定输出,赋能中国技术社区蓬勃发展! 粉丝福利:免费下载海量【PPT模板、简历模板、学习资料】 目录 1、沟通技巧 1)引导式聊天 2)自信的表达 3)不要暴露缺点 2、充足且针对性的知识储备 1)技术...

作者简介

蓝桥签约作者、大数据&Python领域优质创作者。维护多个大数据技术群,帮助大学生就业和初级程序员解决工作难题。

我的使命与愿景:持续稳定输出,赋能中国技术社区蓬勃发展!

粉丝福利:免费下载海量【PPT模板、简历模板、学习资料】


目录

1、沟通技巧

1)引导式聊天

2)自信的表达

3)不要暴露缺点

2、充足且针对性的知识储备

1)技术框架部分

2)项目部分

3)算法部分

4)HR部分

3、真实面试案例

真实面试案例(一)

真实面试案例(二)

真实面试案例(三)


很多小伙伴问我说:你拿了那么多大厂的offer,有什么面试套路吗?

我想说的是,面试无非就两点:沟通技巧 + 充足且针对性的知识储备。


1、沟通技巧

1)引导式聊天

        简单来说,就是从自我介绍开始,就蹦出一些技术名词,引导面试官对这些技术知识点进行提问,然后提前准备好答案,回答完上一个问题的时候,扯一嘴其他的技术知识点(很多面试官喜欢打破砂锅问到底,但往往中了你的圈套)。

        在面试过程中有很多引导的机会,慢慢体会吧!

                

2)自信的表达

        一个自信的表达,能让整体面试气氛轻松活跃,给面试官好的印象分,面试就像谈恋爱,看感觉的。

3)不要暴露缺点

        很多小伙伴(包括当年的我),在面对不会的提问时,不断的去解释,反而会暴露更多问题。这个时候你完全可以说这个不太了解,然后继续后面的回答。相信我,放过几个不会的,不会影响面试结果,因为没有人什么都懂, 你要做的就是:尽可能多的呈现你会的,快速跳过不会的!


2、充足且针对性的知识储备

        关于知识储备,我在技术群里咨询了一些大厂的小伙伴的面试经历,分享给大家。

        针对这些问题的回答话术,小编会在近期啃下来,作为粉丝福利发布。

1)技术框架部分

     (1)会根据面试者简历上的技能点进行考察。注意技能点描述用词,不要随便用熟悉,觉得特别熟的可以说熟练使用

     (2)常用的大数据框架是肯定会问的,比如Hive、Spark、Kafka等。常见的如Kafka精准消费问题的多种解决办法对比,Spark的Task调度规则

     (3)有些面试官会直接让讲了解的框架最底层实现

     (4)Java,MySQL,Redis必问,JVM,Hashmap,JUC相关,MySQL的索引及优化,Redis数据结构、集群、缓存淘汰

     (5)常见的协议会考,租约协议,quarum原理,Zookeeper选举,acid,acp,base等

2)项目部分

     (1)一般会让你挑你最熟的一个项目讲。考察从项目背景到实现的把控

     (2)重点是参与的部分,遇到的难点

     (3)常见业务难题的解决和优化,层层递进,头条追求做到极致

     (4)没有做过的项目、模块不要乱讲,容易被问懵逼或者被太简单被鄙视

3)算法部分

     (1)数据结构必考,手写代码,每一面都会考。常见数组、链表、二叉树、跳表的题。有些部门会先笔试(电脑实际编码运行)再面试

     (2)算法部分常见动态规划、概率题、二进制一类

     (3)SQL题目,行列转换。分区函数,统计连续登陆天数这一类问题

     (4)多刷Leetcode,题都是有套路的

4HR部分

     (1)想好跳槽理由,一般注重抗压能力和稳定性

     (2)大厂会有明确的稳定性的要求,如:无连续2段不超过1年的工作经历,当然,一般安排面试的话,就说明稳定性和学历初筛通过了。       


3、真实面试案例

真实面试案例(一)

 1)技术部分

(1)WordCount的实现过程

(2)MR与Spark的区别

(3)Spark在Client与在集群运行的区别

(3)相同的SQL在HiveSql与SparkSQL的实现中,为什么Spark比Hadoop快

(4)自定义UDF

(5)设计HBase表需要注意的点

(6)HBase的hlog

(7)数据同样存在HDFS,为什么HBase支持在线查询

(8)数据从Hive中用SparkSql进行操作有遇到什么问题?类似兼容性的问题。

(9)SparkStream与Strom,Flink与什么区别

(10)有三个map,一个reduce来做top10,哪种方法最优。数据量特别大。

 2)项目的架构

(1)数据仓库的模型设计

(2)数据仓库的数据清洗

(3)业务建模、数据分析方法。

(4)数据仓库是怎么设计的

(5)数仓规范设计哪些方面(字段、维度,存储压缩、数据保留机制)

(6)数仓质量怎么监控(数据质量管理系统,主键唯一、非空、数据波动)

(7)数仓主题分哪些(按照公司业务归类

(8)数仓拉链表的原理

(9)有没有遇到数据倾斜的问题(场景、解决方式)

(10)数仓重点调度任务的保障方式(调度系统优先级)

(11)数仓任务报错和监控(调度系统捕捉错误,电话短信告之值班人员)


真实面试案例(二)

1)笔试部分

(1)有一表名t_sh_mtt_netdisk_log,从表名可以看出该表是什么业务的,是什么周期粒度的表。

(2)怎么查看表结构,表创建语句?怎么查看表有哪些分区?怎么查看分区对应hdfs路径?怎么计算某个分区的数据量大小?怎么计算某个分区的文件总数?

(3)有一hive sql,怎么计算这个sql会产生多少个map数?

(4)怎么查看hive有什么自带函数?怎么查看函数的详细信息?

(5)Hive支持哪些基木数据类型?

(6)请指出下面两个语句读取分区ds数据的不同

Select * from t where ds=20150101 and province='gd' or province='ex'

Select x fromt where ds 20150101 and(province='gd' or province='ex')

(7)将字符串"keyl=valuel&key2=value2...keyn=valuen"进行分割放到一个字段里面,可以查出任意一个keyx对应的valuex值。请写出查询语句,并计算总共有多少个key值。

(8)用一个字符串比如"alblc"来测试某个函数比如split(用|分隔符将字符串进行分割)的语句

(9)a表和b表内连接,a表为小表,只有2000行记录

select a.*from a Join b on a.key=b.key

可以进行怎样的优化

(10)a表left join b表,b表为小衣,可以进行怎样优化?

scleet a.*from a left join Join b ona.key=b.key

如果a为小表,可以怎样优化?

(11)请指出下面sql语句的区别

select a.* from a left Join b on a.key = b.key and a.ds=xxx and b.ds=xxx

sclect a.* from a lef Join b on a.key = b.key and b.ds=xxx

select a.* from a lef Join b on a.key = b.key and b.ds=xxx where a.ds=xxx

Select a.* from a left Join b on a.key = b.key where a.ds=xxx and b.ds=xxx

(12)多表连按的写法:a,.b,c三个表内连接,连接字段都是key,怎样写连接语句?

(13)两大表连接,发生了数据倾斜,有几个reduce无法完成,怎么查找发生数据领斜的原因?应该怎样优化?

语句:select t1.*,nvl(t2.x,1) from t1 left join t2 on t1.guid=t2.guid

(14)两大表连接,发生了数据倾斜。有一个reduce无法完成,检直发现t1中guid="的记录有很多,其他guid都不重复,这条语句该怎样优化?

语句:select t1.*,nvl(t2.x,1) from t1 left join t2 on t1.guid = t2.guid

(15)如何用hive q!实现sqL中的exist/in 子句

mysql语句如下:

SEL ECT a* FROM a where a.key in(select dstinct key from b where key like ‘filter%’)

(16)sort by、distribute by、cluster by 和 order by 区别

注:可参考数据工厂的“帮助中心》集群hive》hive使用优化》hive使用注意事项”


真实面试案例(三)

1)技术部分

(1)我看你上面写了你会Spark,那你用Spark写一下刚刚那道题的代码,不能用Spark SQL

(2)我看你上面有写到熟悉Hive原理和优化,你说一下怎么优化

(3)优化有说到语句优化,然后又说回到pv和uv那个问题,假如说让你优化你怎么优化(我代码里面有count(distinct id) uv,)

(4)问了一些Kafka的,我只记得一点点,问我数据会不会重复消费,什么情况下会重复消费

(5)在Hive执行语句的时候如果很慢,什么原因造成

我有提到数据倾斜的问题,他又问怎么解决数据倾斜

2)项目部分

(1)让你挑一个比较有亮点的项目详细说

(2)你负责了什么,数仓中统计了哪些指标,

(3)刚刚听你说项目里面有提到分层,如果我要你求每天商品的pv,uv,从ods层到dm层它的具体流向,各层都统计了什么(后来让写求pv,uv的sql语句)

3)场景部分

(1)有一个分区表,表名T,字段qq,age,按天分区,让写出创建表的语句

(2)刚刚的分区表,求20200221这个分区中,年龄第N大的qq号列表

4)手写部分

(1)三个字段,timestamp,user_id,product_id,让求pv最大的商品,写了之后又叫用Scala代码写一遍,然后又问,假如说只让你求pv数大于100的top3呢,代码又怎么写


 

【求评论、求点赞、求收藏】 




读到此处的大佬,你的面试技巧有哪些呢?请在评论区畅所欲言吧!!



文章来源: notomato.blog.csdn.net,作者:不吃西红柿丶,版权归原作者所有,如需转载,请联系作者。

原文链接:notomato.blog.csdn.net/article/details/118252471

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。