Unity 目錄的計算存取模式限制
Databricks 建議針對大部分工作負載使用 Unity 目錄和共用存取模式。 本文概述 Unity 目錄的每個存取模式的各種限制。 如需存取模式的詳細資訊,請參閱 存取模式。
Databricks 建議使用計算原則來簡化大部分用戶的設定選項。 請參閱 建立和管理計算原則。
注意
無隔離共用是不支援 Unity 目錄的舊版存取模式。
重要
Init 腳稿和連結庫在存取模式和 Databricks 執行時間版本之間有不同的支援。 請參閱 Init 腳本的安裝位置? 和 叢集範圍連結庫。
Unity 目錄上的單一使用者存取模式限制
Unity 目錄上的單一使用者存取模式有下列限制。 除了所有 Unity 目錄存取模式的一般限制之外,這些限制也一般。 請參閱 Unity 目錄的一般限制。
Unity 目錄單一使用者存取模式的精細訪問控制限制
不支援動態檢視。
若要從檢視讀取,您必須擁有
SELECT
所有參考數據表和檢視表。您無法存取具有 資料列篩選或資料行遮罩的數據表。
您無法使用單一使用者計算來查詢已啟用 Unity 目錄之 Delta Live Tables 管線所建立的數據表,包括 串流數據表 和 Databricks SQL 中建立的具體化檢視 。 若要查詢 Delta Live Tables 管線所建立的數據表,您必須使用 Databricks Runtime 13.3 LTS 和更新版本的共享計算。
Unity 目錄單一使用者存取模式的串流限制
- Databricks Runtime 11.3 LTS 和以下版本不支援異步檢查點。
Unity 目錄上的共用存取模式限制
Unity 目錄上的共用存取模式有下列限制。 除了所有 Unity 目錄存取模式的一般限制之外,這些限制也一般。 請參閱 Unity 目錄的一般限制。
不支援 Databricks Runtime ML 和 Spark 機器學習 連結庫 (MLlib)。
不支援 Spark 提交作業。
在 Databricks Runtime 13.3 和更新版本上,個別數據列不得超過大小上限 128MB。
搭配認證傳遞使用時,會停用 Unity 目錄功能。
不支援自定義容器。
Unity 目錄共用存取模式的語言支援
- 不支援 R。
- Databricks Runtime 13.3 和更新版本支援 Scala。
Unity 目錄共用存取模式的Spark API限制
- 不支援 RDD API。
- 只有當您使用外部位置來存取記憶體位置時,才支援直接從雲端記憶體讀取數據的 DBUtils 和其他用戶端。 請參閱 建立外部位置以將雲端記憶體連線到 Azure Databricks。
- 任何 Databricks Runtime 中的 Scala 都不支援 Spark 內容 (
sc
),spark.sparkContext
且sqlContext
在 Databricks Runtime 14.0 和更新版本不支援 Python。- Databricks 建議使用
spark
變數來與SparkSession
實例互動。 - 也不支援下列
sc
函式:emptyRDD
、range
、init_batched_serializer
、parallelize
、binaryFiles
binaryRecords
pickleFile
newAPIHadoopRDD
textFile
newAPIHadoopFile
wholeTextFiles
sequenceFile
hadoopFile
hadoopRDD
union
uiWebUrl
getConf
setJobGroup
stop
setLocalProperty
setSystemProperty
runJob
。
- Databricks 建議使用
Unity 目錄共用存取模式的 UDF 限制
重要
在已啟用 Unity 目錄的計算上支援使用共用存取模式的 Scala UDF 處於 公開預覽狀態。
使用者定義函式 (UDF) 具有下列共享存取模式的限制:
不支援Hive UDF。
applyInPandas
Databricks Runtime 14.2 和以下版本不支援 和mapInPandas
。在 Databricks Runtime 14.2 和更新版本中,支援純量 UDF。 不支援其他 Scala UDF 和 UDAF。
在 Databricks Runtime 13.3 LTS 和更新版本中,支援 Python 純量 UDF 和 Pandas UDF。 不支援其他 Python UDF,包括 UDAF、UDF 和 Spark 上的 Pandas。
請參閱 Unity 目錄中的使用者定義函式 (UDF)。
Unity 目錄共用存取模式的串流限制
注意
某些列出的 Kafka 選項在用於 Azure Databricks 上支援的設定時,支援有限。 請參閱 使用 Apache Kafka 和 Azure Databricks 進行串流處理。
- 針對 Scala,
foreach
不支援 和foreachBatch
。 - 針對 Python,Databricks
foreachBatch
Runtime 14.0 和更新版本有新的行為。 請參閱 Databricks Runtime 14.0 中 foreachBatch 的行為變更。 - 針對 Scala,
from_avro
需要 Databricks Runtime 14.2 或更新版本。 - 不支援
applyInPandasWithState
。 - 不支援使用套接字來源。
sourceArchiveDir
當您搭配 Unity 目錄管理的數據源使用option("cleanSource", "archive")
時,必須位於與來源相同的外部位置。- 對於 Kafka 來源和接收,不支援下列選項:
kafka.sasl.client.callback.handler.class
kafka.sasl.login.callback.handler.class
kafka.sasl.login.class
kafka.partition.assignment.strategy
- Databricks Runtime 13.3 LTS 和更新版本支援下列 Kafka 選項,但 Databricks Runtime 12.2 LTS 不支援。 您只能針對下列選項指定 Unity 目錄所管理的外部位置:
kafka.ssl.truststore.location
kafka.ssl.keystore.location
Unity 目錄共用存取模式的網路和檔案系統存取限制
必須以低許可權使用者身分在計算節點上執行命令,禁止存取檔系統的敏感性部分。
在 Databricks Runtime 11.3 LTS 和以下版本中,您只能建立埠 80 和 443 的網路連線。
無法連線到實例元數據服務或 Azure WireServer。
Unity 目錄的一般限制
下列限制適用於所有已啟用 Unity 目錄的存取模式。
Unity 目錄的串流限制
- 不支援 Apache Spark 連續處理模式。 請參閱 Spark 結構化串流程式設計指南中的連續處理 。
StreamingQueryListener
無法使用認證或與 Unity 目錄所管理的物件互動。
另 請參閱 Unity 目錄單一使用者存取模式 的串流限制和 Unity 目錄共用存取模式的串流限制。
如需使用 Unity 目錄串流的詳細資訊,請參閱 搭配結構化串流使用 Unity 目錄。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應