使用Databricks-Connect 13.2.0连接集群报错:非共享/单用户集群
问题详情
使用databricks-connect 13.2.0执行本地Spark代码时,触发以下错误:
details = "INVALID_STATE: cluster xxxxx is not Shared or Single User Cluster. (requestId=05bc3105-4828-46d4-a381-7580f3b55416)" debug_error_string = "UNKNOWN:Error received from peer {grpc_message:"INVALID_STATE: cluster 0711-122239-bb999j6u is not Shared or Single User Cluster. (requestId=05bc3105-4828-46d4-a381-7580f3b55416)", grpc_status:9, created_time:"2023-07-11T15:26:08.9729+02:00"}"
- 集群实际配置为Shared访问模式,运行时版本13.2
- 本地环境:Python 3.10、openjdk 1.8.0_292、Azure Databricks
排查与解决步骤
1. 确认集群访问模式类型
Databricks Connect仅支持Shared或Single User访问模式的集群,需注意:
- 进入Azure Databricks控制台,找到目标集群,切换到「配置」标签,检查「访问模式」是否为严格的Shared(而非「No Isolation Shared」)
- 若为「No Isolation Shared」,需修改为「Shared」模式后重启集群
2. 校验Databricks Connect配置准确性
- 本地执行
databricks configure --connect,重新确认:- 集群ID是否与报错中的ID(0711-122239-bb999j6u)完全一致
- 工作区URL、认证Token是否正确
- 确保目标集群处于运行中状态,无启动或停止异常
3. 对齐依赖版本与清理冲突
- 升级databricks-connect到13.2分支的最新补丁版本:
pip install --upgrade databricks-connect==13.2.* - 卸载本地可能存在的pyspark,避免环境冲突:
pip uninstall -y pyspark
4. 检查集群权限设置
- 在集群的「权限」标签下,确认当前Token对应的用户拥有「允许附加到集群」权限,无权限限制导致的访问异常
验证代码调整
原代码中print(temps)仅会输出DataFrame结构,若要显示数据内容,需添加temps.show():
from databricks.connect import DatabricksSession from pyspark.sql.types import * from datetime import date if __name__ == "__main__": spark = DatabricksSession.builder.getOrCreate() schema = StructType([ StructField('AirportCode', StringType(), False), StructField('Date', DateType(), False), StructField('TempHighF', IntegerType(), False), StructField('TempLowF', IntegerType(), False) ]) data = [ [ 'BLI', date(2021, 4, 3), 52, 43], [ 'BLI', date(2021, 4, 2), 50, 38], [ 'BLI', date(2021, 4, 1), 52, 41], [ 'PDX', date(2021, 4, 3), 64, 45], [ 'PDX', date(2021, 4, 2), 61, 41], [ 'PDX', date(2021, 4, 1), 66, 39], [ 'SEA', date(2021, 4, 3), 57, 43], [ 'SEA', date(2021, 4, 2), 54, 39], [ 'SEA', date(2021, 4, 1), 56, 41] ] temps = spark.createDataFrame(data, schema) temps.show() # 替换print(temps)以显示数据内容
内容的提问来源于stack exchange,提问作者zezzar
相关产品推荐
相关产品推荐

