1.kafka高吞吐量
答案:
1)消息順序寫到磁盤
2)分區
3)零拷貝:跳過“用戶緩沖區”的拷貝,消費者直接通過offset位置,批量拉取消息
4)生產者,通過緩存批量發送消息
2.kafka優缺點
答案:
1)只能支持統一分區內消息有序,無法實現全局消息有序
2)會丟失數據和重復消費數據
3.kafka分區數過多引發的弊端
答案:
1)分區數過多,客戶端內存會有小幅度增加;當分區數遠大于消費端,線程頻繁切換,影響性能;
2)文件句柄開銷
3)broker主機down恢復問題,如果分區數過多,單一broker就會承載很多分區,在down過程涉及到的leader重選舉和恢復過程中的在均衡時間消耗就比較長。
4.flink的開發中用了哪些算子?
答案:
max/min 操作 會根據用戶指定的字段取最小值(而字段外的其他值 并不能保證正確) 而maxBy/minBy 指的是自己本身的這條數據。
在reduce和aggregate中,都有一個可以把增量函數和全量函數結合使用的方法,就是上面圖中標紅色五角星的。
對于一個窗口來說,Flink先增量計算,窗口關閉前,將增量計算結果發送給ProcessWindowFunction作為輸入再進行處理。
reduce和aggregate區別:aggregate是增強版的reduce,都是增量函數,都有中間結果產生,但是aggregate處理方法更全。
更多關于大數據培訓的問題,歡迎咨詢千鋒教育在線名師。千鋒教育擁有多年IT培訓服務經驗,采用全程面授高品質、高體驗培養模式,擁有國內一體化教學管理及學員服務,助力更多學員實現高薪夢想。