調校 AWS Glue 和 Amazon EMR Spark任務的Spark SQL查詢 - AWS 方案指引

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

調校 AWS Glue 和 Amazon EMR Spark任務的Spark SQL查詢

Phani Alapaty 和 Ravikiran Rao,Amazon Web Services (AWS)

2024 年 1 月 (文件歷史記錄)

Spark SQL 是處理結構化資料的Apache Spark模組。Amazon EMRAWS Glue任務使用 Spark SQL 來處理、轉換和載入資料。與基本Spark彈性分散式資料集 (RDD) API 不同,Spark SQL這些介面可提供Spark更多有關資料結構和執行中運算的資訊給 。在內部, Spark SQL會使用此額外資訊來執行其他查詢最佳化。有幾種方式可以與 互動Spark SQL,包括 SQL 和資料集 API。

聯結資料是擷取、轉換或將資料載入物件存放區或資料庫時,您可以執行的最常見和重要操作之一。加入時,您需要考慮效能。當部分聯結、分析或彙總操作用盡記憶體時,有多個案例,例如大型網路傳輸。這可能會導致任務 AWS Glue Spark失敗。

本指南提供的最佳實務可協助您調校 AWS Glue 或 Amazon EMR 任務的Spark SQL聯結查詢。 Spark提供許多組態選項,可改善Spark SQL工作負載的效能。這些調整可以透過程式設計方式完成,或者您可以使用 spark-submit命令在全域層級套用。本指南說明其中一些組態,讓您可以改善或微調Spark SQL查詢和應用程式的效能。本指南中的建議是以 Professional Services 用來改善Spark SQL查詢和應用程式效能的組態 AWS 為基礎。

目標對象

本指南可協助架構師、資料工程師、資料科學家和開發人員了解可改善Spark SQL查詢效能的Spark SQL組態選項。