首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
等一个晴天-_
蚂蚁集团_蚂蚁国际-全球技术_高级测试开发工程师
发布于江苏
关注
已关注
取消关注
@三石大数据:
快手大数据开发高频面试题及答案【海量hc】
推荐阅读文章列表:大数据开发面试笔记V4.0 || 面试聊数仓第一季 || 小白大数据学习路线 一、前言快手海量hc!!!快手海量hc!!!快手海量hc!!!一点不夸张,业务发展迅猛,大量招人二、高频面试题总结1. 当数据量很大的时候,count(distinct uid)计算失败怎么办两种解决方案:采用group by将uid转换为bitmap存储,然后再求总数,不仅计算优化,对存储也优化(***)2. ClickHouse为什么快数据是基于列式存储的,这样对于列的聚合统计更加有优势多样化的表引擎,可以根据不同的需求选取不同的表引擎,比如replacingmergetree,summingmergetree3. 小文件过多对Namenode有什么影响存储大量的小文件,会占用namenode大量的内存来存储元数据信息4. Hadoop和Hive的关系hive就是MapReduce的一个客户端工具5. Zookeeper在HBase的作用是什么zookeeper主要是用来保证master的高可用6. Flink checkpointflink应用在启动的时候,flink的JobManager创建CheckpointCoordinatorCheckpointCoordinator(检查点协调器) 周期性的向该流应用的所有source算子发送 barrier(屏障)。当某个source算子收到一个barrier时,便暂停数据处理过程,然后将自己的当前状态制作成快照,并保存到指定的持久化存储(hdfs)中,最后向CheckpointCoordinator报告自己快照制作情况,同时向自身所有下游算子广播该barrier,恢复数据处理下游算子收到barrier之后,会暂停自己的数据处理过程,然后将自身的相关状态制作成快照,并保存到指定的持久化存储中,最后向CheckpointCoordinator报告自身快照情况,同时向自身所有下游算子广播该barrier,恢复数据处理。每个算子按照 上面这个操作 不断制作快照并向下游广播,直到最后barrier传递到sink算子,快照制作完成。当CheckpointCoordinator收到所有算子的报告之后,认为该周期的快照制作成功; 否则,如果在规定的时间内没有收到所有算子的报告,则认为本周期快照制作失败。7. Flink watermark我先说一下watermark是什么,它就是一种特殊的时间戳,作用就是为了让事件时间慢一点,等迟到的数据都到了,才触发窗口计算。我举个例子说一下为什么会出现watermark?比如现在开了一个5秒的窗口,但是2秒的数据在5秒数据之后到来,那么5秒的数据来了,是否要关闭窗口呢?可想而知,关了的话,2秒的数据就丢失了,如果不关的话,我们应该等多久呢?所以需要有一个机制来保证一个特定的时间后,关闭窗口,这个机制就是watermark8. HDFS读写流程写流程:hadoop fs -put a.txt /user/sl/首先客户端会向namenode进行请求,然后namenode会检查该文件是否已经存在,如果不存在,就会允许客户端上传文件;客户端再次向namenode请求第一个block上传到哪几个datanode节点上,假设namenode返回了三个datanode节点;那么客户端就会向datanode1请求上传数据,然后datanode1会继续调用datanode2,datanode2会继续调用datanode3,那么这个通信管道就建立起来了,紧接着dn3,dn2,dn1逐级应答客户端;然后客户端就会向datanode1上传第一个block,以packet为单位(默认64k),datanode1收到后就会传给datanode2,dn2传给dn3当第一个block传输完成之后,客户端再次请求namenode上传第二个block。【写的时候,是串行的写入 数据块】9. Spark和MR的区别MapReduce需要将计算的中间结果写入磁盘,然后还要读取磁盘,从而导致了;而Spark不需要将计算的中间结果写入磁盘,这得益于Spark的RDD弹性分布式数据集和DAG有向无环图,中间结果能够以RDD的形式存放在内存中,这样大大减少了磁盘IO。(假设有多个转换操作,那么spark是不需要将第一个job的结果写入磁盘,然后再读入磁盘进行第二个job的,它是直接将结果缓存在内存中)MapReduce在shuffle时需要花费大量时间排序,而spark在shuffle时如果选择基于hash的计算引擎,是不需要排序的,这样就会节省大量时间。MapReduce是多进程模型,每个task会运行在一个独立的JVM进程中,每次启动都需要重新申请资源,消耗了大量的时间;而Spark是多线程模型,每个executor会单独运行在一个JVM进程中,每个task则是运行在executor中的一个线程。10. MR shuffle的原理map端shuffle:将map后的<k,v>写入环形缓冲区【默认100m】,一半写元数据信息(key的起始位置,value的起始位置,value的长度,partition号),一半写<k,v>数据,等到达80%的时候,就要进行spill溢写操作,溢写之前需要对key按照【分区算法默认是,分区号是根据key的hashcode对reduce task个数取模得到的。这时候有一个优化方法可选,combiner合并,就是预聚合的操作,将有相同Key 的Value 合并起来, 减少溢写到磁盘的数据量,只能用来累加、最大值使用,不能在求平均值的时候使用】;然后到文件中,并且进行(多个溢写文件);reduce端shuffle:reduce会同一分区的各个maptask的结果到内存中,如果放不下,就会溢写到磁盘上;然后对内存和磁盘上的数据进行(这样就可以满足将key相同的数据聚在一起); 【Merge有3种形式,分别是内存到内存,内存到磁盘,磁盘到磁盘。默认情况下第一种形式不启用,第二种Merge方式一直在运行(spill阶段)直到结束,然后启用第三种磁盘到磁盘的Merge方式生成最终的文件。】11. HQL转换为MR的过程首先客户端提交SQL以后,Hive利用Antlr框架对HQL完成词法语法解析,将HQL转换成抽象语法树然后遍历AST,将其转换成queryblock ,可以理解为最小的查询执行单元,比如where然后遍历查询块,将其转换为操作树,也就是逻辑执行计划然后使用优化器对操作树进行逻辑优化,源码中会遍历所有的优化方式,比如mapjoin,谓词下推等,来达到减少MapReduce Job,减少shuffle数据量的目的最后通过执行器将逻辑执行计划转换为物理执行计划(MR到这就结束了)(Tez和Spark还需要 使用物理优化器对任务树进行物理优化),提交到hadoop集群运行12. 数据仓库分层的好处第一个是将复杂的需求简单化;我们通过将复杂的问题分解为多个步骤来完成,每一层只处理单一的步骤,比较容易和理解第二个是提高数据的复用性;比如在已经得到最终结果之后,又需要中间层的一些数据,我可以直接查询中间层的数据,不必重新进行计算补充说一下:我觉得数据仓库就是一种以空间换取时间的架构!
点赞 12
评论 1
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
01-26 09:53
已编辑
北京大学 Java
学会“原子化”Prompt
经验就一条:Prompt 一定要拆开,任务一定要变简单。在面对小模型时,它们能力有限,如果把一堆要求(比如整篇文章+要求)塞进一个 Prompt,可能回答的就牛头不对马嘴了——不是主语识别不全,就是逻辑硬伤,或者答案缺斤少两。要把 Prompt 变成“工作流”,每一步只处理一个问题。比如“根据文章提问”,我通常拆成三步:第一步:只让模型识别文章的主语。第二步:根据主语去编问题。第三步:再针对问题生成答案。每步只干一件事,模型想出错都难。再比如做长文本的“分块(Chunk)”处理:不要让模型重写全文,除非你的token值够用,而且还会增加它的思考难度。你可以把原文段落编上号,让模型只输出:“标题...
Prompt分享
点赞
评论
收藏
分享
01-22 13:42
蓝禾技术_电商事业部_电商运营管培生(准入职员工)
蓝禾科技内推,蓝禾科技内推码
面经:蓝禾的流程推得很快,基本上投完两天就接到了hr的初试电话,直接进行了初试。初试全程大概三十分钟,hr小哥态度很和善。主要问了实践经历获奖的情况最有成就感的事情对电商运营的理解选择公司的标准等,都是比较常规的问题。禾你一起,做不可能的事 | 蓝禾26届校招启动啦公司介绍:蓝禾2008年成立于深圳,是一家集产品、设计、研发、品牌、营销、大数据运营于一体的创新型科技公司,旗下拥有图拉斯TORRAS、锐舞RANVOO、卡斯酷CASEKOO等多个品牌招聘岗位:运营(国内)、运营(国外)、营销、设计、研发技术、职能工作地点:深圳内推链接:https://lanhevip.jobs.feishu.cn...
点赞
评论
收藏
分享
2025-12-13 13:20
西安交通大学 Java
大家面试一定不要紧张啊啊啊
主包是转码,投了一百多份简历就约到一个面。第一次面试,还是大厂,给自己心理压力太大了面试前几天焦虑到吃不下饭,结果面试的时候太紧张导致大脑宕机,啥也说不出来晚上复盘发现问的都很简单
叁六玖:
刚接触面试那有不紧张的,我第一次腿都在抖
点赞
评论
收藏
分享
2025-12-29 16:38
门头沟学院 C++
冒昧的问题
面试官:“接下来可能需要问您一些冒昧的问题,您有对象吗?您接受加班吗?”我:“???”面试官:“您为什么不考雅思?“我:”???“面试官:”您为什么选择读研究生,您有什么人生规划?“我:”田文镜,我******“
面试官问过你最刁钻的问题...
点赞
评论
收藏
分享
01-26 08:24
厦门大学 驱动开发
对于硬件来讲,也可以包装实习简历
1.包装/编写说明针对实习,大家应该都是聚焦于两个问题:(1)有实习经历,但是实习经历没做什么东西,简历不知道怎么写(2)没有实习经历,想包装一份实习经历,给简历加分(应届生没有背调,只要学历是真的,一切都是真的)针对没有实习经历,想包装实习的。我认为要包装直接就包装大厂、知名公司的。不要费劲把擦的包装了,还包装一个连名字都没听说过的公司,这样简历上也加不了多少分,还浪费很大的精力,不值得。(要不就不干,要干就干个大的)2.有实习经历,怎么包装的更有含金量一点要想知道怎么让包装让简历更加有含金量一点。我们首先就要思考下,通过这段实习我们获得了什么、能获得什么、应该获得什么?接下来可以从两个层面...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
牛客吐槽大会 | 有槽不吐,留着过年?吐完领现金红包,痛快!
5515
2
...
J人永远闲不下来于是去提前实习
2844
3
...
拥抱AI,程序员的最后出路
2305
4
...
大厂提前实习对AI开发的新感悟
2173
5
...
真正会被取代的,是你心里面的幻觉
2059
6
...
马斯克最新炸裂采访,AI会带走一半工作岗位,普通人将何去何从?
1883
7
...
努力挣钱的意义具象化了
1866
8
...
mentor视角下的优秀实习生
1681
9
...
去独角兽做龙头还是去大厂做凤尾
1668
10
...
滴滴lastweek,知无不言
1529
创作者周榜
更多
正在热议
更多
#
赚钱的意义在这一刻具象化
#
2813次浏览
69人参与
#
哪些瞬间让你真切感受到了工作的乐趣
#
23109次浏览
98人参与
#
今年春招是金一银二嘛?
#
3808次浏览
50人参与
#
AI求职实录
#
1910次浏览
59人参与
#
1月小结:你过的开心吗?
#
925次浏览
30人参与
#
你的第一家实习公司是什么档次?
#
2662次浏览
47人参与
#
抛开难度不谈,你最想去哪家公司?
#
2118次浏览
63人参与
#
为什么有人零实习也能进大厂?
#
3036次浏览
68人参与
#
AI时代的工作 VS 传统时代的工作,有哪些不同?
#
6080次浏览
140人参与
#
你的landing期是如何度过的?
#
5850次浏览
98人参与
#
工作后会跟朋友渐行渐远吗
#
57698次浏览
411人参与
#
除了Java,最推荐学什么技术?
#
4167次浏览
114人参与
#
当你问AI“你会取代我的工作吗”,它说_?
#
2254次浏览
80人参与
#
汇川技术求职进展汇总
#
177650次浏览
1055人参与
#
我是XXX,请攻击我最薄弱的地方
#
55631次浏览
388人参与
#
选offer应该考虑哪些因素
#
139838次浏览
983人参与
#
你觉得什么岗位会被AI替代
#
36183次浏览
248人参与
#
如果工作一直消耗情绪还要继续做吗
#
18514次浏览
88人参与
#
你上一次加班是什么时候?
#
128867次浏览
737人参与
#
非技术岗简历怎么写
#
284104次浏览
3185人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务