[發明專利]一種運行MapReduce作業的方法、裝置及系統有效
| 申請號: | 201611249643.5 | 申請日: | 2016-12-29 |
| 公開(公告)號: | CN108614731B | 公開(公告)日: | 2022-06-28 |
| 發明(設計)人: | 葉志偉 | 申請(專利權)人: | 中移(蘇州)軟件技術有限公司;中國移動通信集團公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 北京派特恩知識產權代理有限公司 11270 | 代理人: | 蔣雅潔;張穎玲 |
| 地址: | 215163 江蘇省蘇州市高*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 運行 mapreduce 作業 方法 裝置 系統 | ||
本發明公開了一種運行MapReduce作業的方法,所述方法包括:創建一個以上通用型的MapReduce作業描述文件,并對所述MapReduce作業描述文件進行解析,生成相應的MapReduce對象;根據所述MapReduce對象中指定的MapReduce數據,生成相應的結構化查詢語言(SQL)序列;其中,所述SQL序列中包括至少一個MapReduce任務;根據有向無環圖(DAG)將所述SQL序列進行發送。本發明還同時公開了一種運行MapReduce作業的裝置及系統。
技術領域
本發明涉及運行MapReduce作業技術,具體涉及一種運行MapReduce作業的方法、裝置及系統。
背景技術
目前,隨著互聯網以及移動互聯網技術的發展,企業開始部署大數據平臺。Hadoop體系的MapReduce作業很好得解決了大數據分析與處理問題。這里,Hadoop是一個由Apache基金會所開發的分布式系統基礎架構,用戶可以在不了解分布式底層細節的情況下,開發分布式程序。但傳統的分布式關系型數據庫只提供結構化查詢語言(SQL,StructuredQuery Language)來開發作業,然而編程人員更傾向于使用MapReduce這種方式來進行作業開發。
目前,現有技術中通常通過:將常用的MapReduce函數與數據庫中SQL的對應關系固定下來,作為模板來匹配用戶的MapReduce作業中的函數。
但是采用這種方式存在以下問題:
1)只能匹配少量且固定的MapReduce函數;
2)只能形成單條簡單的SQL而非SQL序列;
3)不支持多MapReduce任務的作業。
發明內容
為解決現有存在的技術問題,本發明實施例期望提供一種運行MapReduce作業的方法、裝置及系統,能夠運行自定義的MapReduce函數。
本發明實施例的技術方案是這樣實現的:
根據本發明實施例的一方面,提供一種運行MapReduce作業的方法,所述方法包括:
創建一個以上通用型的MapReduce作業描述文件,并對所述MapReduce作業描述文件進行解析,生成相應的MapReduce對象;
根據所述MapReduce對象中指定的MapReduce數據,生成相應的結構化查詢語言SQL序列;其中,所述SQL序列中包括至少一個MapReduce任務;
根據有向無環圖DAG將所述SQL序列進行發送。
上述方案中,所述對所述MapReduce作業描述文件進行解析,并生成相應的MapReduce對象,包括:
根據解析后的所述MapReduce作業描述文件,生成與所述MapReduce作業描述文件對應的INPUT對象、OUTPUT對象、MAPPER對象、REDUCER對象、TASK對象和RUN對象;
其中,所述INPUT對象、所述OUTPUT對象、所述MAPPER對象、所述REDUCER對象和所述TASK對象均為一個以上。
上述方案中,所述根據所述MapReduce對象中指定的MapReduce數據,生成相應的SQL序列,包括:
根據所述INPUT對象中指定的任務輸入源數據,生成第一SQL序列;
根據所述MAPPER對象中指定的映射函數,對所述任務輸入源數據進行映射運算,并生成第二SQL序列;
根據所述REDUCER對象中指定的化簡函數,對所述任務輸入源數據進行化簡運算,并生成第三SQL序列;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中移(蘇州)軟件技術有限公司;中國移動通信集團公司,未經中移(蘇州)軟件技術有限公司;中國移動通信集團公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611249643.5/2.html,轉載請聲明來源鉆瓜專利網。





