【原创】大叔经验分享(24)hive metastore的几种部署方式
hive及其他组件(比如spark、impala等)都会依赖hive metastore,依赖的配置文件位于hive-site.xml
hive metastore重要配置
hive.metastore.warehouse.dir
hive2及之前版本默认为/user/hive/warehouse/,创建数据库或表时会在该目录下创建对应的目录javax.jdo.option.ConnectionURL
javax.jdo.option.ConnectionDriverName
javax.jdo.option.ConnectionUserName
javax.jdo.option.ConnectionPassword
默认为derbyhive.metastore.uris
默认为空
hive metastore部署方式
1 全部默认配置
使用的是内置的derby库,hdfs目录为/user/hive/warehouse/
2 只配置javax.jdo.option.*相关配置
使用配置的数据库(比如mysql),hdfs目录为/user/hive/warehouse/
3 只配置hive.metastore.uris
所有元数据操作都通过远程metastore交互(注意此时需要启动一个独立的hive metastore进程),hdfs目录为/user/hive/warehouse/
ps:注意1和2不需要任何的hive进程,但3种方式都需要依赖hdfs
总结
综上,在只需要使用impala或spark而不需要hive的时候,其实只需要一个远程数据库(比如mysql)即可,不需要单独启动hive metastore进程;
如何初始化一个hive元数据库?
$ ls $HIVE_HOME/scripts/metastore/upgrade
derby mssql mysql oracle postgres
在hive目录下有各种数据库各个版本的初始化脚本,比如impala依赖hive1.2,只需要安装hive1.2的元数据库即可,对应的sql文件为:
$HIVE_HOME/scripts/metastore/upgrade/mysql/hive-schema-1.2.0.mysql.sql
其中会依赖
$HIVE_HOME/scripts/metastore/upgrade/mysql/hive-txn-schema-0.13.0.mysql.sql
初始化完成之后直接在/etc/impala/conf/hive-site.xml中配置javax.jdo.option.*指向mysql库即可;
impala的最小安装为:hdfs + mysql(hive元数据库) + impala
spark的最小安装为:hdfs + mysql(hive元数据库) + spark
参考:https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration
【原创】大叔经验分享(24)hive metastore的几种部署方式的更多相关文章
- 【原创】经验分享:一个小小emoji尽然牵扯出来这么多东西?
前言 之前也分享过很多工作中踩坑的经验: 一个线上问题的思考:Eureka注册中心集群如何实现客户端请求负载及故障转移? [原创]经验分享:一个Content-Length引发的血案(almost.. ...
- hive命令的三种执行方式
hive命令的3种调用方式 方式1:hive –f /root/shell/hive-script.sql(适合多语句) hive-script.sql类似于script一样,直接写查询命令就行 不 ...
- 【原创】大叔经验分享(29)cdh5使用已存在的metastore数据库部署hive
cdh5.16.1使用的hive版本是hive-1.1.0+cdh5.16.1+1431,详见:https://www.cloudera.com/documentation/enterprise/re ...
- 【原创】大叔经验分享(65)spark读取不到hive表
spark 2.4.3 spark读取hive表,步骤: 1)hive-site.xml hive-site.xml放到$SPARK_HOME/conf下 2)enableHiveSupport Sp ...
- 【原创】大叔经验分享(31)CM金丝雀Canary报错
CM金丝雀Canary报错 1 HDFS 金丝雀Canary 测试无法为 /tmp/.cloudera_health_monitoring_canary_files 创建父目录. 2 Hive Met ...
- 【原创】大叔经验分享(7)创建hive表时格式如何选择
常用格式 textfile 需要定义分隔符,占用空间大,读写效率最低,非常容易发生冲突(分隔符)的一种格式,基本上只有需要导入数据的时候才会使用,比如导入csv文件: ROW FORMAT DELIM ...
- 【原创】大叔经验分享(26)hive通过外部表读写elasticsearch数据
hive通过外部表读写elasticsearch数据,和读写hbase数据差不多,差别是需要下载elasticsearch-hadoop-hive-6.6.2.jar,然后使用其中的EsStorage ...
- 【原创】大叔经验分享(25)hive通过外部表读写hbase数据
在hive中创建外部表: CREATE EXTERNAL TABLE hive_hbase_table(key string, name string,desc string) STORED BY ' ...
- 【原创】大叔经验分享(2)为什么hive在大表上加条件后执行limit很慢
问题重现 select id from big_table where name = 'sdlkfjalksdjfla' limit 100; 首先看执行计划: hive> explain se ...
随机推荐
- 在Bootstrap开发框架的前端视图中使用@RenderPage实现页面内容模块化的隔离,减少复杂度
在很多开发的场景中,很多情况下我们需要考虑抽象.以及模块化等方面的内容,其目的就是为了使得开发的时候关注的变化内容更加少一些,整体开发更加简单化,从而减少开发的复杂度,在Winform开发的时候,往往 ...
- ondaHTTPError: HTTP 000 CONNECTION FAILED for url
可能是网络问题,换网络. 可能是获取库的IP无法链接到,换库的IP,如添加清华镜像IP等.
- openstack搭建之-基础服务配置(7)
基础环境准备,所需服务器及说明 172.16.2.51 base.test.com 基础服务节点 172.16.2.52 ctrl.test.com 控制节点 172.16.2.53 ...
- EChars学习之路1
引入echarts.min.js或者使用CDN https://cdn.bootcss.com/echarts/4.2.1-rc1/echarts.min.js 为ECharts准备一个具备大小(宽高 ...
- web 日历 任务 插件
[2] 日历任务插件(jquery版)新增日历任务和点击监听 - qq_26462567的博客 - CSDN博客https://blog.csdn.net/qq_26462567/article/de ...
- 【php-fpm】启动PHP报错ERROR: [pool www] cannot get uid for user 'apache'
将@php_fpm_user@改为当前系统的用户名apache, 然后重新启动就ok了 注意:创建apache用户及用户组,上述命令换deamon为apache
- error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler op
caffe c++11编译问题 问题:error: #error This file requires compiler and library support for the ISO C++ 201 ...
- 笔记本装双系统!win10+Linux!所有的坑自己一个个爬过来,纪念一下。
笔记本装双系统!win10+Linux!所有的坑自己一个个爬过来,纪念一下. 2018年09月16日 21:27:19 Corax_2ven 阅读数:14038 写在前面,装了大概5遍,装了删删了 ...
- Spring MVC 使用介绍(六)—— 注解式控制器(二):请求映射与参数绑定
一.概述 注解式控制器支持: 请求的映射和限定 参数的自动绑定 参数的注解绑定 二.请求的映射和限定 http请求信息包含六部分信息: ①请求方法: ②URL: ③协议及版本: ④请求头信息(包括Co ...
- [测试篇]MarkDown之代码块行号+折叠图片
对比测试代码编号 $(function(){ $('pre code').each(function(){ texts = $(this).text().replace(/&(?!#?[a-z ...