如何跑通第一个 DataStream 作业?
作者 | 葉佳純(自知),阿里巴巴技術專家
本文由阿里巴巴技術專家葉佳純(自知)分享,主要介紹如何在實時計算 Flink 版中跑通 DataStream 作業。文章大綱如下:
前面三篇內容已經介紹了實時計算 Flink 在阿里云的整體情況和典型場景,從本篇開始將介紹實時計算 Flink 的系列操作,首先介紹如何跑通第一個DataStream。
在開始之前,首先為大家介紹在VVP上最基本最核心的資源—Deployment,Deployment包括應用的狀態和相關配置,VVP會跟蹤和匯報每一個Deployment的狀態,產生相關的資源和信息。
準備工作
Jar打包上傳,這里用社區的一個example,實際操作的時候可以用自己的開發應用。
在VVP頁面左側,點擊“資源上傳”,然后點擊右上角“上傳資源”,將打包好的Jar上傳。
創建和啟動作業
創建作業有兩種方式,第一種是直接通過上傳的Jar點擊創建作業,就會直接跳到創建頁面;
第二種是直接在VVP左側菜單點擊創建作業,然后在Jar Uri選擇需要執行的jar文件。
補充好作業名稱等信息,作業就創建完成了。
創建作業后,在作業詳情頁可以看到一些基本操作和展示的基礎信息。剛創建完的作業狀態是Cancelled,可以點擊狀態欄右側的“啟動”來啟動作業。
啟動中,頁面會顯示當前實例,每一個實例都有唯一的ID。
在“運行事件”里,可以看到一些更詳細的階段性的 Event,Event也是一種資源類型。如下圖光標所選位置,是Event告警的錯誤信息,如果點擊左側“+”號,可以看到日志詳情。
當“運行事件”中Deployment的狀態變成Running,說明作業啟動成功。注意:同一時間只能運行一個Deployment實例,也就是說如果想要重新配置作業,那么需要先停掉運行中的作業,重新配置之后再重新啟動新作業。
Deployment的基本操作
啟動、暫停、停止是針對此作業的基本操作,不多做贅述。提醒刪除功能只能針對處于Cancelled的作業操作,處于Running和Failed的作業是不能刪除的。刪除之后無法恢復,需要謹慎。
克隆是指,如果在不修改現有Deloyment的前提下,想做一些嘗試性的配置或對比,那么可以先把作業克隆出來。
Deployment的配置
Deployment的配置可以在新建作業時修改,也可以在運行中進行修改。
上圖中的“升級策略”是指在修改Deployment時,是否需要重啟,如果需要重啟,是帶狀態重啟還是不帶狀態重啟。如下圖如果選擇None,那么在修改作業配置時不會影響當前正在運行的作業。
如果需要重啟作業,有兩種選擇,Stateless是不帶狀態,即停止當前作業,并在調整配置重新啟動一個新作業;Stateful是帶狀態,即在停作業前,對作業做一個Savepoint,然后用最新配置啟動一個新作業并從這個Savepoint恢復。
“恢復策略”有三個選項,None表示不帶狀態恢復作業;Latest Savepoint是指用最新的Savepoint恢復作業;Latest State是指用Checkpoint或Savepoint中最新的那個來恢復作業。當我們需要針對已經停止的作業重新啟動時,會用到恢復策略。
下圖左側“創建Savepoint的最大重試次數”,因為Savepoint是寫在OSS里的,如果遇到問題創建Savepoint失敗了,重試次數是需要符合這里的配置的,超過最大配置次數Savepoint的操作就會失敗。
下圖右側“創建實例的最大重試次數”,是指啟動Deployment的最大重試次數,當遇到問題Deployment的重試超出了配置的次數,啟動Deployment的狀態就會變成紅色的Failed。
Stop with Drain是指 stop接口是不是帶Drain參數;標簽是指可以給Deployment打多個標簽,作用是可以在作業列表更快捷的搜索到所需要的Deployment。
“附加依賴Jar”, 在這里不僅可以放額外的Jar,也可以放一些額外的資源文件。
“Flink 版本”,現在只有1.10和1.11,兩個版本可供選擇。下圖是 Flink 的常見配置,不再贅述。
Deployment 其他操作
作業快照的使用
作業快照的使用有幾種方法:
第一種點擊Savepoint一次就會觸發Savepoint而留下快照;
第二種是運行中的作業,默認每10秒Checkpoint會留下一個快照;
作業快照還可以通過選擇某個早期的快照而不是最近的去恢復作業。點擊“從該快照復制作業”,就會folk一個Deployment,與克隆很像,但是這是指定了某個Savepoint的。復制后啟動此作業的話,就會從指定的Savepoint恢復作業。
Secret Values
Secret Value只能使用在Jar URI和 Flink Configuration兩個地方。
通常用在一些比較敏感的場景,比如Jar URI中的host部分不想暴露,那怎么做呢?點擊VVP頁面左側“變量配置”,點擊新增變量,在彈窗完善變量名稱和變量值。
新建完成,可以看到僅僅顯示新增變量名稱,變量值是隱藏不顯示的。然后去作業應用這個變量。
打開作業列表,選擇應用作業,在Jar URI中設置變量。
UI / Metrics 查看
如下圖在頁面中右側有 “指標”,點擊指標,跳轉頁面,即可查看作業的指標信息。
點擊“ Flink UI”的頁面。Flink UI有個使用技巧,當啟動作業后,如果有問題導致VVP上一直顯示啟動中但實際作業已經起來了,那么在 Flink頁面里能看到第一手的信息,可以通過 Flink UI點擊查看。
原文鏈接:https://developer.aliyun.com/article/781164?
版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。總結
以上是生活随笔為你收集整理的如何跑通第一个 DataStream 作业?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 就地过年,云上充电
- 下一篇: ClickHouse:人群圈选业务的大杀