我们最近在 Linux 服务器上安装了 spark3。我们在 hive 中创建了某些数据库。当我们使用spark3-submit运行 pyspark 程序时,它正在连接到 hive 服务器并能够查看和运行数据库表上的查询。但是,如果我们对spark-submit执行相同操作,我将无法连接到同一个配置单元服务器并查看/运行相同的 spark sql 语句。
带有代码的示例:
import sys
from os.path import abspath
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName('test pyspark program').enableHiveSupport().getOrCreate()
spark.sql("show databases")
- 如果我使用spark-submit file_name.py运行,则显示不同的数据库
+----------------+
| namespace|
+----------------+
| default|
| test_af|
+----------------+
- 如果我使用spark3-submit file_name.py运行,则显示输出
+------------------+
| namespace|
+------------------+
| analytics|
| test_db_arf|
| default|
| test_prj1|
| temp_db_arf|
我不确定是否需要对设置/配置进行任何更改以进行同步。