首页 > 数据库 >【Hive】元数据库部署的三种方式和选择【metaStore server】

【Hive】元数据库部署的三种方式和选择【metaStore server】

时间:2023-02-23 09:12:58浏览次数:37  
标签:数据服务 数据库 hive server metastore Hive mysql metaStore javax

一、Derby

 

 

元数据使用之前,要在hive目录下执行schematool命令,进行初始化设置

 

bin/schematool -dbType derby -initSchema

启动hive后,可以用 jps -ml 命令看到一个CliDriver的进程

问题:derby数据库不与其他客户端共享数据,就是说不能多窗口访问。

二、Mysql数据库

 

 安装完 mysql数据库后一定不要忘记初始化

mysqld --initalize --user=mysql

启动服务器后再登录

systemctl start mysqld

还需要将mysql的驱动包导入到hive的lib目录下

再去通过hive-site.xml文件,配置metastore到mysql

配置文件如下:


 

<?xml version="1.0"?>

 

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

 

<configuration>

 

    <!-- jdbc连接的URL -->

 

    <property>

 

        <name>javax.jdo.option.ConnectionURL</name>

 

        <value>jdbc:mysql://hadoop102:3306/metastore?useSSL=false</value>

 

</property>

 

    <!-- jdbc连接的Driver-->

 

    <property>

 

        <name>javax.jdo.option.ConnectionDriverName</name>

 

        <value>com.mysql.jdbc.Driver</value>

 

</property>

 

    <!-- jdbc连接的username-->

 

    <property>

 

        <name>javax.jdo.option.ConnectionUserName</name>

 

        <value>root</value>

 

    </property>

 

    <!-- jdbc连接的password -->

 

    <property>

 

        <name>javax.jdo.option.ConnectionPassword</name>

 

        <value>123456</value>

 

</property>

 

    <!-- Hive默认在HDFS的工作目录 -->

 

    <property>

 

        <name>hive.metastore.warehouse.dir</name>

 

        <value>/user/hive/warehouse</value>

 

    </property>

 

   <!-- Hive元数据存储的验证 -->

 

    <property>

 

        <name>hive.metastore.schema.verification</name>

 

        <value>false</value>

 

    </property>

 

    <!-- 元数据存储授权  -->

 

    <property>

 

        <name>hive.metastore.event.db.notification.api.auth</name>

 

        <value>false</value>

 

    </property>

 

</configuration>


 

 

配置完hive-site.xml文件后,就可以登录mysql创建metastore数据库,

这个时候登录hive,初始化bin/schematool -initSchema -dbType mysql -verbose

这个时候就建立完成了。

但是:直连模式在生产环境下是非常不可取的,所以我们会选择最后一种模式


 

三、MetaStore Server

 

 元数据服务模式:直白的说就是在mysql之前建立了一个server去管理,避免直接访问。

 在服务器端启动一个metaStore服务,客户就会利用 Trift 协议通过MetaStore服务访问元数据库。

 使用之前 要通过配置文件 hive-site.xml 部署一下元数据服务 


 

    <!-- 指定存储元数据要连接的地址 -->

    <property>

        <name>hive.metastore.uris</name>

        <value>thrift://hadoop102:9083</value>

</property>


这个时候,通过下面的命令就可以启动元数据服务了

(元数据服务是堵塞式的)

bin/hive --service metastore

标签:数据服务,数据库,hive,server,metastore,Hive,mysql,metaStore,javax
From: https://www.cnblogs.com/august888-yang/p/17146665.html

相关文章