hadoop1的生态圈
HBASE是hadoop database,HBase利用hadoop HDFS作为其文件存储系统,利用mapreduce来处理HBase中的海量数据,利用zookeeper作为协调工具
特点:面相“列” 【以往的数据库都是面相表的】
优点:可在廉价PC Server上搭建起大规模结构化存储集群。
概念:
主键(Row Key)【其实是行键】 用来检索记录的主键,访问hbase table的行,有三种方式
1.通过单个row key访问
2.通过row key的range
3.全表扫描
检索数据最快的方式:行键 (因为它有索引)
列族(column family)【关系型数据库里没有这个】 列族在创建表的时候声明(倘若表已经创建好,使用alter可以创建一个列族),可以包含多个列,【可以动态指定】,列中的数据都是以2进制形式存储的(由于是二进制存储的,所以它没有数据类型)
时间戳:timestamp 每个方块用来存储数据,成为cell,每个cell保存着同一份数据的多个版本,版本通过时间戳来索引
理论已经讲完,现在开始示范安装hbase。
【在学习一门新技术的时候,先上网查一下hbase是什么东西】
新浪微博正在往HBase上靠
hbase单节点的,可以在Linux下玩【储存在HDFS】,也可以在Windows下玩【因为可以保存在本地文件系统】,
解压,简单地配置一下,然后运行
对于MySQL,以前,刚开始玩的时候,用命令行的方式来用操作MySQL,以后,公司做一些项目的时候,通过操作Java接口的方式来操作MySQL。
tar -zxvf hbase. -C /itcast/ 解压到itcast目录下
目录结构:bin,放了可执行的命令,doc放的脚本,conf配置文件,lib一些包,
现在我要搭建一个“单节点”的hbase,因此我现在要修改一下配置文件
cd到conf,vim hbase-env.sh,在这里需要把javahome导进来
找不到javahome在哪里,怎么办? 用echo $JAVA_HOME 就能得到地址
接下来,配置自己定义的一些配置 vim hbase-site.xml
这里需要自己写一个property。然后保存并退出
到现在,我们hbase的单节点已经搭建好了,接下来,进入bin目录,把hbase启动起来,
调用里面的start hbase脚本
./start-hbase.sh
启动了之后,输入jps可以看到HMaster这个进程
启动了HBase之后,便可以用命令行来操作hdfs脚本了,就像MySQL的黑窗口来操作MySQL
【现在我们也用黑窗口】
./hbase
回车之后,给了许多提示,告诉你,hbase后面加许多选项,
./hbase shell
之后就形成了光标为hbase(main)这种
接下来学习hbase如何建表,插入和删除