View a markdown version of this page

搭配AWS Glue互動式工作階段使用 Spark Connect - AWS Glue

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

搭配AWS Glue互動式工作階段使用 Spark Connect

Apache Spark Connect 推出解耦的用戶端伺服器架構,將您的應用程式與 Spark 驅動程式程序分開。透過 Spark Connect,AWS Glue互動式工作階段受益於輕量型用戶端,其啟動速度更快、使用較少的本機資源,並提供與 PySpark DataFrame 和 SQL APIs原生相容性。您可以從您偏好的筆記本工具或 IDE 使用AWS Glue互動式工作階段。

5.1 版和更新AWS Glue版本原生支援 Spark Connect。您可以從支援 PySpark remote() API 的環境直接連線至AWS Glue互動式工作階段。

比較工作階段類型:Livy 和 Spark Connect

AWS Glue 互動式工作階段支援兩種工作階段類型。下表比較 Livy 型工作階段和 Spark Connect 工作階段。

功能 Livy Spark Connect

通訊協定

REST

gRPC (傳送邏輯執行計畫) + Apache Arrow (串流結果)

連線方法

陳述式 APIs (RunStatementCancelStatementGetStatementListStatements)

使用 PySpark remote() API 透過端點 URL 直接連線

用戶端需求

aws-glue-sessions 核心或 AWS SDK 的 套件

PySpark 搭配 Spark Connect 支援

IDE 支援

透過 Jupyter 搭配 SparkMagic 核心

SageMaker Unified Studio 或 IDEs 上的筆記本,搭配 VS Code、PyCharm 等 Python 解譯器

何時使用 Spark Connect

當您需要從您的開發環境直接以程式設計方式存取AWS Glue互動式工作階段時,請使用 Spark Connect 工作階段。以下是常見的使用案例:

  • SageMaker Unified Studio 中的筆記本 – 直接從筆記本環境連線到AWS Glue互動式工作階段,以進行互動式資料探索。

  • VS Code 或 PyCharm 等 IDEs – 使用您偏好的 IDE 中的 PySpark,針對遠端AWS Glue叢集開發和測試 Spark 應用程式。

  • Python 指令碼和應用程式 – 從使用 PySpark remote() API 的 Python 應用程式以程式設計方式存取AWS Glue互動式工作階段。

區域可用性

AWS Glue 具有 Spark Connect 的互動式工作階段可在下列 AWS 區域使用:

  • 亞太地區 (孟買)

  • 亞太區域 (首爾)

  • 亞太區域 (新加坡)

  • 亞太地區 (雪梨)

  • 亞太區域 (東京)

  • 加拿大 (中部)

  • 歐洲 (法蘭克福)

  • 歐洲 (愛爾蘭)

  • 歐洲 (倫敦)

  • 歐洲 (巴黎)

  • 歐洲 (斯德哥爾摩)

  • 南美洲 (聖保羅)

  • 美國東部 (俄亥俄)

  • 美國東部 (維吉尼亞北部)

  • 美國西部 (奧勒岡)

考量和限制

當您搭配AWS Glue互動式工作階段使用 Spark Connect 時,請考慮下列事項:

  • Spark Connect 適用於執行 5.1 版和更新AWS Glue版本的AWS Glue互動式工作階段。

  • Spark ConnectRunStatement CancelStatement工作階段不支援陳述式 APIs (GetStatement、、 和 ListStatements)。您可以透過 PySpark 用戶端直接與工作階段互動。

  • 您無法在建立工作階段後變更工作階段類型。若要在 Livy 和 Spark Connect 之間切換,您必須建立新的工作階段。

  • Spark Connect 不支援 AWS Glue Studio。對於使用 的互動式開發 AWS Glue,您可以在 SageMaker Unified Studio 中使用筆記本,或使用您偏好的 IDEs搭配 Python 解譯器。

  • Spark Connect 工作階段不支援透過 Lake Formation 進行精細存取控制。