這是小編的一個(gè)讀者喜提offer后在群里做的分享,文中隱藏了讀者的個(gè)人隱私信息玄妈,小編這里把他的面經(jīng)分享出來供大家學(xué)習(xí)乾吻。
群友們看到后都紛紛表示【我酸了,現(xiàn)在我就是個(gè)檸檬精系列】拟蜻。
關(guān)于如何學(xué)習(xí)/準(zhǔn)備面試的總結(jié)
首先說一說本人的情況
本人普通本科绎签,非計(jì)算機(jī)專業(yè)(之前一直對(duì)這個(gè)耿耿于懷,后來想通了覺得60%從事軟件開發(fā)的都是非計(jì)算機(jī)專業(yè)酝锅,之后的面試直接說我是非計(jì)算機(jī)專業(yè)诡必,這一塊的誠實(shí)很重要,
也沒有必要瞞著搔扁,因?yàn)楣究粗械氖悄愕拈_發(fā)能力爸舒,能不能幫公司解決問題)。對(duì)于群里的大牛來說稿蹲,看了之后肯定會(huì)笑話我扭勉,哈哈,不過我的能力就這么大场绿,每年有進(jìn)步就很開心剖效。
怎么學(xué)習(xí)群主的帖子
群主基本每周都會(huì)對(duì)帖子有更新,我是一個(gè)比較細(xì)心的人焰盗,每天上班去公司要2個(gè)小時(shí)左右璧尸,然后在地鐵上的時(shí)間都會(huì)在看群主的帖子,一是為了拓展見識(shí)熬拒,二是為了夯實(shí)基礎(chǔ)知識(shí)爷光。對(duì)于我公司開發(fā)項(xiàng)目有相似的帖子,會(huì)進(jìn)行收藏澎粟,之后做好筆記蛀序,理解群主說這個(gè)技術(shù)棧的思路,為什么要這樣搞活烙,而不是單單的對(duì)里邊的理論知識(shí)進(jìn)行記憶徐裸,這一點(diǎn)很重要,特別是面試的時(shí)候能說出這些東西啸盏,都可以讓面試官耳目一新重贺。
我記得特別深刻的是群主在kafak和spark那一塊的講解,kafka怎么實(shí)現(xiàn)實(shí)時(shí)性(pagecage頁緩存,順序?qū)懘疟P气笙,零復(fù)制技術(shù)等等)次企,面試官問到這一塊的時(shí)候,我都有說的很詳細(xì)潜圃,然后面試官都會(huì)跟我說:嗯缸棵,你的基礎(chǔ)能力很扎實(shí)。還有spark調(diào)優(yōu)那一塊谭期,這個(gè)是我的強(qiáng)項(xiàng)堵第。我把自己掌握和實(shí)踐中用的方法用自己的語言總結(jié)了一部分(數(shù)據(jù)傾斜,內(nèi)存溢出崇堵,開發(fā)調(diào)優(yōu)型诚,資源調(diào)優(yōu),shuffle調(diào)優(yōu)等)鸳劳,每一個(gè)點(diǎn)都能夠自己總結(jié)出一個(gè)例子出來狰贯,說給面試官聽,之后面試官都會(huì)給出高度的評(píng)價(jià)赏廓。
注意事項(xiàng)
知識(shí)的學(xué)習(xí)要結(jié)合自己簡歷中的項(xiàng)目和技術(shù)架構(gòu)涵紊,不能原封不動(dòng)的抄襲;公司做的有哪些項(xiàng)目幔摸,那么安排上摸柄,再從群主的帖子里去找靈感,這一點(diǎn)很重要既忆,你不能拿著沒有做過的項(xiàng)目來套這些東西驱负,因?yàn)橐粋€(gè)項(xiàng)目會(huì)牽涉到業(yè)務(wù)場景,項(xiàng)目背景以及實(shí)現(xiàn)中的很多細(xì)節(jié)患雇,亂編的項(xiàng)目肯定有考慮不到的地方跃脊,有一些細(xì)節(jié)都會(huì)被問出來,結(jié)果讓面試官對(duì)你產(chǎn)生了懷疑苛吱±沂酰基于真實(shí)項(xiàng)目的技術(shù)架構(gòu),吸收帖子里邊的一些思想翠储,加上自己的思考绘雁,這樣進(jìn)步就會(huì)很快。
遇到的面試題
Java基礎(chǔ)
JVM優(yōu)化和多線程必問援所。
數(shù)倉必問
mapreduce的底層原理(shuffle重點(diǎn))庐舟;hivesql怎么轉(zhuǎn)化為mapreduce;數(shù)據(jù)傾斜怎么處理(大表join大表住拭,大小表join继阻,參數(shù)調(diào)優(yōu)等等)耻涛;hive的優(yōu)化废酷;數(shù)倉分層細(xì)節(jié)瘟檩,數(shù)倉建模;拉鏈表澈蟆;緩慢變化維墨辛;星型模型和雪花模型區(qū)別;數(shù)據(jù)庫三范式趴俘;事實(shí)表的分類睹簇;具體場景寫sql;
Spark部分
spark的運(yùn)行原理;spark數(shù)據(jù)傾斜寥闪;spark內(nèi)存溢出太惠;spark的調(diào)優(yōu);spark的rdd算子細(xì)節(jié)(map疲憋,mappartition,groupbykey凿渊,reducebykey等等很多,需要自己逐一的梳理)缚柳;sparksql(sparksql怎么解析埃脏、dataframe、dateset)秋忙;spark的內(nèi)存模型彩掐;spark的shuffle原理,shuffle優(yōu)化灰追。
kafka部分
kafak負(fù)載均衡堵幽;kafka數(shù)據(jù)一致性弹澎;kafka的ack機(jī)制朴下;kafka的exact once語義裁奇;kafka分區(qū)策略;kafka分區(qū)的目的等等刽肠。
zk部分
zk選舉機(jī)制溃肪,zk用到的算法;zk的數(shù)據(jù)一致性音五;zk 節(jié)點(diǎn)宕機(jī)如何處理;負(fù)載均衡躺涝;zk一些接口。
hbase
讀寫原理;rowkey設(shè)計(jì)夯膀;熱點(diǎn)問題诗充;數(shù)據(jù)版本;habse的優(yōu)化诱建。
elasticsearch
es的讀寫原理;es的倒排索引俺猿;es的優(yōu)化(重點(diǎn)必問);場景下的es提問押袍。
自己的感受
感覺越往高級(jí)的面,就會(huì)傾向于問你組件調(diào)優(yōu)以及架構(gòu)方面的知識(shí):如分布式汽馋;CAP理論午笛;數(shù)據(jù)一致性以及知識(shí)掌握的全面性惭蟋,這些部分都是我需要學(xué)習(xí)的地方药磺,不說了,再說就感覺自己的水平很low了癌佩,哈哈。
然后就是寫簡歷的時(shí)候不貪多我碟,把每個(gè)項(xiàng)目的實(shí)現(xiàn)細(xì)節(jié)都給搞清楚姚建,很容易就面過矫俺,基于此我基本每家單位的一面都能過掸冤,二面三面的時(shí)候一方面看知識(shí)的深度,另一方面靠自己的表達(dá)能力铅匹。最后就是感覺現(xiàn)在好多公司喜歡搞數(shù)據(jù)中臺(tái)饺藤,數(shù)據(jù)治理這一塊包斑,這一塊我在我們公司搞過一點(diǎn),感覺可能也是一個(gè)加分項(xiàng)神帅。
最后弱弱的給小編打個(gè)廣告丸卷,后臺(tái)回復(fù)【知識(shí)星球】,可以加到圈子里來谜嫉。未來一段時(shí)間都在持續(xù)更新面試題系列凹联。
小編把阿里巴巴、騰訊蔽挠、美團(tuán)等大廠的Java和大數(shù)據(jù)面試題整理成了電子書和資源,目錄如下:
鏈接: https://pan.baidu.com/s/1ifHfofjawqD9jn2lvoh0NA 提取碼: h79x
另外比原,微信搜索關(guān)注【import_bigdata】,回復(fù)【資源】杠巡,還有幾百G大數(shù)據(jù)資源下載!
歡迎關(guān)注氢拥,《大數(shù)據(jù)成神之路》系列文章