欧美1区2区3区激情无套,两个女人互添下身视频在线观看,久久av无码精品人妻系列,久久精品噜噜噜成人,末发育娇小性色xxxx

大數(shù)據(jù)相關(guān)面試題每日五問(wèn)(二)

  1. 常見(jiàn)的窗口排序函數(shù)你知道哪些?說(shuō)一下他們各自作用。
  2. HDFS如何保證數(shù)據(jù)的可靠性和高可用性?它的副本機(jī)制是如何工作的?
  3. ES是如何保證數(shù)據(jù)高可用性的?如果一個(gè)節(jié)點(diǎn)宕機(jī),系統(tǒng)會(huì)如何處理?
  4. Hive表里的分桶有哪幾種形式,分桶與分區(qū)的區(qū)別?什么時(shí)候要去做分桶?
  5. Spark調(diào)優(yōu)思路?

常見(jiàn)的窗口排序函數(shù)你知道哪些?說(shuō)一下他們各自作用。

常見(jiàn)的窗口排序函數(shù)主要包括 ROW_NUMBER()、RANK()、DENSE_RANK()、NTILE() 等,它們常配合窗口函數(shù) OVER(PARTITION BY ... ORDER BY ...) 使用,作用是對(duì)分組內(nèi)的數(shù)據(jù)進(jìn)行排序和排名。ROW_NUMBER() 是最常用的,給每一行按順序分配唯一的序號(hào),不會(huì)出現(xiàn)重復(fù);RANK() 會(huì)對(duì)相同值的記錄賦相同名次,跳過(guò)后續(xù)名次(比如并列第 2,下一名是第 4);DENSE_RANK() 同樣對(duì)相同值的記錄賦相同名次,但不會(huì)跳過(guò)名次(并列第 2,下一名是第 3);NTILE(n) 是把分組內(nèi)的記錄按順序平均分成 n 份,為每行分配一個(gè)從 1 到 n 的桶編號(hào)。它們常用于如 TopN 查詢、分組內(nèi)排序、分位分析等場(chǎng)景,能在保留全部數(shù)據(jù)的同時(shí)進(jìn)行靈活排名。

HDFS如何保證數(shù)據(jù)的可靠性和高可用性?它的副本機(jī)制是如何工作的?

HDFS 通過(guò)副本機(jī)制來(lái)保證數(shù)據(jù)的可靠性和高可用性,每個(gè)文件被切分成多個(gè)塊(Block),每個(gè)塊默認(rèn)會(huì)在集群中存儲(chǔ) 3 個(gè)副本,分別保存在不同的 DataNode 上,從而避免因單點(diǎn)故障導(dǎo)致數(shù)據(jù)丟失。當(dāng)某個(gè)副本所在的節(jié)點(diǎn)宕機(jī)或數(shù)據(jù)損壞時(shí),NameNode 會(huì)感知并在其他健康節(jié)點(diǎn)上重新復(fù)制該副本,自動(dòng)修復(fù)數(shù)據(jù),確保副本數(shù)維持在配置值以上;同時(shí),HDFS 的 NameNode 雖然是管理元數(shù)據(jù)的核心,但通過(guò)配置 主備 NameNode(HA 高可用架構(gòu)),結(jié)合 Zookeeper 實(shí)現(xiàn)故障自動(dòng)切換,避免了單點(diǎn)故障風(fēng)險(xiǎn)。整體上,HDFS 通過(guò)副本冗余、故障感知、自愈機(jī)制和主備架構(gòu),保障了系統(tǒng)的穩(wěn)定性與數(shù)據(jù)安全。

ES是如何保證數(shù)據(jù)高可用性的?如果一個(gè)節(jié)點(diǎn)宕機(jī),系統(tǒng)會(huì)如何處理?

Elasticsearch 通過(guò)主分片和副本分片機(jī)制來(lái)實(shí)現(xiàn)數(shù)據(jù)的高可用性。每個(gè)索引的數(shù)據(jù)會(huì)被劃分為多個(gè)主分片(primary shard),并為每個(gè)主分片配置一個(gè)或多個(gè)副本分片(replica shard),這些分片分布在不同的節(jié)點(diǎn)上。當(dāng)一個(gè)節(jié)點(diǎn)宕機(jī)時(shí),集群中的 Master 節(jié)點(diǎn)會(huì)立即檢測(cè)到,并將其上的主分片的副本分片提升為新的主分片,繼續(xù)對(duì)外提供讀寫(xiě)服務(wù),同時(shí)將缺失的副本在其他節(jié)點(diǎn)上重新分配和恢復(fù),確保數(shù)據(jù)不丟失、服務(wù)不中斷。此外,Elasticsearch 的分布式架構(gòu)可以自動(dòng)進(jìn)行分片重分配、數(shù)據(jù)均衡和故障轉(zhuǎn)移,從而實(shí)現(xiàn)系統(tǒng)的自我修復(fù)和持續(xù)可用。

Hive表里的分桶有哪幾種形式,分桶與分區(qū)的區(qū)別?什么時(shí)候要去做分桶?

