前言

本节讲metastore相关的知识.

hive所有的元数据都是通过matestore管理的.hive cli/hiveserver2包含了内置的metastore.

metastore参数

metastore的基本参数

K V 说明
javax.jdo.option.ConnectionURL jdbc连接字符串
javax.jdo.option.ConnectionDriverName jdbc驱动类名 当使用mysql时:com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName 数据库连接用户名
javax.jdo.option.ConnectionPassword 数据库连接密码

metastore的额外参数

Configuration Parameter Description Default Value
org.jpox.autoCreateSchema 如果hive启动时没有相应的元数据Schecma,则创建相关的库\表等,安装之后装该参数设置为false.只在初始化时使用.一般不用这个功能都手动创建hive元数据
datanucleus.autoStartMechanism Whether to initialize on startup.
hive.metastore.server.min.threads Thrift server's pool最小连接数 200
hive.metastore.server.max.threads Thrift server's pool最大连接数 100000 since Hive 0.8.1
hive.metastore.filter.hook Metastore hook class for further filtering the metadata read results on client side.(Hive 1.1.0 and later.) org.apache.hadoop.hive.metastore.DefaultMetaStoreFilterHookImpl
hive.metastore.port Hive metastore listener port.(Hive 1.3.0 and later.) 9083

客户端参数

一切要使用metastore服务的客户端| K|V|说明|

K V 说明
hive.metastore.uris metastore服务器地址,用于客户端连接 可以配置多个
hive.metastore.warehouse.dir hive仓库在hdfs上的位置.这个应该不需要配置的

mestastore是没有状态的,因此可以启动多个metastore作为ha. client默认会选择hive.metastore.uris中的第一个,但第一个连接不上的话,则随机从列表中选一个.

使用zk自动发现mestastore

从hive4.0.0开始可以像hiveserver2一样通过zookeeper自动发现metastore实现ha.

Config Param Config Value Comment
hive.metastore.service.discovery.mode 默认不配置,可以是zookeeper 当设置为zookeeper时,metastore在启动实现会在zk中注册自己,在关闭时从zk取注销. server和client配置要相同
hive.metastore.uris zookeepr_host_name:port, host_name:port, ... 上面为zookeeper时,zookeepr集群地址.server和client配置要相同
hive.metastore.zookeeper.client.port port 上面要是设置了port这个就可以忽略.zookeeper服务器端口.server和client配置要相同
hive.metastore.zookeeper.namespace namespace name zookeeper中metastore的根目录
hive.metastore.zookeeper.session.timeout 单位毫秒 ZooKeeper client's session timeout. 心跳超过这个时间客户端与zk的连接断开
hive.metastore.zookeeper.connection.timeout 单位秒 ZooKeeper client's connection timeout in seconds. Connection timeout * hive.metastore.zookeeper.connection.max.retries with exponential backoff is when curator client deems connection is lost to zookeeper.
hive.metastore.zookeeper.connection.max.retries 连接zk的重试次数
hive.metastore.zookeeper.connection.basesleeptime 单位毫秒 Initial amount of time (in milliseconds) to wait between retries when connecting to the ZooKeeper server when using ExponentialBackoffRetry policy.

启动hive metastore服务

hive --service metastore [-p 9083]

