- 浏览: 613292 次
- 性别:
- 来自: 大连
-
最新评论
-
fei33423:
同意你的说法. hbase 的强一致性分为两部分来说. 数据分 ...
浅谈Hbase 的强一致性 -
zengwenbo5566:
,高人,刚安装了 genymotion 那个附带 virtu ...
VirtualBox报错Unable to load R3 module GetLastError=1790 (VERR_UNRESOLVED_ERROR -
kabike:
QQ1289714862 写道这代码有问题吧 bar1 bar ...
AtomicBoolean运用 -
QQ1289714862:
这代码有问题吧 bar1 bar2 那来的 你是不是new了两 ...
AtomicBoolean运用 -
DEMONU:
需要依赖这么多东西啊
hbase 0.96和hadoop 2.2 java 客户端的jar依赖
文章列表
从一开始就知道hbase是CAP中的CP系统,即hbase是强一致性的.我原来一直以为hbase的强一致性是因为底层的HDFS写入时,必须所有副本都写入成功才能返回.最近才想明白,hbase之所以是CP系统,实际和底层HDFS无关,它是CP系统,是因为对每一个region同时只有一台region server为它服务,对一个region所有的操作请求,都由这一台region server来响应,自然是强一致性的.在这台region server fail的时候,它管理的region failover到其他region server时,需要根据WAL log来redo,这时候进行redo的regi ...
1 客户端
opentsdb的hbase客户端,使用了他们自己编写的异步非阻塞hbase客户端
据说比hbase自带的客户端性能好很多.
下面是一个评测结果
http://www.tsunanet.net/~tsuna/asynchbase/benchmark/viz.html
2 opentsdb的数据存储
2.1 hbase宽列存储
假设一般关系型数据库存储某指标ABX在2014年5月1日08时左右的如下数据
可以看出时间数据前缀有重复,在Hbase中可以通过提取共同前缀,达到减小存储空间,提高存储效率的目标.将上述时序数据在Hbase中以宽列形式存储,逻辑结构表示如下
...
hbase中有BloomFilter的功能,可以在有些情况下过滤掉不需要的hfile,节省IO.但是BloomFilter在什么情况下起作用呢?根据hbase文档,只有get操作才使用到BloomFilter
引用In terms of HBase, Bloom filters provide a lightweight in-memory structure to reduce the number of disk reads for a given Get operation (Bloom filters do not work with Scans) to only the StoreF ...
在infobright中查看知识网格的状态(Knowledge Grid statistics)
在brighthouse.ini中设置
引用ControlMessages = 2
就可以使用roughstats 和 roughattrstats查看知识网格的状态.具体参考
https://www.infobright.org/index.php/ICE_Wiki/wiki-4/Working-With-ICE/Knowledge-Grid-Statistics/
vim里蓝色的注释太难以看清楚了,在~/.vimrc里加入
hi Comment ctermfg=darkgrey
在win7上VirtualBox创建个虚拟机各种莫名其妙的错误.
呵呵呵,最后用了VirtualBox 4.2.12版本才好...
对VirtualBox很失望...鄙视VirtualBox的开发团队
执行load data infile报错
引用ERROR 29 (HY000): File '/tmp/data.txt' not found (Errcode: 13)
多次确认文件权限无误,把selinux关闭后解决
表连接在数据库中是很常见的操作,在分布式数据库中一般如何实现呢?
在分布式环境下,网络IO的速度远远小于CPU操作的速度,因此减小网络传输量能极大提高性能,可以采用半连接的方法
数据库的exists和in查询就是一种半连接,即在第二张表里找到可以连接的数据后,立即返回第一张表里的数据,在分布式环境下,同样可以采用这种方法.
比如server1上有分片T,在server2上有分片S(分片可以理解为表的分区),要做T和S在T.b和S.b的连接
T S
a b b c
1 2 ...
数据仓库一般侧重于OLAP型操作,区别于OLTP的"于乱军中取敌上将首级"的低延迟要求,OLAP更要求大数据的处理速度.因为OLTP侧重于对单个数据的处理,比如快速找到某条订单,而OLAP侧重于整体数据的把握,比如订单销量的地区分布.
Infobright是mysql的数据仓库解决方案,而hive是基于Hadoop的数据仓库平台,要探索数据仓库的时候,发现两者在存储上有很多共同之处,比如按列存储,数据块粗粒度索引.
按列存储,有利于减少硬盘IO.因为OLAP的操作,往往只涉及到部分的列.而且同一列的数据类型一致,可以有效的压缩..
数据块粗粒度索引,则更容易的判 ...
没事时思考了这样一个问题.
hbase这样的key value存储比mongodb为代表document存储有哪些优势呢?
比如在mongodb里的存储的文档(不清楚具体的存储方式)
key1:{attr1:bar,attr2:foo,attr3:barfoo}
存储在hbase中是
key1:attr1:bar
key1:attr2:foo
key1:attr3:barfoo
这样岂不是key1重复占用了存储空间么?
不过考虑需要执行update t set attr2=foofoo where key=key1
那么在mongodb里需要按key查询定位到document,定 ...
一直都以为hbase是列式数据库...结果这几天因为要做数据仓库,专门研究了下列式数据库,发现hbase根本不是列式数据库...列式数据库还是关系型数据库嘞...
在eclipse中建立的maven的web工程,发布到tomcat中时报错
引用Publishing failed
Could not publish to the server.
java.lang.IndexOutOfBoundsException
看了这篇文章,发现是maven的repository里有文件损坏了
/etc/hosts文件对hbase有很重要的作用
比如在hbase的master启动的时候,需要在zookeeper里注册自己的hostname,master取得hostname的方法是
String hostname = Strings.domainNamePointerToHostName(DNS.getDefaultHost(
conf.get("hbase.master.dns.interface", "default"),
conf.get("hbase.master.dns.nameserver&quo ...
用ssh-keygen -t rsa和ssh-copy-id -i nameB@machineB 命令来建立ssh无密码登录最方便了
http://roclinux.cn/?p=2551
简单来说,用ssh-keygen为一台主机生成key,用ssh-copy-id将key复制到其他主机,特别方便!!!!
一般来说,对数据库建立索引,往往需要单独的数据结构来存储索引的数据.在为hbase建立索引时,可以另外建立一张索引表,查询时先查询索引表,然后用查询结果查询数据表.
这个图左边表示索引表,右边是数据表.
但是对于hbase这种分布式的数据库来说,最大的问题是解决索引表和数据表的本地性问题,hbase很容易就因为负载均衡,表split等原因把索引表和数据表的数据分布到不同的region server上,比如下图中,数据表和索引表就出现在了不同的region server上
所以为了解决这个问题,ihbase项目应运而生,它的主要思想是在region级别建立索引而不是在表级别.
它的 ...