1 Hive相关的操作
Spark SQL支持读写Hive,不过Hive本身包含了大量的依赖,这些依赖spark默认是没有的。如果Hive的依赖在Classpath中,那么Spark可以自动加载(注意Spark的worker节点也需要提供这些依赖)。默认配置Hive只需要把相关的hive-site.xml core-site.xml hdfs-site.xml 放到conf目录下即可。
当使用hive时,需要在 SparkSession 中开启hive,从而获得hive相关的serdes以及函数。如果没有现成的Hive环境们也可以使用,spark会自动在当前目录创建metastore_db,目录的位置可以通过参数 spark.sql.warehouse.dir 指定, 默认是启动Spark应用程序的目录。 注意在spark2.0之前使用的参数hive.metastore.warehouse.dir属性,已经废弃。 另外不要忘记赋予spark程序读写对应目录的权限。
// 创建spark session 并 指定hive地址
val spark = SparkSession
.builder()
.appName("Spark Hive Example")
.config("spark.sql.warehouse.dir", warehouseLocation)
.enableHiveSupport()
.getOrCreate()
import

本文介绍了Spark通过JDBC驱动与Hive交互的基础知识,包括如何进行Hive相关的操作,Hive存储配置如fileFormat、inputFormat、outputFormat和serde,以及如何与不同版本的Hive metastore交互。详细阐述了相关配置参数的作用,如spark.sql.hive.metastore.version和spark.sql.hive.metastore.jars。
最低0.47元/天 解锁文章
1125

被折叠的 条评论
为什么被折叠?



