美文网首页
Spark 默认hive数据库

Spark 默认hive数据库

作者: 步入繁华 | 来源:发表于2020-09-02 16:37 被阅读0次

    在配置和查看配置之前先弄清楚两个概念

    Hive on Spark:hive默认在mr上跑,可改成在spark内存上跑

    Spark on hive:不管如何运行spark sql,默认读取的hive数据库,其实spark不是直接读取hive数据库,而是读取hive元数据和hdfs,那就是要配置hive的metastore。

    Hive 的 metastore 安装方式共有三种

    1.内嵌模式,特点是:hive服务和metastore服务运行在同一个进程中,derby服务也运行在该进程中。

    2.本地模式,特点是:hive服务和metastore服务运行在同一个进程中,mysql是单独的进程,可以在同一台机器上,也可以在远程机器上。该模式只需将hive-site.xml中的ConnectionURL指向mysql,并配置好驱动名、数据库连接账号即可:

    需要将 MySQL 的驱动 jar 包拷贝到$HIVE_HOME/lib目录下, 并启动 MySQL 服务

    hive-site.xml配置如下

    3.远程模式,特点是:hive服务和metastore在不同的进程内,可能是不同的机器。该模式需要将hive.metastore.local设置为false,并将hive.metastore.uris设置为metastore服务器URI,如有多个metastore服务器,URI之间用逗号分隔。metastore服务器URI的格式为thrift://hostort

    远程模式与本地模式的区分,就是hive服务和metastore服务是否在同一进程,即使在同一台机器也可配置远程模式。

    Metastore启动命令

    hive --service metastore -p

    可以用命令ps -ef|grep metastore查看进程是否启动

    如果不加端口默认启动:hive --service metastore,则默认监听9083

    IP为服务所在机器

    看到thrift可能有些不明白,这就要涉及hiveserver2

    从图中看出 hiveserver是hive与client端的交换终端,client通过hiveserver构建查询语句,访问hadoop,并把数据通过hiveserver返回到client端,hiveserver的核心是基于Thrift,Thrift负责hive的查询服务,Thtift是构建跨平台的rpc框架,主要由四层组成:server,Transport,Protocol和处理器。

    相关文章

      网友评论

          本文标题:Spark 默认hive数据库

          本文链接:https://www.haomeiwen.com/subject/qyewsktx.html