Hadoop Hbase

2023-09-18 08:43:18

0目录

1.Hbase安装

2.表操作

3.hbase原理

1. Hbase安装

1.1  安装zookeeper 下载解压zookeeper和hbase到soft目录

1.2  安装hbase

配置环境变量  vim /etc/profile

#ZK

export ZOOKEEPER_HOME=/opt/soft/zk345

export PATH=$ZOOKEEPER_HOME/bin:$PATH

#HBASE_HOME

export HBASE_HOME=/opt/soft/hbase235

export PATH=$HBASE_HOME/bin:$PATH

hbase235/conf目录下的

编辑hbase-env.sh:[root@kb129 conf]# vim ./hbase-env.sh

export JAVA_HOME=/opt/soft/jdk180

编辑hbase-site.xml

[root@kb129 conf]# vim ./hbase-site.xml

<property>

    <name>hbase.rootdir</name>

    <value>hdfs://192.168.142.129:9000/hbase</value>

  </property>

  <property>

    <name>hbase.cluster.distributed</name>

    <value>true</value>

  </property>

  <property>

    <name>hbase.zookeeper.property.dataDir</name>

    <value>/opt/soft/zk345/zkdata</value>

  </property>

  <property>

    <name>hbase.zookeeper.property.clientPort</name>

    <value>2181</value>

  </property>

[root@kb129 conf]# pwd

/opt/soft/zk345/conf

[root@kb129 conf]# cp zoo_sample.cfg zoo.cfg

[root@kb129 conf]# mkdir /opt/soft/zk345/logs

[root@kb129 conf]# mkdir /opt/soft/zk345/zkdata

[root@kb129 conf]# vim  ./zoo.cfg

dataDir=/opt/soft/zk345/zkdata

dataLogDir=/opt/soft/zk345/logs

server.0=192.168.142.129:2287:3387

[root@kb129 conf]# cd ../zkdata/

[root@kb129 zkdata]# echo "0">myid

启动zookeeper

[root@kb129 zkdata]# zkServer.sh start

启动hbase

[root@kb129 zkdata]# start-hbase.sh

网页访问http://kb129:16010/

[root@kb129 conf]# hbase shell

hbase(main):001:0> create_namespace 'kb23'

 

create_namespace 'bigdata'

创建表

hbase(main):007:0> create 'bigdata:student','baseinfo','schoolinfo'

查看表

hbase(main):008:0> list_namespace_tables 'bigdata'

查看描述

hbase(main):009:0> desc 'bigdata:student'

删除表之前先禁用表

禁用表

hbase(main):011:0> disable 'bigdata:student'

查看是否禁用/启用

hbase(main):011:0> is_enabled 'bigdata:student'

启用表

hbase(main):011:0> enable 'bigdata:student'

删除

hbase(main):011:0> drop 'bigdata:student'

关闭hbase命令

2.表操作

添加数据

根据rowkey获取列族和列

获取列族中的单个列信息

3.补充Hbase原理

HBase定义

HBase是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。

HBase数据模型

逻辑上,HBase的数据模型同关系型数据库很类似,数据存储在一张表中,有行有列。但从HBase的底层物理存储结构(K-V)来看,HBase更像是一个multi-dimensional map(多维地图)

HBase物理存储结构

数据模型

1)Name Space

命名空间,类似于关系型数据库的database概念,每个命名空间下有多个表。HBase两个自带的命名空间,分别是hbase和default,hbase中存放的是HBase内置的表,default表是用户默认使用的命名空间。

2)Table

类似于关系型数据库的表概念。不同的是,HBase定义表时只需要声明列族即可,不需要声明具体的列。这意味着,往HBase写入数据时,字段可以动态按需指定。因此,和关系型数据库相比,HBase能够轻松应对字段变更的场景。

3)Row

HBase表中的每行数据都由一个RowKey和多个Column(列)组成,数据是按照RowKey的字典顺序存储的,并且查询数据时只能根据RowKey进行检索,所以RowKey的设计十分重要。

4)Column

HBase中的每个列都由Column Family(列族)Column Qualifier(列限定符)进行限定,例如info:name,info:age。建表时,只需指明列族,而列限定符无需预先定义。

5)Time Stamp

用于标识数据的不同版本(version),每条数据写入时,系统会自动为其加上该字段,其值为写入HBase的时间。

6)Cell

由{rowkey, column Family:column Qualifier, time Stamp} 唯一确定的单元。cell中的数据全部是字节码形式存贮。

HBase基本架构

架构角色:

1)Region Server

Region Server为 Region的管理者,其实现类为HRegionServer,主要作用如下:

对于数据的操作:get, put, delete;

对于Region的操作:splitRegion、compactRegion。

2)Master

Master是所有Region Server的管理者,其实现类为HMaster,主要作用如下:

    对于表的操作:create, delete, alter

对于RegionServer的操作:分配regions到每个RegionServer,监控每个RegionServer的状态,负载均衡和故障转移。