Hive 中的分桶是通過(guò)對(duì)某一列進(jìn)行哈希計(jì)算,再將數(shù)據(jù)平均分配到固定數(shù)量的桶中,常見(jiàn)形式是在建表時(shí)使用 CLUSTERED BY (列名) INTO N BUCKETS 來(lái)定義分桶。分桶和分區(qū)的主要區(qū)別在于:分區(qū)是將數(shù)據(jù)按目錄層級(jí)物理劃分,適用于大范圍數(shù)據(jù)的篩選,提升查詢效率;而分桶是在分區(qū)或全表內(nèi)部的進(jìn)一步劃分,提高了數(shù)據(jù)的分布均勻性和采樣、Join 的效率。通常在以下場(chǎng)景下需要使用分桶:一是當(dāng)需要對(duì)大表做 桶映射 Join(bucket map join),提升 Join 性能;二是在使用 抽樣查詢(tablesample) 時(shí)保證樣本均勻性;三是為了優(yōu)化數(shù)據(jù)傾斜問(wèn)題或提升并行度。簡(jiǎn)而言之,分區(qū)適用于大粒度的數(shù)據(jù)劃分,分桶適用于細(xì)粒度的數(shù)據(jù)優(yōu)化。

Spark調(diào)優(yōu)思路?

Spark 調(diào)優(yōu)的整體思路可以從 資源配置、并行度控制、Shuffle 優(yōu)化、緩存策略和代碼邏輯 五個(gè)方面入手。首先是資源配置,要合理設(shè)置 executor 的數(shù)量、內(nèi)存(executor-memory)和 CPU 核數(shù)(executor-cores),避免資源浪費(fèi)或不足;其次是并行度控制,通過(guò)設(shè)置 spark.sql.shuffle.partitions 或 RDD 的 repartition 來(lái)調(diào)整任務(wù)并行度,防止過(guò)多或過(guò)少的分區(qū)導(dǎo)致性能問(wèn)題;在 Shuffle 優(yōu)化 方面,要盡量減少 shuffle 操作,比如用 map-side joinbroadcast join 替代大表 shuffle;對(duì)于 緩存策略,使用 persistcache 緩存重用的中間結(jié)果,減少重復(fù)計(jì)算;最后,優(yōu)化 代碼邏輯,如避免冗余轉(zhuǎn)換、過(guò)濾盡量提前、少用寬依賴操作等,提升 DAG 執(zhí)行效率。調(diào)優(yōu)過(guò)程中還要結(jié)合 Spark UI 分析瓶頸,定位 Stage 執(zhí)行慢的具體原因,做到有的放矢。

#牛客AI配圖神器#

#數(shù)據(jù)人的面試交流地#

努力找實(shí)習(xí)中,整理一些大數(shù)據(jù)相關(guān)面試題和大家分享,共同學(xué)習(xí)進(jìn)步,有建議或批評(píng)歡迎留言!

全部評(píng)論

相關(guān)推薦

時(shí)長(zhǎng)40分鐘左右,總體問(wèn)的東西不難(感覺(jué)是簡(jiǎn)歷上沒(méi)東西可問(wèn)的)。今天面兩場(chǎng)有點(diǎn)暈,這個(gè)面經(jīng)只能是記得多少寫(xiě)多少了。1. 自我介紹2. 你的項(xiàng)目是學(xué)習(xí)的時(shí)候做的嗎3. 你提到數(shù)據(jù)倉(cāng)庫(kù)分層,分別講講每層的作用4. 你提到DWS層存儲(chǔ)一些指標(biāo),這個(gè)層可以刪掉嗎5. 講講HDFS(說(shuō)了組件構(gòu)成和讀寫(xiě)流程)6. secondary nn起到什么作用(這里是我講hdfs的時(shí)候,腦子抽抽忘說(shuō)了,面試官點(diǎn)了一下)7. 講一下mapreduce的流程8. 你提到shuffle過(guò)程中的排序,那在mr的shuffle中都有哪些排序9. 數(shù)據(jù)傾斜在什么情況下發(fā)生,如何解決10. java面向?qū)ο筇匦?1. hive中的分區(qū)和分桶有什么區(qū)別12. hive的內(nèi)部表和外部表的區(qū)別13. 說(shuō)說(shuō)udf udaf udtf14. 研究生階段印象比較深的課程15. 撕兩道sql(第一個(gè)考察left join、right join、inner join),第二個(gè)窗口函數(shù)16. 面試官順勢(shì)問(wèn)了row_number() rank() dense_rank()的區(qū)別17. 反問(wèn)中間問(wèn)java,面試官應(yīng)該是看出來(lái)我沒(méi)怎么學(xué)java的八股內(nèi)容,就沒(méi)怎么追問(wèn)java內(nèi)容了。寫(xiě)sql的時(shí)候,因?yàn)椴荒芫幾g運(yùn)行,腦子想了半天,感覺(jué)寫(xiě)的有點(diǎn)慢了,還是得多練。#數(shù)據(jù)倉(cāng)庫(kù)實(shí)習(xí)生##字節(jié)暑期實(shí)習(xí)##大數(shù)據(jù)開(kāi)發(fā)#
點(diǎn)贊 評(píng)論 收藏
分享
評(píng)論
2
7
分享

創(chuàng)作者周榜

更多
牛客網(wǎng)
牛客企業(yè)服務(wù)