

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

# Spark 原生精細存取控制允許列出的 PySpark API
<a name="clean-rooms-spark-fgac-pyspark-api-allowlist"></a>

為了維護安全性和資料存取控制，Spark 精細存取控制 (FGAC) 會限制某些 PySpark 函數。這些限制是透過下列方式強制執行：
+ 阻止函數執行的明確封鎖
+ 使函數無法運作的架構不相容
+ 可能擲回錯誤、傳回存取遭拒訊息，或呼叫 時不執行任何動作的函數

Spark FGAC 不支援下列 PySpark 功能：
+ RDD 操作 （使用 SparkRDDUnsupportedException 封鎖）
+ Spark Connect （不支援）
+ Spark 串流 （不支援）

雖然我們已在原生 Spark FGAC 環境中測試列出的函數並確認它們如預期般運作，但我們的測試通常只涵蓋每個 API 的基本使用。具有多個輸入類型或複雜邏輯路徑的函數可能會有未經測試的案例。

對於此處未列出且未明確屬於上述不支援類別的任何函數，我們建議：
+ 在 Gamma 環境或小型部署中先測試它們
+ 在生產環境中使用它們之前驗證其行為

**注意**  
如果您看到列出類別方法，但未列出其基本類別，則該方法仍應正常運作，這只是表示我們尚未明確驗證基本類別建構函數。

PySpark API 會組織成模組。下表詳細說明了每個模組內方法的一般支援。


| 模組名稱 | 狀態 | 備註 | 
| --- | --- | --- | 
| pyspark\_core | 支援 | 此模組包含主要 RDD 類別，大部分不支援這些函數。 | 
| pyspark\_sql | 支援 |  | 
| pyspark\_testing | 支援 |  | 
| pyspark\_resource | 支援 |  | 
| pyspark\_streaming | 封鎖 | Spark FGAC 中的串流用量遭到封鎖。 | 
| pyspark\_mllib | 實驗性 | 此模組包含以 RDD 為基礎的 ML 操作，而且這些函數大部分不受支援。此模組未經過徹底測試。 | 
| pyspark\_ml | 實驗性 | 此模組包含以 DataFrame 為基礎的 ML 操作，且大部分支援這些函數。此模組未經過徹底測試。 | 
| pyspark\_pandas | 支援 |  | 
| pyspark\_pandas\_slow | 支援 |  | 
| pyspark\_connect | 封鎖 | Spark FGAC 中的 Spark Connect 用量遭到封鎖。 | 
| pyspark\_pandas\_connect | 封鎖 | Spark FGAC 中的 Spark Connect 用量遭到封鎖。 | 
| pyspark\_pandas\_slow\_connect | 封鎖 | Spark FGAC 中的 Spark Connect 用量遭到封鎖。 | 
| pyspark\_errors | 實驗性 | 此模組未經過徹底測試。無法使用自訂錯誤類別。 | 

**API 允許清單**

為了方便下載和搜尋清單，具有模組和類別的檔案可在[原生 FGAC 中允許的 Python 函數](samples/Python functions allowed in Native FGAC.zip)中使用。