Hive HA使用说明
hive让大数据飞了起来,不再需要专人写MR。平常我们都可以用基于thrift的任意语言来调用hive。
不过爱恨各半,hive的thrift不稳定也是出了名的。很容易就出问题,让人无计可施。唯一的办法就是不断kill,不断restart。
当然,我们可以用haproxy来解决这个问题,关键,haproxy不管hive是否逻辑可用,不能执行逻辑的hive也“死马当活马”。
当然,搞的好的可以用 zookeeper,不过,它太“重”,而且不管hive的重启。
Hive HA横空出世。只要指明它可以管理的服务器ip,端口,启动一个主控服务器,在其他服务器上启动节点服务,它就一切搞定。
Hive HA原理是:
将若干hive 实例纳入一个资源池,然后对外提供一个唯一的接口,进行proxy relay。
对于程序开发人员,就把它认为是一台超强“hive"就可以。每次它接收到一个HIVE查询连接后,都会轮询资源池里可用的hive 资源。
这样,能充分使用每个hive server,减少压力。在拿到hive 连接后,Hive HA会首先进行逻辑可用测试,这个逻辑规则可自行配置。
如果逻辑可用,则直接把客户端的HIVE 查询连接 relay到该hive server。
若逻辑不可用,则将该hive server放入黑名单,然后继续读取池里其他hive server进行连接测试。
Hive Ha每隔一段时间(可配置),对黑名单中的hive server进行处理,通过和节点管理服务器通讯,重启该hive server。如果
重启后可用,则将该hive从黑名单中移除,加入资源池。
Hive HA地址:
https://github.com/foxmoon/HiveHa
欢迎大家提出新需求,使用中有疑问请csdn站内联系。
Hive HA使用说明的更多相关文章
- Hadoop 2.6.0+ZooKeeper+Hive HA高可用集群安装
http://blog.csdn.net/totxian/article/details/45248399
- Hive HA基本原理
- 基于Hadoop的数据仓库Hive
Hive是基于Hadoop的数据仓库工具,可对存储在HDFS上的文件中的数据集进行数据整理.特殊查询和分析处理,提供了类似于SQL语言的查询语言–HiveQL,可通过HQL语句实现简单的MR统计,Hi ...
- hive数据仓库入门到实战及面试
第一章.hive入门 一.hive入门手册 1.什么是数据仓库 1.1数据仓库概念 对历史数据变化的统计,从而支撑企业的决策.比如:某个商品最近一个月的销量,预判下个月应该销售多少,从而补充多少货源. ...
- MUA
a big deal analysis analytics cooperate 合作 efficient explicitly fine grained Granularity graph geogr ...
- oschina大数据开源软件
Hadoop 图形化用户界面 Hue 大数据可视化工具 Nanocubes 企业大数据平台 RedHadoop 大数据查询引擎 PrestoDB Hadoop集群监控工具 HTools 安全大数据分析 ...
- 通过Ambari2.2.2部署HDP大数据服务
node1 amari-server node2 amari-agent namenode1,datanode,resourcemanager,zk node3 amari-agent namen ...
- 【学习笔记】大数据技术原理与应用(MOOC视频、厦门大学林子雨)
1 大数据概述 大数据特性:4v volume velocity variety value 即大量化.快速化.多样化.价值密度低 数据量大:大数据摩尔定律 快速化:从数据的生成到消耗,时间窗口小,可 ...
- 大二暑假第六周总结--开始学习Hadoop基础(五)
简单学习数据仓库HIVE HIVE是一个构建于Hadoop顶端的数据仓库工具 支持大规模数据存储,分析,具有良好的可扩展性 某种程度上可以看做是用户编程接口,本身不存储和处理数据 依赖分布式系统HDF ...
随机推荐
- python写的屏保程序
__author__ = 'ChenYan' from random import randint from tkinter import * class Randball(): def __init ...
- Android 修改底部导航栏navigationbar的颜色
Android 修改底部导航栏navigationbar的颜色 getWindow().setNavigationBarColor(Color.BLUE); //写法一 getWindow().set ...
- Python 数据处理扩展包: pandas 模块的DataFrame介绍(读写数据库的操作)
1.读取表中的内容,如下例子: import MySQLdb try: conn = MySQLdb.connect(host='127.0.0.1',user='root',passwd='root ...
- docker学习笔记:修改无法启动的容器中的内容
我们可能会碰到这样的一个问题,在容器执行过程中,修改了容器的内容(如配置文件信息),但因为修改出了问题.导致容器关闭后,无法启动. 这事需要重新修改配置文件. 正常情况下可以通过 docker exe ...
- zabbix 添加主机成功失败判断
zabbix 成功添加后: $VAR1 = bless( { 'version' => 0, 'content' => { 'jsonrpc' => '2.0', 'id' => ...
- 清华申请退学博士作品:完全用Linux工作,凸Windows
清华申请退学博士作品:完全用Linux工作 按尽管我们已经不习惯看长篇大论, 但我还是要说, 这是一篇值得你从头读到尾的长篇文章. 2005年9月22日,清华在读博士生王垠在水木社区BLOG上发表了& ...
- 【笨木头Lua专栏】基础补充08:协同程序之resume-yield间的数据返回
这次要介绍几个事实上非常easy,可是一定要小心的返回值规则. 笨木头花心贡献,哈?花心?不,是用心~ 转载请注明.原文地址: http://www.benmutou.com/archives/173 ...
- Linux下tcpdump用法
根据使用者的定义对网络上的数据包进行截获的包分析工具.tcpdump将网络中传送的数据包的“头”完全截获下来提供分析.它支持针对网络层.协议.主机.网络或端口的过滤,并提供了and. or.not等逻 ...
- 解决项目打包过程检出项目出现 svn:e15500错误
svn:E15500 is already a working copy for a different url 原因:文件夹含有svn信息的隐藏文件未删除 解决办法:把该文件夹删除掉,然后重新建立同 ...
- 使用ffmpeg视频编码过程中踩的一个坑
今天说说使用ffmpeg在写视频编码程序中踩的一个坑,这个坑让我花了好多时间,回头想想,非常多时候一旦思维定势真的挺难突破的.以下是不对的编码结果: ...