适用于 Python 的 Databricks Connect 的高级用法
注意
本文介绍适用于 Databricks Runtime 14.0 及更高版本的 Databricks Connect。
本文介绍的主题超出了 Databricks Connect 的基本设置。
日志记录和调试日志
适用于 Python 的 Databricks Connect 使用标准 Python 日志记录生成日志。
日志将发送到标准错误流 (stderr),默认情况下,仅发出 WARN 级别和更高级别的日志。
设置环境变量 SPARK_CONNECT_LOG_LEVEL=debug
将修改此默认值,并打印 DEBUG
级别及更高级别的所有日志消息。
Pyspark shell
适用于 Python 的 Databricks Connect 附带一个 pyspark
二进制文件,该二级制文件是配置为使用 Databricks Connect 的 PySpark REPL。 REPL 可以通过运行以下命令启动:
pyspark
在没有其他参数的情况下启动时,它会从环境中获取默认凭据(例如 DATABRICKS_
环境变量或 DEFAULT
配置文件)以连接到 Azure Databricks 群集。
REPL 启动后,spark
对象可以配置为在 Databricks 群集上运行 Apache Spark 命令。
>>> spark.range(3).show()
+---+
| id|
+---+
| 0|
| 1|
| 2|
+---+
通过使用 Spark Connect 连接字符串配置 --remote
参数,可以将 REPL 配置为连接到其他远程服务器。
pyspark --remote "sc://<workspace-instance-name>:443/;token=<access-token-value>;x-databricks-cluster-id=<cluster-id>"
其他 HTTP 标头
Databricks Connect 通过 HTTP/2 使用 gRPC 与 Databricks 群集通信。
某些高级用户可能选择在客户端和 Azure Databricks 群集之间安装代理服务,以便更好地控制来自其客户端的请求。
在某些情况下,代理可能需要 HTTP 请求中的自定义标头。
headers()
方法可用于将自定义标头添加到其 HTTP 请求。
spark = DatabricksSession.builder.header('x-custom-header', 'value').getOrCreate()