创建HBASE数据库时候不得不注意的几处设置

标签: hbase 数据库 注意 | 发表时间:2014-12-29 09:47 | 作者:尘事随缘
出处:http://www.iteye.com
系统相关属性设置:
HTableDescriptor tableDesc = new HTableDescriptor("test");
//日志flush的时候是同步写,还是异步写
tableDesc.setDurability(Durability.SYNC_WAL);
//MemStore大小 tableDesc.setMemStoreFlushSize(256*1024*1024);
HColumnDescriptor colDesc = new HColumnDescriptor("f");
//块缓存,保存着每个HFile数据块的startKey colDesc.setBlockCacheEnabled(true);
//块的大小,默认值是65536 //加载到内存当中的数据块越小,随机查找性能更好,越大,连续读性能更好
colDesc.setBlocksize(64*1024);
//bloom过滤器,有ROW和ROWCOL,ROWCOL除了过滤ROW还要过滤列族 colDesc.setBloomFilterType(BloomType.ROW);
//写的时候缓存bloom
colDesc.setCacheBloomsOnWrite(true);
//写的时候缓存索引
colDesc.setCacheIndexesOnWrite(true);      
//存储的时候使用压缩算法    
colDesc.setCompressionType(Algorithm.SNAPPY);
//进行compaction的时候使用压缩算法 colDesc.setCompactionCompressionType(Algorithm.SNAPPY);
//压缩内存和存储的数据,区别于Snappy colDesc.setDataBlockEncoding(DataBlockEncoding.PREFIX);
//写入硬盘的时候是否进行编码
colDesc.setEncodeOnDisk(true);
//关闭的时候,是否剔除缓存的块
colDesc.setEvictBlocksOnClose(true);
//是否保存那些已经删除掉的
kv colDesc.setKeepDeletedCells(false);
//让数据块缓存在LRU缓存里面有更高的优先级
colDesc.setInMemory(true);
//最大最小版本 colDesc.setMaxVersions(3);
colDesc.setMinVersions(1);
//集群间复制的时候,如果被设置成REPLICATION_SCOPE_LOCAL就不能被复制了 colDesc.setScope(HConstants.REPLICATION_SCOPE_GLOBAL);
//生存时间 colDesc.setTimeToLive(18000);
tableDesc.addFamily(colDesc);


已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [hbase 数据库 注意] 推荐:

创建HBASE数据库时候不得不注意的几处设置

- - 互联网 - ITeye博客
系统相关属性设置:. //日志flush的时候是同步写,还是异步写. //MemStore大小 tableDesc.setMemStoreFlushSize(256*1024*1024);. //块缓存,保存着每个HFile数据块的startKey colDesc.setBlockCacheEnabled(true);.

HBase – 基于Hadoop的分布式数据库

- - ITeye博客
  修改:dataDir=/home/ysc/zookeeper. mkdir /home/ysc/zookeeper(注:dataDir是zookeeper的数据目录,需要手动创建). hbase存在系统时间同步的问题,并且误差要再30s以内. HBase是数据库,会在同一时间使用很多的文件句柄,大多数linux系统使用的默认值1024是不能满足的,还需要修改 hbase 用户的nproc,在压力很大的情况下,如果过低会造成 OutOfMemoryError异常.

非关系性分布式数据库:HBase

- - 标点符
HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”. 就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力.

Apache HBase v1.0 发布,分布式数据库

- - 开源中国社区最新新闻
Apache HBase v1.0 发布了,这是 HBase 一个主要的里程碑. 1.0 版本经过 7 年的开发,有超过 1500 次的更改和升级. 与上一个版本 0.98.0 比较,1.0 版本值得关注的改进有:. 性能提升,同时保持之前的稳定性. 全新 API 以及重新组织客户端 API. 新的可用性保证 —— 用时间表一致地区副本读取可用性.

数据库设计注意事项

- - CSDN博客推荐文章
           数据库设计包括:库的设计,表的设计,字段的设计,主键和外键的设计,索引设计,约束设计. 1、数据库名称要明确,可以加前缀或后缀的方式,使其看起来有业务含义,比如数据库名称可以为Business_DB(业务数据库). 2、在一个企业中,如果依赖很多产品,但是每个产品都使用同一套用户,那么应该将用户单独构建一个库,叫做企业用户中心.

MyCat 数据库实践注意事项

- - 掘金后端
最近两周研究了一下 MyCat ,下载了一份官方的实践指南,搜了几篇部署介绍,启动了三个虚拟机节点,然后就开始了验证过程. 毕竟不是专业 DBA,我的首要目标是弄清楚如何部署,产品从普通 MySQL 数据库迁移到 MyCat 需要注意的事项. 抓主要矛盾,了解关键技术点,解决关键疑惑,有一本书叫《关键20小时,快速学会任何技能》,跟它的核心思想类似.

关系型数据库到HBase的数据储存方式变迁

- - yiihsia[互联网后端技术]_yiihsia[互联网后端技术]
我是标题党,其实本文与hbase关系不大,只是把它作为列族数据库的代表来讲. 从目前字眼上看,HBase比Bigtable无疑更具吸引力. 题目改成:RDBMS到列族的数据储存方式变迁 更恰当. 如今Bigtable型(列族)数据库应用越来越广,功能也很强大. 但是很多人还是把它当做关系型数据库在使用,用原来关系型数据库的思维建表、存储、查询.

关系型数据库与HBase的数据储存方式区别

- - CSDN博客云计算推荐文章
       如今Bigtable型(列族)数据库应用越来越广,功能也很强大. 但是很多人还是把它当做关系型数据库在使用,用原来关系型数据库的思维建表、存储、查询. 本文以hbase举例讲述数据模式的变化. 传统关系型数据库(mysql,oracle)数据存储方式主要如下:.        上图是个很典型的数据储存方式,我把每条记录分成3部分: 主键、记录属性、索引字段.

NOSQL数据库大比拼:Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase

- - 博客园_Ruby's Louvre
话说,尽管 SQL 数据库一直是我们IT行业中最有用的工具,然而,它们这样在行业中超过15年以上的“转正”终于就要寿终正寝了. 现在,虽然关系型数据库仍然无所不在,但它越来越不能满足我们的需要了. 但是,各种 "NoSQL" 数据库之间的差异比当年众多关系型数据库之间的差异要大许多. 这就加大了人们在建设自己的应用是选择合适的数据库的难度.