#打开hbase shell hbase shell
#创建表(由简单到复杂) create "表名","列族名","列族名" 或 create "表名",{NAME=>'列族名1'},{NAME=>'列族名2'} 或 create "表名",{NAME => '列族名',versions => 版本号,TTL => 过期时间,BLOCKCACHE => ture, }
#修改表 alter '表名','列名' #添加列 alter '表名',{NAME => '列族名' , METHOD => 'delete'} #删除列 alter '表名', NAME => '列族名' , VERSION => 修改的版本号 ?#修改列属性
#获取表描述 descirbe '表名' #查看表是否存在 exisis '表名' #启用和禁用 enable '表名' ?or ?disable '表名'
#删除表(先禁用表再删) disable '表名' drop '表名'
#给表赋值变量,方便使用函数调用 t1 = get_table '表名' #获取rowKey所在的区 locate_region '表名', '行键'
#插入或修改数据 put '表名', '行键', '列族名', '列值' 或 put '表名', '行键', '列族名:列名', '列值'
#扫描表 scan '表名' 或 扫描整个列簇 scan '表名', {COLUMN=>'列族名' } 或 扫描某个列 scan '表名',{COLUMN=> '列族名:列名'}
#获取数据get get '表名', '行键' 或 get '表名', '行键', '列族名' ? #删除列族中的某一列 delete '表名','行键','列族名:列名' #删除某行数据 deleteall '表名', '行键' #清空整个表数据 truncate '表名'
#查询行数 count '表名' #查询同一个列族多个列 scan '表名', {COLUMNS => ['列族名1:列名1','列族名1:列名2']} #指定时间戳 sacn '表名', {TIMERANGE=>[timestamp1,timestamp2]}
#修改VERSION能修改列的储存值 #limit 限制返回的行数 scan '表名', {IMIT => 行数}
#发现 hbase 语法上基本都是 方法+'表名', '内容'(#列族名:列名等)
#hbase与mysql区别(自我总结) 1.数据库类型不一样,前者是分布式数据库,后者是传统关系型数据库 2.前者null不占用空间(稀疏性),后者占用空间 3.前者是列储存有列族,后者是行储存 4.前者运行速率快,后者运行速率慢 5.前者不能使用聚合函数(如 order by,group by),后者可以
对表操作 hbase? ? ? ? ? ? ? ? ?mysql? --------------------------------- create? ? ? ? ? ? ? ? ? create drop(先disable)? ? ?drop alter? ? ? ? ? ? ? ? ? ? ? ?alter --------------------------------- 对内容操作 --------------------------------- put? ? ? ? ? ? ? ? ? ? ? insert delete? ? ? ? ? ? ? ? ?delete scan? ? ? ? ? ? ? ? ? ?select
|