Yarn 的Application 的依賴檔案和包是如何上傳下載和使用的
簡述下背景
大家經常關注的點就是一個Application是如何提交到Yarn上,Application的一個執行流程,但是估計對Application的依賴檔案是什麼時間,如何上傳到到對應的nodemanager上,並且被被container如何載入和使用估計不清楚,這兒簡單介紹下。
在YARN中,分散式快取是一種分散式檔案與快取機制,類似於MRv1中的DistributedCache,其主要作用是將使用者應用程式執行所需要的外部檔案資源自動透明地下載並快取到各個節點上,從而省去了使用者手動部署這些檔案的麻煩。
Yarn分散式快取工作流程如下:
- 1、 客戶端將應用程式所需的檔案資源(外部字典,JAR包,二進位制檔案等)提交到HDFS上
- 2、客戶端將應用程式提交到ResourceManager上
- 3、 ResourceManager和某個NodeManager通訊,啟動應用程式的ApplicationMaster,NodeManagers收到命令後,首先從HDFS上下載檔案(快取),然後啟動ApplcationMaster。
- 4、ApplcationMaster和ResourceManager通訊,請求和獲取計算資源。
- 5、ApplciationMaster收到新分配的計算資源後,與對應的NodeManager通訊,以啟動任務。
- 6、如果該應用程式第一次在該節點上啟動任務,則NodeManager首先從HDFS上下載檔案快取到本地,然後啟動任務。
- 7、NodeManager後續收到啟動任務的請求後,如果檔案已經在本地快取,則會直接直接執行任務,否則等待檔案快取完成後才會啟動。
相關文章
- SpringMVC中的檔案上傳和下載SpringMVC
- 基於servlet的檔案上傳和下載Servlet
- 檔案上傳和下載功能
- springboot 中檔案的上傳和下載Spring Boot
- Java SE 檔案上傳和檔案下載的底層原理Java
- 一下是官方上的64位 Linux上的依賴包Linux
- 如何在命令列中使用 ftp 命令上傳和下載檔案命令列FTP
- Xshell在Windows和Linux間檔案的上傳和下載WindowsLinux
- 檔案的上傳與下載
- 實現簡單的csv檔案上傳和bootstrap表格的下載boot
- PHP 如何上傳檔案和下載,你學會了嗎?PHP
- ABAP中對上傳檔案和下載檔案的一般檢查
- 前端實現檔案下載和拖拽上傳前端
- Java Struts檔案上傳和下載詳解Java
- 使用SecureCRT上傳下載檔案Securecrt
- spring cloud feign 檔案上傳和檔案下載SpringCloud
- C#如何使用HttpClient對大檔案進行斷點上傳和下載C#HTTPclient斷點
- 通過Gradle來下載依賴的jar包GradleJAR
- 如何使用Maven將專案中的依賴打進jar包MavenJAR
- 在Oracle中存取BLOB物件實現檔案的上傳和下載Oracle物件
- Struts2的檔案上傳下載
- 【liunx命令】上傳下載檔案的方法
- 使用Vue+go實現前後端檔案的上傳下載,csv檔案上傳下載可直接照搬VueGo後端
- 檔案上傳下載
- 檔案傳輸中,上傳、下載速度和預期有差距如何解決?
- npm如何管理依賴包的版本NPM
- 利用Github和jitpack釋出自己的依賴包Github
- 面試官:你是如何理解Java中依賴倒置和依賴注入以及控制反轉的?面試Java依賴注入
- asp.net 檔案上傳和下載管理原始碼ASP.NET原始碼
- java實現sftp檔案的上傳下載JavaFTP
- PHP開發之檔案的上傳下載PHP
- xshell 使用 sftp上傳下載檔案FTP
- 【WordPress之外】如何下載和安裝Chrome的CRX擴充套件檔案包Chrome套件
- vsftpd匿名使用者上傳和下載的配置FTP
- 『心善淵』Selenium3.0基礎 — 19、使用Selenium操作檔案的上傳和下載
- 依賴注入?依賴注入是如何實現解耦的?依賴注入解耦
- 檔案上傳與下載
- JAVA檔案上傳下載Java