[發明專利]數據處理方法、裝置、電子設備、存儲介質及程序產品在審
申請號: | 202110374535.5 | 申請日: | 2021-04-07 |
公開(公告)號: | CN112988801A | 公開(公告)日: | 2021-06-18 |
發明(設計)人: | 不公告發明人 | 申請(專利權)人: | 拉卡拉支付股份有限公司 |
主分類號: | G06F16/2453 | 分類號: | G06F16/2453;G06F16/242 |
代理公司: | 北京智宇正信知識產權代理事務所(普通合伙) 11876 | 代理人: | 李明卓 |
地址: | 100094 北京市*** | 國省代碼: | 北京;11 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | 數據處理 方法 裝置 電子設備 存儲 介質 程序 產品 | ||
本公開實施例公開了一種數據處理方法、裝置、電子設備、存儲介質及程序產品,所述方法包括:接收Spark SQL語句;解析所述Spark SQL語句,獲得所述Spark SQL語句的解析結果;在所述解析結果中包括Spark參數配置信息時,根據所述Spark參數配置信息配置對應的Spark參數;基于配置后的所述Spark參數以及所述解析結果執行所述Spark SQL語句。該技術方案在用戶提交Spark SQL語句時可以在不同位置處的Spark SQL語句對應的物理計劃可以使用所配置的不同Spark參數,避免了任何階段都只能使用統一參數而導致Spark SQL執行效率低下的缺陷。
技術領域
本公開實施例涉及計算機技術領域,具體涉及一種數據處理方法、裝置、電子設備、存儲介質及程序產品。
背景技術
Spark SQL從Shark發展而來,Shark為了實現Hive兼容,在HQL方面重用了Hive中HQL的解析、邏輯執行計劃翻譯、執行計劃優化等邏輯,可以近似認為僅將物理執行計劃從MR作業替換成了Spark作業;同時還依賴Hive Metastore和Hive SerDe(用于兼容現有的各種Hive存儲格式)。而Spark SQL在Hive兼容層面僅依賴HQL parser、Hive Metastore和Hive SerDe。也就是說,從HQL被解析成抽象語法樹(AST)起,就全部由Spark SQL接管了。Spark SQL中執行計劃生成和優化都由Catalyst負責,并通過借助Scala的模式匹配等函數式語言特性,利用Catalyst開發執行計劃優化策略比Hive簡潔很多。在實際執行Spark SQL語句時,中間可以由多次Shuffle階段。已有技術中,由于Spark參數需統一配置,因此每個Shuffle階段所使用的Spark參數都是統一參數,無法實現對每個Shuffle階段定制不同的參數,因此影響了Shuffle階段的運行效率。因此,如何實現Spark SQL語句執行過程中為多次Shuffle分別定制Spark參數是當前需要解決的技術問題之一。
發明內容
本公開實施例提供一種數據處理方法、裝置、電子設備、存儲介質及程序產品。
第一方面,本公開實施例中提供了一種數據處理方法,包括:接收Spark SQL語句;解析所述Spark SQL語句,獲得所述Spark SQL語句的解析結果;在所述解析結果中包括Spark參數配置信息時,根據所述Spark參數配置信息配置對應的Spark參數;基于配置后的所述Spark參數以及所述解析結果執行所述Spark SQL語句。
進一步地,基于配置后的所述Spark參數以及所述解析結果執行所述Spark SQL語句,包括:基于所述解析結果確定邏輯計劃;優化所述邏輯計劃;基于所述Spark參數以及優化后的所述邏輯計劃生成物理計劃;執行所述物理計劃。
進一步地,基于所述Spark參數以及優化后的所述邏輯計劃生成物理計劃,包括:將所述邏輯計劃中的邏輯算子映射至對應的物理算子;針對映射后的所述物理算子,根據分區策略和數據分布情況確定是否添加shuffle操作;在需要添加shuffle操作時,確定與所述物理算子對應的所述Spark參數,以及利用所述Spark參數配置所述shuffle操作。
進一步地,執行所述物理計劃,包括:在執行所述物理計劃中的shuffle操作時,基于對應的所述Spark參數中的分區參數啟動至少一個數據讀任務,以便由所述數據讀任務將待處理數據讀出到根據所述分區參數指定的多個分區中,以及啟動多個數據處理任務,以便由所述多個數據處理任務處理所述分區中的數據。
進一步地,解析所述Spark SQL語句,獲得所述Spark SQL語句的解析結果,包括:確定所述Spark SQL語句中注解信息;從所述注解信息獲得所述解析結果中的所述Spark參數配置信息。
進一步地,確定所述Spark SQL語句中注解信息,包括:將預設關鍵詞與所述SparkSQL語句進行匹配;從所述Spark SQL語句中相匹配的內容確定所述注解信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于拉卡拉支付股份有限公司,未經拉卡拉支付股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110374535.5/2.html,轉載請聲明來源鉆瓜專利網。