3)Zookeeper

HBase通过Zookeeper来做master的高可用、RegionServer的监控、元数据的入口以及集群配置的维护等工作。

4)HDFS

HDFS为Hbase提供最终的底层数据存储服务,同时为HBase提供高容错的支持。

Hive映射Hbase

Kb23:kb23factory表2个列族

列和具体信息

建立映射

更多推荐

安防监控/视频汇聚/云存储/AI智能视频分析平台EasyCVR下级海康设备无法级联是什么原因?

安防视频监控平台/视频集中存储/云存储/磁盘阵列EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。有用户反馈,在使用下级平台的海康设备级联到视频监控EasyCVR平台

游戏服务器搭建过程中Maven多模块编译遇到的一些问题

目录1、多模块的创建1.1父模块的创建1.2删除垃圾文件1.3修改pom.xml1.4创建子模块继承2、子模块之间的互相引用3、多个模块间版本的管理3.1dependencis3.2dependencyManagement4、依赖执行5、在SpringBoot项目中加载依赖项目的组件有几种常用的方法5.1.使用@Com

ip地址怎么改网速快

在当今高度依赖互联网的时代,快速稳定的网络连接对于人们的生活和工作至关重要。然而,有时我们可能会遇到网络速度缓慢的问题。虽然更改IP地址并不能直接影响网络速度,但它可以成为改善网络连接的一种策略之一。虎观代理小二二将探讨如何通过更改IP地址来尝试提升网络速度,并提供一些实用的方法与建议。请注意,网络速度受多个因素影响,

MongoDB简介以及安装

文章目录1.MongoDB简介2.NoSQL简介3.MongoDB安装1.MongoDB简介MongoDB是一种NoSQL数据库,采用了文档数据库模型。它以BSON(BinaryJSON)格式存储数据,支持动态模式和灵活的查询语言。MongoDB具有以下特点:文档存储:MongoDB以文档(Document)的形式存储

传统生产者和消费者问题,Sychronized版和Lock版

1.生产者和消费者问题Synchronized版面试:单例模式、排序算法、生产者消费者、死锁packagecom.kuang.pc;/***线程之间的通信问题,生产者和消费者问题!等待唤醒,通知唤醒*线程交替执行AB操作同一个变量num=0*Anum+1;*Bnum-1;*/publicclassA{publicsta

MongoDB差异数据对比的快速指南

MongoDB是一种非关系型数据库,它以灵活的JSON-like文档的形式存储数据,这种特性使其在处理大量数据和实现快速开发时更具有优势。而由于其灵活的数据模型和强大的性能,MongoDB被广泛应用在各种业务场景中。随着业务的发展和数据的增长,如何准确快速地完成MongoDB数据对比成为了一个重要的问题。如何准确快速地

监控办公室电脑用什么软件?

监控办公室员工电脑的工作情况是一项非常重要的管理任务,它可以帮助企业管理者及时发现员工的问题、提高工作效率和保障企业安全。以下是一些具体的方法和步骤,供您参考:1、安装监控软件在监控员工电脑之前,您需要先安装一款专业的监控软件。目前市面上有很多种不同的监控软件,您可以根据自己的需求选择适合自己的软件。比如,如果您想要监

【Rust日报】2023-09-19 为 aho-corasick 添加 aarch64 的 SIMD 实现

为aho-corasick添加aarch64的SIMD实现此次PR主要目的是为Teddy(一个关键的数据结构)添加aarch64的SIMD实现。之前,Teddy使用了x86-64SIMD指令,特别是SSSE3和AVX2。这个PR将Teddy的主要实现重组为一个新的Vectortrait,并为x86-64以及aarch6

代码随想录算法训练营Day46 | 动态规划(8/17) 1.练习题 LeetCode 139.单词拆分 2.多重背包 3. 背包问题总结篇!

背包问题要结束了!首先是今天的练习题,然后是多重背包的知识点,最后对这几天背包问题做一个总结!1.练习题139.WordBreakGivenastringsandadictionaryofstringswordDict,returntrueifscanbesegmentedintoaspace-separatedseq

Linux之Socket函数(详细篇)

本篇是基于Linuxman手册的一些总结socket作用:createanendpointforcommunication函数结构```c#include<sys/types.h>/*SeeNOTES*/#include<sys/socket.h>intsocket(intdomain,inttype,intproto

代理IP与Socks5代理:跨界电商之安全防护与智能数据引擎

第一部分:跨界电商的兴起与网络安全挑战1.1跨界电商的崭露头角跨界电商已经成为全球贸易的新引擎,企业纷纷踏上了拓展国际市场的征程。1.2网络安全的不容忽视跨界电商的增长也伴随着网络安全威胁的增加。黑客攻击、数据泄露和欺诈行为等风险呈上升趋势,给企业带来了巨大挑战。第二部分:代理IP与网络安全2.1代理IP:网络安全的守

热文推荐