[發明專利]一種面向Spark系統的數據處理加速方法在審
| 申請號: | 201910467553.0 | 申請日: | 2019-05-31 |
| 公開(公告)號: | CN110262896A | 公開(公告)日: | 2019-09-20 |
| 發明(設計)人: | 趙來平;李一鳴;李克秋;蘇麗葉 | 申請(專利權)人: | 天津大學 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 天津市北洋有限責任專利代理事務所 12201 | 代理人: | 韓帥 |
| 地址: | 300072*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據處理 任務調度模塊 服務器 可用計算資源 數據分發模塊 性能預測模塊 程序接口 任務調度 實時獲取 硬件資源 優化數據 預測模塊 資源監視 綜合考慮 異構性 最小化 分配 建模 分發 預測 表現 開發 | ||
1.一種面向Spark系統的數據處理加速方法,由性能預測模塊、任務調度模塊和數據分發模塊三個部分組成,其特征在于:
性能預測模塊根據給定的參數對一個任務的性能表現進行建模并預測其完成時間;
任務調度模塊分配計算任務到服務器上執行,即將硬件異構性和數據本地性因素來指定任務的調度策略,通過資源監視程序實時獲取當前可用計算資源,再通過開發的程序接口分配任務在指定服務器上執行;
數據分發模塊是將任務生成的(key,value)鍵值對格式的中間數據按照一定規則分發到不同Reduce任務處理的過程;其中:
1)數據分發模塊采用以二項分布為基礎對數據抽樣并記錄了每個key在每個Map任務中的預計分布;對于數據進行抽樣分析可以以較小代價預估整體的分布,進而制定數據分發策略;
2)數據分發模塊采用記錄分區列表的形式對數據初分發;
2-1,將抽樣分析后的數據分布按key排序,然后將它們均勻分配給各個任務,記錄下每個任務待處理數據的起始key和終止key形成分區列表BK;
2-2,判斷不屬于BK的key可通過對比查找到自己將要被分配的分區,只需要記錄保存BK中的key詳細分發策略;
2-3,確定BK之后使用任務調度模塊獲取調度結果為下一步分發數據做準備;
3)數據分發模塊對數據再分發;
3-1,對于BK中的key的待分配Map部分,按照數據本地性原則,先尋找與該Map任務運行在同一服務器上的目標Reduce任務進行分配;
3-2,對于剩余的部分再按照首次適應算法進行分配;每次進行分配時,數據分發模塊根據已設置的時間上限tmax以及性能預測模塊進行數據切割,確保每個Reduce任務用時不超過tmax;
3-3,判斷所有Reduce任務分配完畢仍有數據剩余,則增大tmax重新開始分配,如此迭代直至BK中所有key分配完畢。
2.根據權利要求1所述的一種面向Spark系統的數據處理加速方法,其特征在于:所述任務調度模塊按照先調度Map任務,再調度Reduce任務進行,包括如下步驟:
1)為每臺服務器確定可分配任務的數量上限,該上限由服務器本身性能指標h和任務總數量共同決定,各服務器的任務數量的比例為它們的h的比例;
2)確定每個任務的目標服務器,首先按照數據本地性原則調度,優先調度任務到待處理數據所在服務器上,如果發現目標服務器預分配任務已經達到上限,則等待下一輪調度;第二輪調度使用首次適應算法,將尚未調度的任務分配到尚未達到數量上限的服務器上;
3)分配計算資源單位,確定任務的目標服務器之后,需要分配具體的計算資源單位給任務。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津大學,未經天津大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910467553.0/1.html,轉載請聲明來源鉆瓜專利網。





