赞
踩
HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩、实时读写的分布式数据库。
本课程采用的版本是1.4.10,目前HBase社区推荐的最新稳定版本
参考: HBase.ppt
参考: HBase.ppt
Compaction是从一个Region的一个Store中选取部分HFile文件进行合并。
默认情况下,每个Table只有一个Region。随着数据的不断写入,Region会自动进行拆分,拆分后的Region会被分配到其他RegionServer上,实现HBase的负载均衡。
create 'ns1:tb1',{NAME => 'f1'},{NAME => 'f2'},SPLITS => ['01','02','03']
HBase也有一种机制可以将列当作计数器。否则,如果用户需要对一行数据加锁,然后读取数据,再对当前数据做加法,最后写回 HBase并释放该行锁,从而其他写程序可以访问该行数据。这样做会引起大量的资源竞争问题,尤其是当客户端进程崩溃之后,尚未释放的锁需要等待超时恢复——这会在一个高负载的系统中引起灾难性的后果。
计数器是面向列的操作,即每次对特定计数器的操作只会锁住一列而不是一行,然后读取数据,再对当前数据做加法操作,最后再写入HBase中并释放该列的锁,在操作的过程中用户是可以访问这一行的其他数据的
解决SQL中:update student set age = age + 1 where id = 1;
- # 建立快照:
- snapshot 'tableName', 'snapshotName'
-
- # 列出快照:
- list_snapshots
-
- # 删除快照
- delete_snapshot 'snapshotName'
-
- # 从快照复制生成一个新表
- clone_snapshot 'snapshotName', 'newTableName'
-
- # 用快照恢复数据,它需要先禁用表,再进行恢复
- disable 'tableName'
- restore_snapshot 'snapshotName'
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。