Hbase快速开始——shell操作

一. 介绍

HBase是一个分布式的、面向列的开源数据库,源于google的一篇论文《bigtable:一个结构化数据的分布式存储系统》。HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服务。 

HBase以表的形式存储数据。表有行和列组成。列划分为若干个列族/列簇(column family)。

     

如上图所示,key1, key2, key3是三条记录的唯一的row key值,column-family1, column-family2, column-family3是三个列族,每个列族下又包括几列。比如 column-family1这个列族下包括两列,名字是column1和column2。t1:abc,t2:gdxdf是由row key1和column-family1-column1唯一确定的一个单元cell。这个cell中有两个数据,abc和gdxdf。两个值的时间戳不一样,分别是t1,t2, hbase会返回最新时间的值给请求者。

二. 安装

下载HBase最新版本,放到合适的目录,比如/usr/local 或 /opt

之后解压

tar -zxvf hbase-x.y.z tar.gz

三. 命令行操作

进入解压后的目录,开启hbase,启动hbase shell

bin/start-hbase.sh
bin/hbase shell

输入 help  可以看到命令分组

部分命令清单

下边分组举例

general操作

查询服务器状态   status

查询hbase版本   version

ddl操作

1. 创建一个表

create ‘table1‘, ‘tab1_id‘, ‘tab1_add‘, ‘tab1_info‘

2. 列出所有的表

list

3. 获得表的描述

describe "table1"

4. 删除一个列族  disable alter enable

disable ‘table1‘
alter ‘table1‘, {NAME=>‘tab1_add‘, METHOD=>‘delete‘}
enable ‘table1‘

5. 查看表是否存在

exists ‘table2‘

6. 判断表是否为‘enable’

is_enabled ‘table1‘

判断表是否为‘disable’

is_disabled ‘table1‘

7. 删除一个表

disable ‘table1‘
drop ‘table1‘

 

dml操作

1. 插入几条记录

put ‘member‘, ‘scutshuxue‘, ‘info:age‘, ‘24‘
put ‘member‘, ‘scutshuxue‘, ‘info:birthday‘, ‘1987-06-17‘
put ‘member‘, ‘scutshuxue‘, ‘info:company‘, ‘alibaba‘
put ‘member‘, ‘scutshuxue‘, ‘address:contry‘, ‘china‘
put ‘member‘, ‘scutshuxue‘, ‘address:province‘, ‘zhejiang‘
put ‘member‘, ‘scutshuxue‘, ‘address:city‘, ‘hangzhou‘

2. 全表扫描  scan

3. 获得数据 get

3.1 获得一行的所有数据

3.2 获得某行,某列族的所有数据

3.3 获得某行,某列族,某列的所有数据

4. 更新一条记录  put(把scutshuxue年龄改为99)

put ‘member‘, ‘scutshuxue‘, ‘info:age‘, 99

5. 删除 delete、 deleteall

