中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Storm面試題有哪些

發布時間:2021-12-23 15:44:23 來源:億速云 閱讀:170 作者:iii 欄目:編程語言

本篇內容介紹了“Storm面試題有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

一、架構

1、Nimbus

負責資源分配和任務調度。新版本中的 nimbus 節點可以有多個做主備。

2、Zookeeper

協調集群,公共數據的存放(如心跳數據,集群的狀態和配置信息),nimbus 將分配給 Supervisor 的任務寫入到 Zookeeper

3、supervisor

負責接受 nimbus 分配的任務,啟動和停止屬于自己管理的 worker進程。

4、worker

運行具體處理組件邏輯的進程。worker 中每一個 spout/bolt 的線程稱為一個task. 在 storm0.8 之后,task 不再與物理線程對應,同一個 spout/bolt 的 task 可能會共享一個物理線程,該線程稱為 executor。最新版本的 Jstorm 已經廢除了 task 的概念

二、編程模型

1、Spout

Spout 是接受外部數據源的組件,將外部數據源轉化成 Storm 內部的數據, 以 Tuple 為基本的傳輸單元下發給 Bolt。(Tuple 是 Storm 內部中數據傳輸的基本單元,里面封裝了一個 List 對象,用來保存數據。)

2、Bolt

Bolt 是接受 Spout 發送的數據,或上游的 bolt 的發送的數據。根據業務邏輯進行處理。發送給下一個 Bolt 或者是存儲到某種介質上。介質可以是 mongodbmysql,或者其他。

3、并行度

Worker:表示一個進程

Executor:表示由 worker 啟動的線程

Task:實際執行數據處理的最小工作單元(注意,task 并不是線程)

并行度的設置:評估上游 kafka 每秒生產的數據量,分析 topic 每個 partition

每秒的數據量,partition 的數據量=SpoutTask 接受數據量SpoutTask 數量=partition 的數量

Worker 的設置:如果數據量大,worker 的數量等于 spouttask 的數量

4、消息不丟失

ack 機制即, spout 發送的每一條消息,

l在規定的時間內,spout 收到 Acker 的 ack 響應,即認為該 tuple 被后

l

續 bolt 成功處理

l在規定的時間內,沒有收到 Acker 的 ack 響應 tuple,就觸發 fail 動作, 即認為該 tuple 處理失敗,

l或者收到 Acker 發送的 fail 響應 tuple,也認為失敗,觸發 fail 動作。通過 Ack 機制,spout 發送出去的每一條消息,都可以確定是被成功處理或失敗處理, 從而可以讓開發者采取動作。比如在 Meta 中,成功被處理,即可更新偏移量,當失敗時,重復發送數據。因此,通過 Ack 機制,很容易做到保證所有數據均被處理,一條都不漏。

“Storm面試題有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

雅江县| 平潭县| 环江| 平陆县| 姜堰市| 句容市| 什邡市| 乐东| 敦化市| 芮城县| 永德县| 清丰县| 巴林右旗| 遵化市| 合作市| 闽清县| 呼图壁县| 茂名市| 嘉峪关市| 合肥市| 宁远县| 洪雅县| 囊谦县| 库尔勒市| 北票市| 枞阳县| 宁武县| 河南省| 荆州市| 铜鼓县| 牡丹江市| 方山县| 万全县| 古浪县| 通山县| 舒城县| 佳木斯市| 武安市| 新龙县| 长丰县| 工布江达县|