9.Hive Metastore Administration的更多相关文章

  1. 【原创】大叔经验分享(24)hive metastore的几种部署方式

    hive及其他组件(比如spark.impala等)都会依赖hive metastore,依赖的配置文件位于hive-site.xml hive metastore重要配置 hive.metastor ...

  2. Hive安装配置指北(含Hive Metastore详解)

    个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...

  3. Hive metastore三种配置方式

    http://blog.csdn.net/reesun/article/details/8556078 Hive的meta数据支持以下三种存储方式,其中两种属于本地存储,一种为远端存储.远端存储比较适 ...

  4. Hadoop之Hive(2)--配置Hive Metastore

    Hive metastore服务以关系性数据库的方式存储Hive tables和partitions的metadata,并且提供给客户端访问这些数据的metastore service的API.下面介 ...

  5. Hive Metastore 代码简析

    1.  hive metastore 内部结构 1.1 包结构 从package结构来看,主要的5个package,让我们来看看这几个package的内容 (1) metastorepackage是m ...

  6. hive metastore异常 org.apache.thrift.protocol.TProtocolException: Missing version in readMessageBegin, old client

    hiveserver2的端口是10000hive.metastoe.uris 的端口9083改为10000之后 beelien 连接hiveserver2报错 Error: Could not ope ...

  7. Hive Metastore ObjectStore PersistenceManager自动关闭bug解析

    最近在测试HCatalog,由于Hcatalog本身就是一个独立JAR包,虽然它也可以运行service,但是其实这个service就是metastore thrift server,我们在写基于Hc ...

  8. hive metastore Server 出现异常

    报错信息: 常见问题分析: 1 hive metastore 数据库中用户名或者密码出现更改,并且重启了hive,导致生效但是CDH下没有及时更改hive metastore设置密码 2 Mysql ...

  9. Hive metastore整体代码分析及详解

    从上一篇对Hive metastore表结构的简要分析中,我再根据数据设计的实体对象,再进行整个代码结构的总结.那么我们先打开metadata的目录,其目录结构: 可以看到,整个hivemeta的目录 ...

随机推荐

  1. Django 连接Mysql异常处理

    启动manage.py提示 连接数据库异常 django.db.utils.OperationalError: (2003, "Can't connect to MySQL server o ...

  2. iteritems()与items()

    iteritems:以迭代器对象返回字典键值对 item:以列表形式返回字典键值对 >>> dic = {'a':3,'c':1,'b':2} >>> print ...

  3. Python自动化之clean方法前端调用clean方法的错误

    obj.non_field_errors.0 源代码: NON_FIELD_ERRORS = '__all__' 如果在前端写 obj.errors.__all__.0直接就会报错 所以经过尝试得知, ...

  4. [转]C结构体之位域(位段)

    有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位.例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可.为了节省存储空间,并使处理简便,C语言又提供了一种数据结构 ...

  5. [整理记录备忘] CentOS 7 相关记录

    CentOS 7 命令行模式安装GNOME.KDE图形界面 一.进入 root 模式 因为权限限制,所以我们需要进入 root 模式,开机使用 root 登陆或者系统运行中切换为 root 用户均可. ...

  6. Linux简介及最常用命令(简单易学,但能解决95%以上的问题)

    转载 longctw 版权声明:只为分享.欢迎转载^V^ https://blog.csdn.net/xulong_08/article/details/81463054 Linux是目前应用最广泛的 ...

  7. HTML5知识点汇总(1)

    HTML5 1.html5是什么 万维网的核心语言.标准通用标记语言下的一个应用超文本标记语言(HTML)的第五次重大修改.-------h5并不是一门新的语言,而是html语言的第五次修订. 2.h ...

  8. iOS swift项目IM实现,从长连接到数据流解析分析之Socket

    iOS  swift项目IM实现,从长连接到底层数据解析分析之Socket 一:项目简介:  去年开始接手了一个国企移动项目,项目的需求是实现IM即时通讯功能. * 一期版本功能包括了:       ...

  9. 20155327 2017-2018-2 《Java程序设计》第9周学习总结

    20155327 2017-2018-2 <Java程序设计>第9周学习总结 URL类 URL类是java.net包中的一个重要的类,URL的实例封装着一个统一资源定位符,使用URL创建对 ...

  10. 正则表达式简介及在C++11中的简单使用

    正则表达式(regular expression)是计算机科学中的一个概念,又称规则表达式,通常简写为regex.regexp.RE.regexps.regexes.regexen. 正则表达式是一种 ...