大数据开发之Spark篇----idea上使用SparkSQL对Hive上的数据

在idea上使用SparkSQL连接到Hive上

将hive-site.xml存储到项目上的resources目录上

既然我们要在idea上使用spark来访问Hive上的数据,那我们也要有元数据地址才行嘛,所以这和使用spark-sql访问一样需要hive-site.xml这个配置文件。
我们将它放到项目的resources上面,记得要将这个文件夹标记成Resources哦。如果我们没有添加这个配置文件的话,SparkSQL将走默认配置的路线了,在项目本地创建一个spark-warehouse的文件夹来放置我们的元数据了。

添加spark-hive的依赖

groupId:org.apache.spark
artifactId:spark-hive_2.11
version:${spark.version}
我刚开始的时候就是忘记添加这个到pom.xml上面,一运行就直接报找不到hive初始化的类了。

在创建的SparkSession中添加对hive的支持

同样的,我们在使用SparkSQL的时候需要创建一个SparkSession这样的入口点,而这个入口点是需要支持hive操作的

package sparkSQL
import org.apache.spark.sql.SparkSession

object SparkSQLApp {
  def main(args: Array[String]): Unit = {
    val ss = SparkSession.builder().master("local[2]").appName("the test of SparkSession").enableHiveSupport().getOrCreate()
    val df = ss.sql("show databases")
    df.show
    ss.stop()
  }
}

上面的代码用于查看hive中的数据库,结果如下:
大数据开发之Spark篇----idea上使用SparkSQL对Hive上的数据_第1张图片

你可能感兴趣的:(大数据开发之Spark篇----idea上使用SparkSQL对Hive上的数据)