hive元数据库配置、metadata
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了hive元数据库配置、metadata,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3311字,纯文字阅读大概需要5分钟。
内容图文
![hive元数据库配置、metadata](/upload/InfoBanner/zyjiaocheng/561/ef0394c45e984fcca7d6253acde68a21.jpg)
一、什么是hive元数据? hive元数据就是hive的一些基本的元素,主要包括hive表的基本属性,如下 (1)hive表的数据库名、表名、字段名称与类型、分区字段与类型 (2)表的分区,分区的属性location等 (3)serdeproperties, tblproperties等等 可以通过 desc
一、什么是hive元数据? hive元数据就是hive的一些基本的元素,主要包括hive表的基本属性,如下 (1)hive表的数据库名、表名、字段名称与类型、分区字段与类型 (2)表的分区,分区的属性location等 (3)serdeproperties, tblproperties等等 可以通过 desc formatted tablename 查看表有哪些属性 二、hive默认元数据库Derby(嵌入模式) hive-default.xml通过如下配置设置javax.jdo.option.ConnectionURL jdbc:derby:;databaseName=metastore_db;create=true JDBC connect string for a JDBC metastore javax.jdo.option.ConnectionDriverName org.apache.derby.jdbc.EmbeddedDriver Driver class name for a JDBC metastore
</property> Apache Derby非常小巧,核心部分derby.jar只有2M,所以既可以做为单独的数据库服务器使用,也可以内嵌在应用程序中使用。所以hive采用了Derby作为一个内嵌的元数据库,可以完成hive安装的简单测试。 hive安装完成之后,就可以在hive shell中执行一些基本的操作,创建表、查询等等。如果你细心的话,就会发现一个问题: 当在某个目录下启动终端,进入hive shell时,hive默认会在当前目录下生成一个derby文件和一个metastore_db目录,这两个文件主要保存刚刚在shell中操作的一些sql的结果,比如新建的表、添加的分区等等 这种存储方式的带来弊端 1.在同一个目录下同时只能有一个hive客户端能使用数据库 2.切换目录启动新的shell,无法查看之前创建的表,不能实现表数据的共享 三、使用mysql作为元数据库 由于使用默认的元数据库有些弊端,所以采用mysql保存hive元数据解决上面的问题。hive所有的元数据都保存在同一个库里,这样不同开发者创建的表可以实现共享。
mysql配置又分为几种情况: (1)mysql部署在hive服务器,使用本地服务(测试、学习使用)
![hive元数据库配置、metadata - 文章图片](/upload/getfiles/0001/2021/4/26/20210426014530898.jpg)
(2)mysql部署在其他机器,hive服务器开启metadata服务,在hive服务器上操作hive
![hive元数据库配置、metadata - 文章图片](/upload/getfiles/0001/2021/4/26/20210426014530953.jpg)
(3)mysql部署在其他机器,hive服务器开启metadata服务,在hive客户端访问hive的metadata服务
![hive元数据库配置、metadata - 文章图片](/upload/getfiles/0001/2021/4/26/20210426014531028.jpg)
配置mysql: 配置mysql时,首先要把mysql-jdbc-driver.jar拷贝到$HIVE_HOME/lib目录下,修改hive-default.xml名字为hive-site.xml 第一种情况,hive-site.xml配置如下
hive.metastore.local true javax.jdo.option.ConnectionURL jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver javax.jdo.option.ConnectionUserName hive 第二种情况,hive-site.xml配置 javax.jdo.option.ConnectionPassword password javax.jdo.option.ConnectionURL jdbc:mysql://192.168.0.1:3306/hive?createDatabaseIfNotExist=true javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver javax.jdo.option.ConnectionUserName hive javax.jdo.option.ConnectionPassword password hive.metastore.local false 第三种情况,hive-site.xml配置 1、 服务端配置 hive.metastore.uris thrift://192.168.0.101:9083 javax.jdo.option.ConnectionURL jdbc:mysql://192.168.1.214:3306/hive?createDatabaseIfNotExist=true javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver javax.jdo.option.ConnectionUserName hive 2、客户端配置 javax.jdo.option.ConnectionPassword password hive.metastore.local false 在使用hive开始前,如果mysql是部署在远端且 hive.metastore.local=false 则需要启动hive的metadata服务 $ hive --service metastore 客户端使用hive命令即可 root@local:~$ hive hive> show tables; OK Time taken: 0.7 seconds hive> hive.metastore.uris thrift://192.168.0.101:9083
内容总结
以上是互联网集市为您收集整理的hive元数据库配置、metadata全部内容,希望文章能够帮你解决hive元数据库配置、metadata所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。