–HBase–HadoopDatabase,是一个高可靠性、高性能、面向列、可伸缩、实时读写的分布式数据库html
–利用HadoopHDFS做为其文件存储系统,利用HadoopMapReduce来处理HBase中的海量数据,利用Zookeeper做为其分布式协同服务java
–主要用来存储非结构化和半结构化的松散数据(列存NoSQL数据库) hbase是一种搭建在hadoop上的数据库。依靠hadoop来实现数据访问和数据可靠性。hbase是一种以低延迟为目标的在线系统,而hadoop是一种为吞吐量优化的离线系统。互补能够搭建水平扩展的数据应用。linux
http://mirror.bit.edu.cn/apache/hbase/2.1.0/shell
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html 解压到安装目录 centos 7不支持java 32位,要下载64位,不然报错 [root@bogon software]# tar -zxvf jdk-8u101-linux-x64.tar.gz -C /usr/local/java/数据库
安装完毕以后在/etc/profile文件末尾添加apache
[root@bogon software]# vim /etc/profile export JAVA_HOME=/usr/local/java/jdk1.8.0_101 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATHvim
使/etc/profile生效centos
[root@bogon jdk1.8.0_101]# source /etc/profileoracle
####配置 (2)设置环境变量分布式
另外,咱们须要设置一些环境变量。修改HBase下的conf目录中的hbase-env.sh文件(你的jdk路径可能不同):
export JAVA_HOME=/usr/local/jdk1.7.0_67
export HBASE_MANAGES_ZK=true ####启动
./start-hbase.sh
####进入命令行
./hbase shell
####中止
./stop-hbase.sh
create 'member','m_id','address','info'
####查看表描述 hbase(main):028:0> describe 'member'
####can浏览表中数据 scan 'member'
####删除表
用drop命令能够删除表。在删除一个表以前必须先将其禁用。
hbase(main):018:0> disable 'emp' 0 row(s) in 1.4580 seconds
hbase(main):019:0> drop 'emp' 0 row(s) in 0.3060 seconds
使用exists 命令验证表是否被删除。
hbase(main):020:0> exists 'emp' Table emp does not exist
0 row(s) in 0.0730 seconds
这个命令是用来在给出删除匹配“regex”表。它的语法以下:
hbase> drop_all ‘t.*’
create 't1', {NAME => 'f1', VERSIONS => 1}, {NAME => 'f2', VERSIONS => 1}, {NAME => 'f3', VERSIONS => 1} 定义表的时候只须要指定column family的名字,列名在put的时候动态指定 插入数据 下面插入没有指定column的名字 put 't1', 'r1', 'f1', 'v1' put 't1', 'r2', 'f2', 'v2' put 't1', 'r3', 'f3', 'v3'
下面插入指定column的名字 put 't1', 'r4', 'f1:c1', 'v1' put 't1', 'r5', 'f2:c2', 'v2' put 't1', 'r6', 'f3:c3', 'v3'
hbase(main):245:0> scan 't1' 删除 delete 'filter1','cat_id:1|sub_cat:12','brand_id:95' deleteall 'tableName','rowkey' —— 根据rowkey删除表。
清空表内数据 truncate 'FaceBase'【表名】
增长columns disable '表名' alter '代表', NAME => '列名', VERSIONS =>3 enable '表名'