- 浏览: 9995 次
最新评论
文章列表
记一次系统HBase过滤器升级的异常
- 博客分类:
- Hbase系列
在我们的系统中,Hbase的RowKey是用二进制写入的,所以基于RowKey的正则表达式没有用处,因此自定义了一个比较器,用于匹配指定位置行健的内容。开发、测试阶段都没问题,上生产环境,运行后总是提示类找不到的错误。仔细确认了打的jar包的确放在Hbase的lib目录下的,为什么报这个错误呢?
重启集群、无效
把jar包删除了无效,重新加入 无效
难道真的见鬼了?
忽然发现一个问题,生产环境我们中启动Hbase的账户是hadoop账户,上传文件使用的是root账户,是不是hadoop账户找不到root账户传入的jar包呢?
于是乎执行 chown、chgrp 再重启集群,问题解决。 ...
近日发现测试环境中的RegionServer总是突然宕机,重新启动节点依然无效,无耐看了半天日志发现如下信息:
2015-02-13 05:40:04,325 WARN [regionserver60020] zookeeper.RecoverableZooKeeper: Node /hbase/rs/slave2,60020,1423777199540 already deleted, retry=false
2015-02-13 05:40:04,325 WARN [regionserver60020] regionserver.HRegionServer: Failed deleti ...
阅读本文可以带着下面问题:
1.HBase遇到问题,可以从几方面解决问题?
2.HBase个别请求为什么很慢?你认为是什么原因?
3.客户端读写请求为什么大量出错?该从哪方面来分析?
4.大量服务端exception,一般原因是什么?
5.系统越来越慢的原因是什么?
6.Hbase数据写进去,为什么会没有了,可能的原因是什么?
7. regionserver发生abort,遇到最多是什么情况?
8.从哪些方面可以判断HBase集群是否健康?
9.为了加强HBase的安全性,你会采取哪些措施?
在Tcon分布式系统测试实践的分享中,笔者提到了测试人员参与线上问题分析的必要性:
1、测试工作中的问 ...
系统相关属性设置:
HTableDescriptor tableDesc = new HTableDescriptor("test");
//日志flush的时候是同步写,还是异步写
tableDesc.setDurability(Durability.SYNC_WAL);
//MemStore大小 tableDesc.setMemStoreFlushSize(256*1024*1024);
HColumnDescriptor colDesc = new HColumnDescriptor("f");
//块缓存 ...
Hbase Client API 介绍
- 博客分类:
- Hbase系列
Hbase API 常用类应用
网上Hbase的介绍有很多,案例也不少。自己写了个Demo,进行一些简单的总结。
HBase 常用类介绍。
JAVA API 和 HBase数据库模型之间的关系
JAVA 类
Hbase 数据模型
HBaseAdmin
数据库(database)
HBaseConfiguration
HTable
表(table)
HTableDescriptor
列族(Column Family)
Put
行列操作
Get
Scanner
下面说说JAVA API 提供的这些类的功能。和他们之间有什么样的联系。
1.HBaseConfiguration
关系:org.ap ...
Hbase原理、基本概念、基本架构
- 博客分类:
- Hbase系列
概述
HBase是一个构建在HDFS上的分布式列存储系统;
HBase是基于Google BigTable模型开发的,典型的key/value系统;
HBase是Apache Hadoop生态系统中的重要一员,主要用于海量结构化数据存储;
从逻辑上讲,HBase将数据按照表、行和列进行存储。
与hadoop一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加计算和存储能力。
Hbase表的特点
大:一个表可以有数十亿行,上百万列;
无模式:每行都有一个可排序的主键和任意多的列,列可以根据需要动态的增加,同一张表中不同的行可以有截然不同的列;
面向列:面向列(族)的存储和 ...