Hive和Spark的几种集成方式

Spark with Hive

Spark with Hive这种集成方式,主要是Spark访问Hive的元数据,将Hive的数据作为数据源来进行操作。

其中实现的方式有三种

SparkSession + Hive Metastore

实现方式:在创建SparkSession 的时候,通过 config 函数来明确指定 hive.metastore.uris 参数;或者是将 hive-site.xml 拷贝到 Spark 安装目录下的 conf 子目录,Spark 即可自行读取其中的配置内容。
这种方式是通过代码进行Spark开发可以使用的。

Spark-SQL CLI + Hive Metastore

实现方式:与第一种方式是一样的,将 hive-site.xml 拷贝到 Spark 安装目录下的 conf 子目录即可。
这种方式是将,SQL语句转化为Spark任务的方式,可以直接用SQL开发,比较方便。

Beeline + Spark Thrift Server

实现方式:使用 Beeline 客户端连接 Spark Thrift Server,从而访问Hive数据。
这种方式需要启动 Spark Thrift Server。

Hive on Spark

Hive on Spark的集成方式,是Hive SQL交由Spark执行的方式,可以认为只是把Hive SQL的执行引擎换成了Spark。

实现方式:配置三个参数

  • hive.execution.engine = spark
  • spark.master = spark集群部署模式,如 yarn
  • spark.home = spark安装目录

这种以Hive为主的方式可以方便的进行第三方SQL开发,比如在hue上。

Spark on yarn

Spark on yarn 其实只是Spark的一种部署模式,关于Spark的部署模式如下

本地模式

    • Local:本地模式,Driver和Executors进程都在执行Spark应用程序的服务器上

分布式环境部署

选择不同的资源调度器,每个分布式部署模式都包括 Client 和 Cluster 两种模式
Client模式:Driver进程在执行Spark应用程序的服务器上,Executorrs进程在集群节点服务器上
Cluster模式:Driver和Executors进程都在集群节点上

    • Standalone:使用Spark自带的资源调度器
    • YARN:YARN作为资源调度器
    • Mesos:Mesos作为资源调度器
    • Kubernetes:Kubernetes作为资源调度器
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值