这个问题可能是这个问题的重复,但给出的答案并不令人满意。
我在齐柏林飞艇上运行了以下简单代码:(与pyspark cli的场景相同)
%spark2.pyspark
from pyspark.sql import HiveContext
sqlContext = HiveContext(sc)
df = sqlContext.read.format("csv").option("header", "false").option("mode", "DROPMALFORMED").load("/data/data1.csv")
df.write.mode('overwrite').saveAsTable("default.hive_spark");
然后:
%spark2.pyspark
sqlDF = spark.sql("show tables")
sqlDF.show()
它显示:
+--------+----------------+-----------+
|database| tableName|isTemporary|
+--------+----------------+-----------+
| default| hive_spark| false|
+--------+----------------+-----------+
但是当我登录到hive cli时(user:hive)此表不显示:
0: jdbc:hive2://ip-xxx.eu-west-3.com>USE default;
0: jdbc:hive2://ip-xxx.eu-west-3.com>SHOW TABLES;
+-----------+
| tab_name |
+-----------+
| hive_test |
+-----------+
我试过了
sqlContext.uncacheTable("default.hive_spark")
我很困惑。
1条答案
按热度按时间wbrvyc0a1#
使用hivewarehouseconnector,因为您正在使用hive2