hive SparkSQL问题(Spark和配置单元连接)

xpszyzbs  于 2022-11-23  发布在  Hive
关注(0)|答案(1)|浏览(168)

我试图从一个在Hive中创建的数据库中检索数据到我的Spark中,即使DB中有数据(我用Hive检查了它),用Spark进行查询也不会返回任何行(尽管它返回了列信息)。
我已经将hive-site.xml文件复制到Spark配置文件夹中(被要求)。

导入

import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.rdd.RDD
import org.apache.spark.sql
import org.apache.spark.storage.StorageLevel
import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.hive.HiveContext

创建Spark会话:

val spark = SparkSession.builder().appName("Reto").config("spark.sql.warehouse.dir", "hive_warehouse_hdfs_path").enableHiveSupport().getOrCreate() 
    spark.sql("show databases").show()

正在获取数据:

spark.sql("USE retoiabd")
val churn = spark.sql("SELECT count(*) FROM churn").show()

输出量:

count(1) = 0
dhxwm5r4

dhxwm5r41#

在与我们的老师检查后,在Hive中创建表本身出现了一个问题。
我们创建的表如下所示:
CREATE TABLE名称(数据行)
而不是像这样:
创建外部表名(列)

相关问题