SparkStreaming如何實現(xiàn)工作流調(diào)度器

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

網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、微信小程序、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了遂昌免費建站歡迎大家使用!

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

下面是Azkaban的架構圖:

Spark Streaming如何實現(xiàn)工作流調(diào)度器

也就是說要搭建一個穩(wěn)定可靠的Azkaban的工作流調(diào)度器,你可能需要

  • 兩臺 互為主備MySQL

  • 兩臺Executor Server

  • 一臺Web Server

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

擴展性問題。Executor 能夠動態(tài)調(diào)整?

穩(wěn)定性問題。畢竟24小時運行的

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

  • Web UI

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

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

  • 實現(xiàn)業(yè)務邏輯,也就是工作流的生成,解析,運行和存儲等操作。

  • 實現(xiàn)管理頁面邏輯

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

我搜羅了一圈,發(fā)現(xiàn)Spark Streaming 是能夠滿足該需求的一個Estimator。

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

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

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

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

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

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

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

以上就是Spark Streaming如何實現(xiàn)工作流調(diào)度器,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學到更多知識。更多詳情敬請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站欄目:SparkStreaming如何實現(xiàn)工作流調(diào)度器
地址分享:http://muchs.cn/article18/jpgigp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)響應式網(wǎng)站、網(wǎng)站改版、App設計網(wǎng)站排名、虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設