Spark計算引擎
Apache Spark是一個通用的開源的分布式處理系統(tǒng),通常用于大數(shù)據(jù)工作負載。Spark既支持使用SQL,又支持編寫多種語言的DataFrame代碼,兼具易用性和靈活性。Spark通用化的引擎能力可以同時提供SQL、批處理、流處理、機器學(xué)習(xí)和圖計算的能力。
AnalyticDB for MySQL Serverless Spark是AnalyticDB for MySQL團隊基于Apache Spark打造的服務(wù)化的大數(shù)據(jù)分析與計算服務(wù),該資源歸屬于用戶,開通AnalyticDB for MySQL服務(wù)后只需簡單的配置,就可以提交Spark作業(yè),無需關(guān)心Spark集群部署。方案架構(gòu)圖如下所示:
Serverless Spark將Spark、Serverless和云原生技術(shù)深度整合到一起,相對于傳統(tǒng)開源Spark集群版方案,具有以下優(yōu)勢:
使用門檻低
Serverless Spark屏蔽掉了底層的基礎(chǔ)組件,提供了簡單的API、腳本以及控制臺使用方式,開發(fā)者了解開源Spark的使用方式就可以進行大數(shù)據(jù)業(yè)務(wù)開發(fā)。
0運維
用戶只需通過AnalyticDB for MySQL Serverless Spark接口管理Spark作業(yè),無需關(guān)心服務(wù)器配置以及Hadoop集群配置,無需處理擴縮容等運維操作。
作業(yè)級彈性
Serverless Spark按照Driver和Executor粒度申請創(chuàng)建資源,支持秒級拉起,可以快速響應(yīng)業(yè)務(wù)資源需求。
更低成本
Spark作業(yè)按需使用資源,不需要長期保有預(yù)留資源,使用時再彈起資源,并按彈起的資源計費。不使用不收取費用。
良好的性能
AnalyticDB for MySQL團隊對Spark引擎做了深度定制和優(yōu)化,如針對對象存儲OSS的訪問,典型場景下性能可以提升至原來的3~5倍;同時Spark與AnalyticDB for MySQL數(shù)倉深度集成,典型場景下相比JDBC方式性能可以提升至原來的6倍;基于AnalyticDB for MySQL+Spark提供Zero-ETL解決方案。