HBase概述 | 「掘金日新计划 · 12 月更文挑战」

171 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第13天

一、本篇笔记重点内容:

  • HBASE的3种部署模式
  • HBase基础
  • HBase启动命令 创建表命令 添加删除表数据命令

二、 详细知识点介绍

HBase的3种部署模式

独立模式

使用场景:小规模测试和本地开发使用

独立模式是默认模式,HBase不使用HDFS ,而是使用本地文件系统和本地ZooKeeper。ZooKeeper绑定到一个自定义的端口,以便客户可以与HBase通信。

分布式

分布式分为伪分布式和完全分布式。

1) 伪分布式

所有守护进程都在单个节点上运行,可以针对本地文件系统运行,也可以针对Hadoop分布式文件系统(HDFS)的实例运行。

使用场景:伪分布式模式只是在单个主机上运行的完全分布式模式。使用此HBase配置仅用于测试和原型设计。请勿将此配置用于生产或性能评估。

2) 分布式(内置Zookeeper)

对于生产环境,建议使用分布式模式。在分布式模式下,HBase守护程序的多个实例在群集中的多个服务器上运行。

群集将包含多个在不同服务器上运行的RegionServers,以及主要备份Master和ZooKeeper守护程序。conf / regionservers在主服务器上的文件中包含主机信息、其RegionServers与该集群相关的列表等。每个主机都在一个单独的进程上。当主服务器启动或停止时,此文件中列出的所有主机都将启动和停止其RegionServer进程。

HBase基础

HBase启动命令 创建表命令 添加删除表数据命令

启动命令:satrt-habse.sh 查看启动进程:jps 在独立模式下,可以看到只有一个正在运行的进程HMaster。

在分布式模型下,可以看到多个正在运行的进程:

image.png

HBase Shell

HBase可以通过shell进行通信。它拥有一个主服务器和区域服务器,数据存储以区域的形式存储,并分割在区域服务器中。主服务器管理着这些区域服务器。

HBase属于NoSQL数据库的典型代表,并不支持SQL查询语句,但是Hbase有自带的查询语句。Hbase shell,最简单的接口,适合HBase管理使用,可以使用shell命令来查询HBase中数据的详细情况。

  • 创建表命令 :create 'info', 'name','age' //info为表名,name,age为列名
  • 添加表数据命令:
  1. 先禁用表 disable ‘info’
  2. 添加列族 alter ‘info’,’age’
  3. 启用列族 enable ‘info’
  • 删除表数据命令:
  1. 先禁用表 disable ‘info’
  2. 删除列族 语法:alter '表名', 'delete'=>'列族'
  3. alter 'info', 'delete'=>'age'
  4. 启用表enable ‘info’
  • 删除表
  1. 先禁用表disable ‘info’
  2. 删除表 语法:drop ‘表名’drop ‘info2’ 附加: disable_all:禁用多个表 drop_all:删除多个表,表需先禁用,然后才能删除