HBase Hadoop一种计算框架 Hive就是基于HDFS的数据仓库架构,使用SQL可以计算HDFS上面的数据。 HBase的安装 约定:/opt/ 分布式的安装 1、解压&重命名&配置环境变量 略 2、配置: 修改hbase-env.sh export JAVA_HOME=/opt/jdk export HBASE_MANAGES_ZK=false 修改hbase-site.xml <property> <name>hbase.rootdir</name> <value>hdfs://ns1/hbase</value> <description>hbase数据在hdfs上面存储的目录</description> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> <description>hbase是否支持分布式存储计算</description> </property> <property> <name>hbase.zookeeper.quorum</name> <value>uplooking01:2181,uplooking02:2181,uplooking03:2181</value> </property> 修改regionservers(HBase从节点,主节点显示进程为HMaster,从节点显示进程为HRegionServer) uplooking02 uplooking03 验证: 1、启动: 在hmaster节点上面执行start-hbase.sh分别在 uplooking01启动HMaster进程,在uplooking02和uplooking03启动HRegionServer进程 注意:如果使用的是hbase自身的zk,还会启动一个HQuorumPeer进程 2、在web查看,在HBase对应master所在机器上面查看:http://<master-ip>:16010 注意:如果使用时1.0以下的版本,那么这个web的端口是6001 3、在shell终端 hbase shell HBase的体系结构 逻辑模型 命名空间 namespace,就是数据库,用来区分表的 表 table,和传统关系型数据库中标的概念一模一样 行键 rowkey,用于hbase中数据的唯一标识,其作用相当于rdbms中pk,所有的关于数据的操作都要基于rowkey。 rowkey是hbase中最重要的一个概念,rowkey可以是任意类型的字符串,因为在底层就会转化为字节数组byte[]。 而且这些字节数组可以转变为字节序,进而使得hbase数据有序,为高速查询提供一个遍历。 列族(columnFamily) cf为列的集合。由许多列组成的文件我们称之为列族文件。在创建表的时候,至少需要一个列族。 一个列族至少对应一个文件,换句话说,多个文件对应一个列族 列(Column Qualifier) 其实说白了就是rdbms中的列或者字段,注意,一个列只能依附于一个列族。 时间戳 在hbase中时间戳表示的是一条记录的版本,就可以理解为svn的版本号。可以存放多个版本的记录,默认3个版本。 单元格 由上述的列族 列 时间戳 等等构成一个唯一的记录。 物理模型 HBase的操作 SHELL操作 创建一张表stu name grad course math art Tom 5 97 87 Jim 4 89 80 > create 'stu', 'grad', 'course' 在hbase中进行表的删除的时候,首先要disable表,其次才能drop表 predicate push down ? |
|
来自: BIGDATA云 > 《HBase列式存储》