

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

# 調校 AWS Glue 和 Amazon EMR Spark任務的Spark SQL查詢
<a name="introduction"></a>

*Phani Alapaty 和 Ravikiran Rao，Amazon Web Services (AWS)*

*2024 年 1 月* ([文件歷史記錄](doc-history.md))

[https://spark.apache.org/sql/](https://spark.apache.org/sql/) 是處理結構化資料的Apache Spark模組。[Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) 和 [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html)任務使用 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 為基礎。

## 目標對象
<a name="intended-audience"></a>

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