Hbase学习

来源:互联网 发布:还原数据库一致性dbcc 编辑:程序博客网 时间:2024/04/29 07:19

       最近看hadoop相关的东西,想知道hbase和hive的区别,他的使用和传统数据库有什么区别。

 任何学习的开始都是操作,已经安装过hadoop ,当安装hbase时看了这篇文章http://blog.csdn.net/wuwenxiang91322/article/details/44684655

发现的安装zookeeper,(,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。)

  瞬间想放弃,看见一份http://blog.csdn.net/lifuxiangcaohui/article/details/39894265整理, 先不管zookeeper,搭建个单机版本的吧。

 搭建见:http://blog.csdn.net/lifuxiangcaohui/article/details/39860589

启动 :进入bin下:hbase shell

      就可以以命令的形式操作hbase了

Hbase的优缺点 
         1
列的可以动态增加,并且列为空就不存储数据,节省存储空间.
         2 Hbase
自动切分数据,使得数据存储自动具有水平scalability.
         3 Hbase
可以提供高并发读写操作的支持
Hbase
的缺点:
        1
不能支持条件查询,只支持按照Row key来查询.

        2 暂时不能支持Master server的故障切换,Master宕机后,整个存储系统就会挂掉.

谈到缺点:突然想了解下存储形式,查了下命令

查看下里面的表


创建下表,再查列表


添加字段




会发现,不用定义表结构,根据添加的字段自动形成表,将上面的转换成


Id

User_name

User_passwd

1

zhangxi

123


删除表的字段也可以

删除整个表:


传统数据库行有多少列是固定的,为null的列浪费了存储空间。而如上文提到的,HBase为null的Column不会被存储,这样既节省了空间又提高了读性能。

查看记录:get

   

修改:

只要重新写,就会覆盖

删除表:

1: disable '表名称'   2:  drop '表名称'



清空表  truncate 'user'


参考文档:http://www.cnblogs.com/nexiyi/p/hbase_shell.html



0 0