执行HQL时,先到MySQL元数据库中查找描述信息,然后解析HQL并根据描述信息生成MR任务 Hive将SQL转成MapReduce执行速度慢 使用SparkSQL整合Hive其实就是让SparkSQL去加载Hive 的元数据库,然后通过SparkSQL执行引擎去操作Hive表内的数据 所以首先需要开启Hive的元数据库服务,让SparkSQL能够加载元数据 nohup /export/servers/hive-1.1.0-cdh5.14.0/bin/hive –service metastore 2>&1 & 修改 hive/conf/hive-site.xml 新增如下配置 2: 后台启动 Hive MetaStore服务 nohup /export/servers/hive/bin/hive –service metastore 2>&1 >> /var/log.log & Spark 有一个内置的 MateStore,使用 Derby 嵌入式数据库保存数据,但是这种方式不适合生产环境,因为这种模式同一时间只能有一个 SparkSession 使用,所以生产环境更推荐使用 Hive 的 MetaStore SparkSQL 整合 Hive 的 MetaStore 主要思路就是要通过配置能够访问它, 并且能够使用 HDFS 保存 WareHouse,所以可以 直接拷贝 Hadoop 和 Hive 的配置文件到 Spark 的配置目录 hive-site.xml 元数据仓库的位置等信息 core-site.xml 安全相关的配置 hdfs-site.xml HDFS 相关的配置 Hive查询流程及原理
Hive开启MetaStore服务
<property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive/warehouse</value> </property> <property> <name>hive.metastore.local</name> <value>false</value> </property> <property> <name>hive.metastore.uris</name> <value>thrift://node01:9083</value> </property>
SparkSQL整合Hive MetaStore
)
package SparkHive import org.apache.spark.sql.SparkSession /** * Created by 一个蔡狗 on 2020/4/14. */ object SparkHive_1 { def main(args: Array[String]): Unit = { //创建sparkSession val spark = SparkSession .builder() .appName("HiveSupport") .master("local[*]") //.config("spark.sql.warehouse.dir", "hdfs://node01:8020/user/hive/warehouse") //.config("hive.metastore.uris", "thrift://node01:9083") .enableHiveSupport() //开启hive语法的支持 .getOrCreate() spark.sparkContext.setLogLevel("WARN") //查看有哪些表 spark.sql("show databases").show() //创建表 // spark.sql("CREATE TABLE person (id int, name string, age int) row format delimited fields terminated by ' '") //加载数据,数据为当前SparkDemo项目目录下的person.txt(和src平级) // spark.sql("LOAD DATA LOCAL INPATH 'SparkDemo/person.txt' INTO TABLE person") //查询数据 // spark.sql("select * from person ").show() spark.stop() } }
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算