本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon EMR on EKS 6.8.0 版
下列 Amazon EMR 6.8.0 版本可在 EMR上供 Amazon 使用EKS。選取特定的 emr-6.8.0 XXXX版本,以檢視更多詳細資訊,例如相關的容器映像標籤。
Amazon 6.8.0 EMR 的版本備註
-
支援的應用程式 ‐ AWS SDK for Java 1.12.170、Spark 3.3.0-amzn-0、Hudi 0.11.1-amzn-0、Iceberg 0.14.0-amzn-0。
-
支援的元件 ‐
aws-sagemaker-spark-sdk
、emr-ddb
、emr-goodies
、emr-s3-select
、emrfs
、hadoop-client
、hudi
、hudi-spark
、iceberg
、spark-kubernetes
。 -
支援的組態分類:
分類 描述 core-site
變更 Hadoop 的 core-site.xml 檔案中的值。
emrfs-site
變更EMRFS設定。
spark-metrics
變更 Spark 中 metrics.properties 檔案的值。
spark-defaults
變更 Spark 的 spark-defaults.conf 檔案中的值。
spark-env
變更 Spark 環境中的值。
spark-hive-site
變更 Spark 的 hive-site.xml 檔案中的值
spark-log4j
變更 Spark 中 log4j.properties 檔案的值。
組態分類可讓您自訂應用程式。這些通常對應於應用程式的組態XML檔案,例如
spark-hive-site.xml
。如需詳細資訊,請參閱設定應用程式。
值得注意的功能
-
Spark3.3.0 - Amazon EMR on EKS 6.8 包含 Spark 3.3.0,支援使用 Spark 驅動程式執行器 Pod 的個別節點選取器標籤。這些新標籤可讓您在 中分別定義驅動程式和執行器 Pod 的節點類型 StartJobRun API,而無需使用 Pod 範本。
-
驅動程式節點選取器屬性:spark.kubernetes.driver.node.selector。【labelKey】
-
執行器節點選取器屬性:spark.kubernetes.executor.node.selector。【labelKey】
-
-
增強的作業失敗訊息 - 此版本引入了
spark.stage.extraDetailsOnFetchFailures.enabled
和spark.stage.extraDetailsOnFetchFailures.maxFailuresToInclude
設定,可追蹤因使用者程式碼造成的作業失敗。當因隨機擷取失敗而中止某個階段時,這些詳細資訊將用於增強驅動程式日誌中顯示的失敗訊息。屬性名稱 預設值 意義 自版本 spark.stage.extraDetailsOnFetchFailures.enabled
false
如果設定為
true
,此屬性用於在因隨機擷取失敗而中止某個階段時,增強驅動程式日誌中顯示的作業失敗訊息。依預設,會追蹤使用者程式碼造成的最後 5 個任務失敗,並在驅動程式日誌中附加失敗錯誤訊息。若需增加要追蹤的使用者例外狀況的任務失敗次數,請參閱
spark.stage.extraDetailsOnFetchFailures.maxFailuresToInclude
組態。emr-6.8
spark.stage.extraDetailsOnFetchFailures.maxFailuresToInclude
5
每個階段和每次嘗試要追蹤的任務失敗次數。此屬性用於在因隨機擷取失敗而中止某個階段時,增強驅動程式日誌中顯示的使用者例外狀況的作業失敗訊息。
此屬性只有在 Config spark.stage.extraDetailsOnFetchFailures.enabled 設為 true 時才有效。
emr-6.8
如需詳細資訊,請參閱 Apache Spark 組態文件
已知問題
-
Amazon EMR on EKS 6.8.0 在使用 Apache Spark
產生的 Parquet 檔案中繼資料中錯誤填入建置雜湊。此問題可能會導致從 Amazon 在 EKS6.8.0 EMR上產生的 Parquet 檔案剖析中繼資料版本字串的工具失敗。從 Parquet 中繼資料剖析版本字串且依賴建置雜湊的客戶,應切換至不同的 Amazon EMR版本並重新寫入檔案。
已解決的問題
-
pySpark 核心的中斷核心功能 - 在筆記本中執行儲存格所觸發的進行中互動式工作負載可以使用
Interrupt Kernel
功能來停止。已引入修正,以便此功能適用於 pySpark 核心。您也可以在變更的開放原始碼中使用此功能,以處理 PySpark Kubernetes 核心 #1115 的中斷。