5.1 (删除行‘scutshuxue‘, 列族为‘info‘ 中age的值

delete ‘member‘, ‘scutshuxue‘, ‘info:age‘

5.2 删除整行

deleteall ‘member‘, ‘scutshuxue‘

6. 查询表中有多少行

count ‘member‘

7. 给‘xiaoming’这个id增加‘info:age‘字段,并使用counter实现递增

incr ‘member‘,  ‘xiaoming‘, ‘info:age‘   

8. 将整个表清空

truncate ‘member‘

tools操作

1. 创建一个表

四. 参考

http://smallwildpig.iteye.com/blog/1705718

Hbase快速开始——shell操作,布布扣,bubuko.com

时间: 2024-10-11 12:32:36

Hbase快速开始——shell操作的相关文章

hbase之python利用thrift操作hbase数据和shell操作

前沿: 以前都是用mongodb的,但是量大了,mongodb显得不那么靠谱,改成hbase撑起一个量级. HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型.它存储的是松散型数据. HBase提供了丰富的访问接口. HBase Shell Java clietn API Jython.Groovy DSL.Scala REST Thrift(Ruby.Pyt

HBase(三)HBase集群Shell操作

一.进入HBase命令行 在你安装的随意台服务器节点上,执行命令:hbase shell,会进入到你的 hbase shell 客 户端 [[email protected] ~]$ hbase shell SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/opt/module/hbase-1.2.6/lib/slf4j-log4j12-1.7.5.jar!/org/slf

Hbase数据结构和shell操作

Hbase的数据结构 基本要素:命名空间.表.行.列.单元格,region,时间戳. 1.命名空间:NameSpaces的作用 Table:表,所有的表都是命名空间的成员,即表必属于某个命名空间,如果没有指定,则在default默认的命名空间中. RegionServer group:一个命名空间包含了默认的RegionServer Group. Permission:权限,命名空间能够定义访问控制列表ACL(Access Control List).例如,创建表,读取表,删除,更新等等操作.

HBase的SHELL操作和API

1.表结构: 2.SHELL操作 命令:hbase shell 显示表:list 创建表:create 'tb_name','column_family_1','column_family_2',...; 或者 create 'user', {NAME => 'column_family_1', VERSIONS => '3'} 插入数据:put 'tb_name','rk_on','column_family : key','value' 获取数据: 获取所有数据:get 'tb_name'

HBASE之shell操作和Java访问

对数据库HBASE的操作有shell端和java API两种方式. 在此之前要先说一下HBASE的结构及其数据存储结构: HBASE是基于HDFS的,是一种NoSQL的数据库.它的数据模型如下所示: Row Key Timestamp Column Family URI Parser r1 t3 url=http://www.taobao.com title=天天特价 t2 host=taobao.com   t1     r2 t5 url=http://www.alibaba.com con

hbase shell操作语句

2019/2/19 星期二 hbase shell操作语句基本shell 命令 进入hbase 命令行./hbase shell显示hbase 中的表list创建user 表,包含info.data 两个列族create 'user', 'info1', 'data1'create 'user', {NAME => 'info', VERSIONS => '3'}向user 表中插入信息,row key 为rk0001,列族info 中添加name 列标示符,值为zhangsanput 'us

HBase ——Shell操作

HBase ——Shell操作 Q:你觉得HBase是什么? A:一种结构化的分布式数据存储系统,它基于列来存储数据. 基于HBase,可以实现以廉价PC机器集群存储海量数据的分布式数据库的解决方案. 一般用于数据量巨大但查询简单的场景,典型场景包括:账单记录,订单流水,交易记录,数据库的历史记录 建立表 HBase中没有数据库的概念,但是存在命名空间的概念,在使用上类似库名,但实际上只是一个目录名. 另外要记住,HBase中大部分数据都是以HashMap的形式组织的,因此很多时候都能看到类似

使用Hive或Impala执行SQL语句,对存储在HBase中的数据操作

使用Hive或Impala执行SQL语句,对存储在HBase中的数据操作 Hive Impala HBase HiveQL 大数据 使用Hive或Impala执行SQL语句,对存储在HBase中的数据操作 〇.摘要 一.基础环境 二.数据存储在HBase中,使用Hive执行SQL语句 Ⅰ.创建Hive外部表 Ⅱ.从HBase读 Ⅲ.向HBase写 三.数据存储在HBase中,使用Impala执行SQL语句 Ⅰ.从HBase读 Ⅱ.向HBase写 四.综上所述 〇.摘要 Hive是基于Hadoop

shell操作典型案例--FTP操作

从FTP服务器上下载文件或上传文件到FTP服务器是生产环境中比较常见的场景之一. shell操作FTP的方式整理如下: 思路一:使用shell调用ftp等客户端 使用FTP方式,通过shell调用ftp等客户端,从而完成FTP文件的上传.下载等操作. 方式一:ftp方式 一个基本的ftp工具,需安装ftp(yum -y install ftp,后同).一个样例如下: ########################################################### ##函数功