压缩格式:默认压缩格式是NONE。可选值有GZ、LZO、SNAPPY。

  版本数:HBase默认定义为3个版本。

  以秒为单位的存活时间TTL:使用对象是行中的列簇,一旦达到过期时间,HBase会删除这些行。

  快大小:HBase默认的块大小是64KB,不同于HDFS默认64MB的块大小。原因是HBase需要支持随机访问。一旦找到了行键所在的块,接下来就会定位对应的单元格。使用64KB大小的块扫描速度显然优于64MB大小的块。

  内存模式:默认值是false。如果设置为true,HBase会尝试将整个列簇保存在内存中。只有在需要保存时才会持久化写入磁盘。但是在运行时HBase会尝试将整张表加载到内存里。

  块缓存:默认值是true。块缓存是内存存储,HBase使用块缓存将最近使用的块加载到内存中。块缓存会根据“最近没有使用”(LRU)的规则删除块数据。  

  布隆过滤:布隆过滤是一种空间高效的概率数据结构,它能检测元素(行键,或行键与列标识的结合)“确定不”存在于表中,或元素“可能”存在于表中。默认值是NONE。可以设置为ROW,表示使用行键级的布隆过滤,也可以设置为ROWCOL,表示使用行键与列标识级别的布隆过滤。

(1)一般不建议设计多个列族

  具体原因如下,假如HBase表的表设置两个两个列族,若已一个列族1000万行,另一个列族100行。当一个要求region分裂时候,会导致100行的列会同样分布到多个region中。这样就出现基数问题,会导致扫描列族A的性能低下。某个列族在flush的时候,它邻近的列族也会因关联效应出发flush,最终导致系统产生更多的I/O。

(2)数据块缓存配置

  如果经常顺序访问或者很少访问,可以关闭列族的缓存,让BLOCKCACHE 参数设置false,列族缓存默认打开。

(3)激进缓存配置

  可以选择一个列族赋予更高的缓存,该参数IN_MEMORY 设置true。列族默认的关闭的。

(4)布隆过滤器(BLOOMFILTER)设置

  减少硬盘读取数据带来的开销。对存储的数据块做反向测试,占用额外的空间。

(5)生产时间配置

  超过这个时间设置的就会在下一次大合并中被删除。TTL =>"18000"

(6)列族压缩

  压缩可以节省空间,读写数据会增加CPU的使用率 LZO,SNAPPY,GZIP

(7)单元时间版本

  默认为1个版本,可以通过指定多个版本,来保存历史数据

