spark读取表只提供模式而不提供数据

mgdq6dx1  于 2021-06-26  发布在  Hive
关注(0)|答案(0)|浏览(231)

我尝试使用以下代码连接到远程配置单元集群,并按预期获得表数据

val spark = SparkSession
  .builder()
  .appName("adhocattempts")
  .config("hive.metastore.uris", "thrift://<remote-host>:9083")
  .enableHiveSupport()
  .getOrCreate()
val seqdf=sql("select * from anon_seq")
seqdf.show

但是,当我尝试通过hiveserver2执行此操作时,我的Dataframe中没有数据。此表基于sequencefile。这就是问题所在,因为我实际上是通过jdbc来阅读这篇文章的?

val sparkJdbc = SparkSession.builder.appName("SparkHiveJob").getOrCreate
val sc = sparkJdbc.sparkContext
val sqlContext = sparkJdbc.sqlContext
val driverName = "org.apache.hive.jdbc.HiveDriver"
Class.forName(driverName)
val df = sparkJdbc.read
  .format("jdbc")
  .option("url", "jdbc:hive2://<remote-host>:10000/default")
  .option("dbtable", "anon_seq")

  .load()
df.show()

有人能帮我理解在spark2中使用hiveserver2和jdbc以及相关驱动程序的目的吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题