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

溫馨提示×

溫馨提示×

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

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

Spark Streaming如何實現工作流調度器

發布時間:2021-12-17 10:55:53 來源:億速云 閱讀:136 作者:柒染 欄目:大數據

本篇文章給大家分享的是有關Spark Streaming如何實現工作流調度器,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

之前有說過要設計一個工作流調度器。開發一個完善的工作流調度器應該并不是一件簡單的事情。但是通過Spark  Streaming(基于Transfomer架構的理念),我們可能能簡化這些工作。我在這塊并沒有什么經驗,這只是一個存在于腦海中的東西。

下面是Azkaban的架構圖:

Spark Streaming如何實現工作流調度器

也就是說要搭建一個穩定可靠的Azkaban的工作流調度器,你可能需要

  • 兩臺 互為主備MySQL

  • 兩臺Executor Server

  • 一臺Web Server

你需要做架構設計,考慮WebServer 和 Executor Server的通訊問題

擴展性問題。Executor 能夠動態調整?

穩定性問題。畢竟24小時運行的

然而,我們其實是不需要關注這么多東西的。我們真正關注的是:

  • Web UI

  • 工作流的生成,解析,運行和存儲

其他的都是基礎設施。按照Transfomer架構的設計理念,我們應該可以找到一個Estimator  ,作為我們的基礎設施,我們只要關注上面兩點即可,不需要為部署,高可用,穩定等發愁。同時我們也希望譬如WebUI等工作不是從頭開始,而是按部就班添加新功即可。所以有了Estimator,我們只要做三點:

  • 實現業務邏輯,也就是工作流的生成,解析,運行和存儲等操作。

  • 實現管理頁面邏輯

  • 指定需要的資源cpu/內存,就能Run起來這個Transformer

我搜羅了一圈,發現Spark Streaming 是能夠滿足該需求的一個Estimator。

這得益于,Spark Streaming  從某個角度而言就是個定時任務調度系統,也就是我們說的微批處理。對于工作流調度器而言,無非就是每個周期(duration)在Driver端啟動線程掃描MySQL,實現任務的分發和執行。

那如果實現一個類似Azkaban 能夠的做的事情,前面我們提到,要做三件事情,分別對應為:

1.實現業務邏輯,也就是工作流的生成,解析,運行和存儲等操作。其中生成,解析,存儲 三個環節可以放在Driver端,也可以都放在Executor  端。也就是說:Driver的設計可重可輕。重的設計可由Driver讀取MySQL 并且解析成工作流任務,然后發送給Executor  去執行。輕的設計Driver僅僅是讀取MySQL,然后就簡單將id分發給各個Executor,各個Executor 負責解析執行和反饋結果。

2.增強 Spark Streaming UI,添加管理頁面,實現Azkaban Web Server類似界面。

3.按標準的Spark Streaming 程序提交該實現到集群即可完成部署。

我們看到,我們真正做到了只關注核心業務邏輯的實現,所謂部署,安裝,運行等環節都實現了平臺化(其實Estimator完成了)。  而且實現了資源的細粒度(CPU/內存)劃分,而不再是以服務器為基本單元。

事實上,我們也可以將一個Spark Streaming當做一個crontab  任務,這樣就自然具有了一個分布式的crontab系統,并且提供更友好的管理,甚至能將任務本身融入到crontab中。

以上就是Spark Streaming如何實現工作流調度器,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

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

AI

陕西省| 静宁县| 托克逊县| 临清市| 息烽县| 衡南县| 虎林市| 津南区| 元谋县| 灯塔市| 石渠县| 东乌珠穆沁旗| 通州市| 都江堰市| 盖州市| 将乐县| 定边县| 河北省| 长春市| 新郑市| 九江县| 邓州市| 大余县| 武穴市| 井冈山市| 金坛市| 梅河口市| 鄂托克旗| 松江区| 达尔| 弥渡县| 佛冈县| 东海县| 庆阳市| 淮滨县| 衡山县| 固安县| 昆明市| 金山区| 天等县| 台南市|