Hadoop HBase概念学习系列之HBase表的一些设置(强烈推荐好好领悟)(十三)的更多相关文章

  1. Hadoop HBase概念学习系列之HBase里的高表设计概念(表设计)(二十八)

    在下面这篇博文里,我给各位博客们,分享了创建HBase表,但这远不止打好基础. HBase编程 API入门系列之create(管理端而言)(8) 在关系型数据库里,表的高表和宽表是不存在的.在如HBa ...

  2. Hadoop HBase概念学习系列之HBase里的宽表设计概念(表设计)(二十七)

    在下面这篇博文里,我给各位博客们,分享了创建HBase表,但这远不止打好基础. HBase编程 API入门系列之create(管理端而言)(8) 在关系型数据库里,表的高表和宽表是不存在的.在如HBa ...

  3. Hadoop HBase概念学习系列之META表和ROOT表(六)

    在 HBase里的HRegion 里,谈过,HRegion是按照表名+开始/结束主键,即表名+主键范围来区分的.由于主键范围是连续的,所以一般用开始主键就可以表示相应的HRegion了. 不过,因为我 ...

  4. Hadoop HBase概念学习系列之HBase里的长表VS宽表VS窄表(十五)

    有时候啊,HBase表的设计方案通常,还会考虑如下一些因素,当然,这只是考虑范围里的部分呢. 更多的行还是更多的版本?后者使用了HBase自带的功能.但是需要在列簇中定义最大版本数,这样做可能有风险. ...

  5. Hadoop HBase概念学习系列之HBase里的客户端和HBase集群建立连接(详细)(十四)

    需要遵循以下步骤: 1.客户端和Zookeeper集群建立连接.在这之前客户端需要获得一些信息(可以从HBase配置文件中读取或是直接指定).客户端从Zookeeper集群中读取-ROOT-表的位置信 ...

  6. Hadoop HBase概念学习系列之HBase里的HRegion(五)

    首先,要区分,HRegion服务器包含两大部分:HLog部分和HRegion部分 HBase里的HRegion服务器  HBase里的HRegion 当表的大小超过设置值的时候,HBase会自动将表划 ...

  7. Hadoop HBase概念学习系列之HBase里的时间戳(二十六)

    HBase集群要求每个节点的时间必须同步.HBase对于节点的时间扭曲(time skew)容忍度很低(这和HDFS是不一样的). 这主要是因为HBase需要使用系统时间来产生时间戳.如果系统时间不同 ...

  8. Hadoop HBase概念学习系列之hbase shell中执行java方法(高手必备)(二十五)

    hbase shell中执行java方法(高手必备),务必掌握! 1. 2. 3. 4. 更多命令,见scan help.在实际工作中,多用这个!!! API参考: http://hbase.apac ...

  9. Hadoop HBase概念学习系列之HBase的Shell(步骤非常清晰)(二十四)

    这部分知识点,是必须要熟练玩转的! 见 5 hbase-shell + hbase的java api 的进入HBase Shell   强烈建议,先看我上面的这篇博文,是实实际际的步骤. 另外,附上一 ...

随机推荐

  1. golang基础--reflect反射

    反射的知识点比较晦涩,后期会对此知识点展开深入的分析及示例代码展示 反射可达大提高程序的灵活性,使得inferface{}有更大的发挥余地 反射使用TypeOf和ValueOf函数从接口中获取目标对象 ...

  2. 程序员为什么要写if else,为什么要和别人不一样

    程序员为什么要写if else,为什么要和别人不一样 前言 无聊,睡不着!本文只是随便写写而已!感叹一下程序员的生活! 刚看到一个八级程序员的分级,所以就写了这个随笔,分级如下:        第八级 ...

  3. Codeforces 960G. Bandit Blues

    Description 你需要构造一个长度为 \(n\) 的排列 , 使得一个数作为前缀最大值的次数为 \(A\) , 作为后缀最大值的次数为 \(B\) , 求满足要求的排列个数 . 题面 Solu ...

  4. springcloud-Feign基础使用

    声明式REST客户端:Feign Feign是一个声明式的Web服务客户端.它使得Web服务客户端的写入更加方便.具有可插拔注解支持,包括Feign注解和JAX-RS注解. Spring Cloud增 ...

  5. 【转】sql server日期比较

    1. 当前系统日期.时间select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值例如:向日期加上2天select dateadd(day ...

  6. 阿里云1核1GIIS都装不上

    没有启用虚拟内存启用之后就可以安装了 注意还要把自动更新服务关掉

  7. 转载:Remote Validation

    http://www.jb51.net/article/89474.htm 大多数的开发者,可能会遇到这样的情况:当我们在创建用户之前,有必要去检查是否数据库中已经存在相同名字的用户.换句话说就是,我 ...

  8. Java JDK 配置环境变量

    使用了java也有了两年了,安装了很多次jdk都记不住安装步骤 = =,刚刚又配置了一次,码一下步骤: 1.右击"此电脑" ---> "属性" ----& ...

  9. Storm框架:如何根据业务条件选择不同的bolt进行下发消息

    Strom框架基本概念就不提了,这里主要讲的是Stream自定义ID的消息流.默认spout.bolt都需实现接口方法declareOutputFields,代码如下: @Override publi ...

  10. lua模块化

    main.lua local main = require("my") main.greeting() my.lua local foo = {} local function g ...