
HBase
文章平均质量分 83
mango_song
专注大数据处理技术
展开
-
[HBase]ERROR: Region is not online
重启HBase后,进入hbase shell 进行 scan 、get 、create等操作均报错:scan 'table1'ERROR: org.apache.hadoop.hbase.NotServingRegionException: org.apache.hadoop.hbase.NotServingRegionException: Region is not online: .原创 2013-01-24 11:30:22 · 7560 阅读 · 0 评论 -
[HBase] 停止集群报错,pid不存在
停止HBase集群时报错如下:stopping hbasecat: /tmp/hbase-mango-master.pid: No such file or directory原因是,默认情况下pid文件保存在/tmp目录下,/tmp目录下的文件很容易丢失,解决办法:在hbase-env.sh中修改pid文件的存放路径# The directory where原创 2013-04-22 09:33:39 · 5122 阅读 · 1 评论 -
[HBase] Hbase Filter
本文是笔者学习过程中的简单笔记,日后会逐渐增加内容,主要参考资料是《Hbase The Definitive Guide》。Comparison Filters 比较过滤器这一类Filter派生于CompareFilter ,其构造函数如下:CompareFilter(CompareOp,WritableByteArrayComparable valueComparato原创 2013-01-18 18:43:59 · 4819 阅读 · 1 评论 -
[HBase] HBase client-side buffer 客户端缓存
HBase Client 通过table.put(Put put)方法向Server端写数据,默认情况下,每次调用table.put()方法 ,就会触发一次RPC将数据提交到Server端在批量写数据的情况下,过多的时间都浪费在RPC上了。HBase Table 类提供了一个setAutoFlush(boolean) 方法,能够控制是否开启client side buffer(客户端缓存,原创 2013-01-17 22:51:26 · 4082 阅读 · 0 评论 -
HBase写数据过程
hbase写数据过程博客分类: hbasehbase大数据写数据过程compactsplit 博文说明:1、研究版本hbase0.94.12;2、贴出的源代码可能会有删减,只保留关键的代码 从client和server两个方面探讨hbase的写数据过程。一、client端 1、写数据API 写数据主要是HTable的单条写和批量写两个A转载 2014-08-27 20:35:15 · 887 阅读 · 0 评论 -
对HBase bloom Filter的一些讨论
在工作中大家对hbase的bloom filter是否能作用于scan展开讨论。在没讨论前,我还真没想过这个问题,想当然的以为bloom filter肯定可以为scan剔除掉不需要的hfile。但Google了下才发现事实不是如此!首先,学习了以下2篇文章:hbase对bf的理解和使用http://zjushch.iteye.com/blog/1530143转载 2014-12-02 02:21:55 · 1670 阅读 · 0 评论 -
深入理解HBase Memstore
MemStore是HBase非常重要的组成部分,深入理解MemStore的运行机制、工作原理、相关配置,对HBase集群管理以及性能调优有非常重要的帮助。HBase Memstore首先通过简单介绍HBase的读写过程来理解一下MemStore到底是什么,在何处发挥作用,如何使用到以及为什么要用MemStore。图一:Memstore Usage in HBase转载 2014-12-02 01:54:02 · 838 阅读 · 0 评论 -
HBase中MVCC的实现机制及应用情况
本文转载自:http://www.cnblogs.com/panfeng412/p/mvcc-implementation-mechanism-in-hbase.htmlMVCC(Multi-Version Concurrent Control),即多版本并发控制协议,广泛使用于数据库系统。本文将介绍HBase中对于MVCC的实现及应用情况。MVCC基本原理在介绍MVCC概念之转载 2015-01-07 09:45:51 · 899 阅读 · 0 评论 -
HBase内存结构之跳表数据结构浅析
最近学习HBase源码时发现HRegion在sotre管理上用到了跳表数据结构ConcurrentSkipListMap:ConcurrentSkipListMap有几个ConcurrentHashMap不能比拟优点:1、ConcurrentSkipListMap的key是有序的。2、ConcurrentSkipListMap支持更高的并发。原创 2015-01-07 12:46:47 · 3374 阅读 · 1 评论 -
HBase源码解析(二) HMaster主要类成员解析
本文基于HBase-0.94.1分析HMaster的主要类成员.HMaster是HBase主/从集群架构中的中央节点。通常一个HBase集群存在多个HMaster节点,其中一个为Active Master,其余为Backup Master.HMaster的主要类成员如下:1.ZooKeeper侦听这些类都继承自ZookeeperListener. /**************原创 2014-12-08 17:52:11 · 2212 阅读 · 0 评论 -
HBase源码解析(一) HMaster启动流程
本文基于HBase-0.94.1分析HMaster的启动流程。通常,我们是通过命令行启动HMaster:1.HMaster命令行启动概述 HMaster的启动流程可以概括为: 将用户所要执行的"hbase-daemon.sh start master" 操作封装成一个HMasterCommandLine对象(一个tool实例),交给org.apache.hadoop.util.To原创 2014-12-08 11:25:46 · 3136 阅读 · 2 评论 -
HBase StoreFile Compaction
Store File的合并策略比较复杂,涉及多个参数,合并策略的好坏,直接影响HBase的读写性能. 发现这篇博文:http://blog.youkuaiyun.com/azhao_dn/article/details/8867036 对Compaction描述的言简意赅:hbase为了防止小文件(被刷到磁盘的menstore)过多,以保证保证查询效率,hbase需要在必要的时候将这些小的stor原创 2015-01-26 13:55:29 · 1291 阅读 · 1 评论 -
hbase表操作优化
Hbase表写入1、使用批量加载工具,具体看链接: Section 9.8, “Bulk Loading”。2、巨量数据插入空表或小表的时候,需要注意hbase的分表原理。只有当一个region的数据打过阈值的时候才会进行分表操作。这意味着你巨量数据将会同时写入同一个region直到表大到需要分割。比较好的做法是创建表的时候预先创建多个空的region。但是不要太多,太多同样会转载 2013-03-26 13:42:28 · 1171 阅读 · 0 评论 -
MapReduce处理HBase中的数据
MapReduce 中如何处理HBase中的数据?如何读取HBase数据给Map?如何将结果存储到HBase中?MapReduce 中如何处理HBase中的数据?如何读取HBase数据给Map?如何将结果存储到HBase中?Mapper类:包括一个内部类(Context)和四个方法(setup,map,cleanup,run); setup,cle转载 2013-03-26 13:29:38 · 1424 阅读 · 0 评论 -
[HBase] 从零开始部署HBase集群
Hbase集群配置信息如下:Hadoop:hadoop-0.20.2,1 个Master节点(兼做Slave节点)3个Slave节点Zookeeper:zookeeper-3.3.2 3个Zookeeper节点Hbase:hbase-0.90.3 一个HMasterServer节点(兼做HRegionServer),3个HRegionServer节点 OS : ubuntu11.04机器环境(3原创 2012-12-18 14:53:14 · 1182 阅读 · 0 评论 -
[HBase] HBase体系结构
HBase简介HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行M转载 2012-12-18 14:50:28 · 517 阅读 · 0 评论 -
[HBase] HBase性能优化方法总结
本文主要是从HBase应用程序设计与开发的角度,总结几种常用的性能优化方法。有关HBase系统配置级别的优化,这里涉及的不多,这部分可以参考:淘宝Ken Wu同学的博客。 原文出自量子恒道官方博客:http://blog.linezing.com/2012/03/hbase-performance-optimization1. 表的设计1.1 Pre-Creating Re转载 2013-01-18 00:39:22 · 887 阅读 · 0 评论 -
HTablePool的实现分析
1)基本概念HTablePool3种类型PoolType.Reusable(默认)一个实例池,多线程复用,内部是每个table一个ConcurrentLinkedQueue装多个实例PoolType.ThreadLocal,很奇怪的实现,每个线程只能有一个实例,感觉在多线程的场景没有意义PoolType.RoundRobin(没有被使用,就算设置了该类型也转载 2013-01-27 18:51:55 · 761 阅读 · 0 评论 -
[HBase] Hbase Coprocessors
本文是笔者学习过程中的简单笔记,日后会逐渐增加内容,主要参考资料是《Hbase The Definitive Guide》。我们可以通过Filter来减少从Server到Client在网络上传输的数据总量,以提升效率。通过HBase的Coprocessor特性,我们甚至可以将计算(computation)移动到数据所在的节点。Introduction to Coprocessors原创 2013-01-25 14:00:31 · 3206 阅读 · 0 评论 -
[HBase] bulk-load装载hdfs数据到hbase小结
bulk-load的作用是用mapreduce的方式将hdfs上的文件装载到hbase中,对于海量数据装载入hbase非常有用,参考http://hbase.apache.org/docs/r0.89.20100621/bulk-loads.html: hbase提供了现成的程序将hdfs上的文件导入hbase,即bulk-load方式。它包括两个步骤(也可以一次完成): 1 将文件包转载 2013-03-31 18:17:54 · 2022 阅读 · 0 评论 -
hbase性能优化方法总结:配置优化
配置优化zookeeper.session.timeout默认值:3分钟(180000ms)说明:RegionServer与Zookeeper间的连接超时时间。当超时时间到后,ReigonServer会被Zookeeper从RS集群清单中移除,HMaster收到移除通知后,会对这台server负责的regions重新balance,让其他存活的RegionServer接管.调优转载 2013-04-01 10:18:42 · 2908 阅读 · 3 评论 -
hbase预建分区表,修改压缩方式
hbase创建region,按照rowkey的划分来建:create 'BT_NET_LOG_000','cf',{ SPLITS_FILE => 'splits.txt' }create 'BT_NET_LOG_001','cf',{ SPLITS_FILE => 'splits.txt' }create 'BT_NET_LOG_002','cf',{ SPLITS_FI转载 2013-04-01 10:10:21 · 2804 阅读 · 0 评论 -
HBase连接池 -- HTablePool被Deprecated以及可能原因是什么
说明:最近两天在调研HBase的连接池,有了一些收获,特此记录下来。本文先将官方文档(http://hbase.apache.org/book.html)9.3.1.1节翻译,方便大家阅读,然后查阅了关键类HConnectionManager的Developer API(http://hbase.apache.org/devapidocs/index.html) 做了一些总结。转载 2016-04-22 11:10:31 · 1937 阅读 · 0 评论