HBase(一) —— 基本概念及使用

一、安装&启动

下载

https://hbase.apache.org/downloads.html

快速开始文档
https://hbase.apache.org/book.html#quickstart

启动

./hbase shell

基本操作

进入控制台

hbase shell

报错

ERROR: KeeperErrorCode = NoNode for /hbase/master

list 显示数据库表

Describe 表名

Scan 表名 查看数据

Disable 表名 表设置成不可用
drop 表名

简介

分布式、可扩展、海量数据存储的NoSQL数据库

存十几、几十亿数据

谷歌论文的3驾马车,mapreduce 、hdfs、bigtable,对应Hadoop、HBase

官方文档

https://hbase.apache.org/

参考文档

数据模型

name space :相当于mysql中的database

habse自带的命名空间:hbase、default

region,表的切片,类似mysql中的表的概念。

row:每行数据都有一个rowkey和多个列组成。

column:列由列族、列限定符组成

时间戳:标识数据的不同版本

cell:rowKey、column Family、column qualifier、timestamp,具有唯一确定性。

逻辑结构

数据模式和关系型数据库挺像,底层物理存储结构是K-V,像一个多维度的map

列、列族、rowKey(行键)

Region是一张表的横向切片。

物理存储结构

物理存储时,会将一行信息拆分成多行,每一行包含rowKey、列族名称、列名称、时间戳、操作类型,value。

当删除数据时,会插入一觉记录,操作类型是DEL,当DEL的时间戳> PUT的时间戳的时候,该条记录不会返回。

不同版本的数据,根据timestamp进行区分

HBase 基本架构

修改就是PUT,因为通过时间戳进行比较。

region,切分、合并操作。

列式存储

参考文档

HBase与列存储
5分钟图解Hbase列式存储

原文地址:https://www.cnblogs.com/fonxian/p/11879356.html

时间: 2024-11-10 19:27:49

HBase(一) —— 基本概念及使用的相关文章

【DB】HBase的基本概念

一 Hbase是个啥东东? 在说Hase是个啥家伙之前,首先我们来看看两个概念,面向行存储和面向列存储.面向行存储,我相信大伙儿应该都清楚,我们熟悉的RDBMS就是此种类型的,面向行存储的数据库主要适合于事务性要求严格场合,或者说面向行存储的存储系统适合OLTP,但是根据CAP理论,传统的RDBMS,为了实现强一致性,通过严格的ACID事务来进行同步,这就造成了系统的可用性和伸缩性方面大大折扣,而目前的很多NoSQL产品,包括Hbase,它们都是一种最终一致性的系统,它们为了高的可用性牺牲了一部

5.Hbase特点和概念

hbase: 分布式--表的逻辑管理,表数据的物理存储 基于HDFS存储 可以通过HBASE自己的API来实现表数据的访问和分析 也可以通过编写MAPREDUCE程序来实现表数据的访问和分析 HBASE: 容量可以线性扩展,理论上没有上限 表结构: 创建表的时候只需要指定表名,列族名就可以了 表中的每一行record,字段数量和类型都可以不一样 每一行record中的数据是以key-value形式存储 每一个value可以保存多个版本,查询时默认返回最新版本 表的物理存储是"列式存储"

HBase的基本概念

HBase: 被称为NoSQL数据库.它提供了键值API,尽管有些变化,与其他键值数据库有些不同.它承诺强一致性,所以客户端能够在写入后马上看到数据.HBase运行在多个节点组成的集群上,而不是单台机器.它对客户端隐藏了这些细节.你的应用代码不需要知道它在访问1个还是100个节点,对每个人来说事情变得简单了.HBase被设计用来处理TB到PB级数据,它为这种场景做了优化.它是Hadoop生态系统的一部分,依靠Hadoop其他组件提供的重要功能,例如数据冗余和批处理. HBase已经是Apache

HBase介绍(2)---数据存储结构

在本文中的HBase术语:基于列:column-oriented行:row列组:column families列:column单元:cell 理解HBase(一个开源的Google的BigTable实际应用)最大的困难是HBase的数据结构概念究竟是什么?首先HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.另一个不同的是HBase基于列的而不是基于行的模式. Google's BigTable论文 清楚地解释了什么是BigTable:Bigtable是一个疏松的分布式的

[转载] HBase入门

转载地址:https://dxer.github.io/2016/03/18/hbase/ HBase一些基本概念 1.Row key 行主键,在对HBase进行查询时候只能依靠Row key,HBase不支持条件查询等类似于一些主流数据库的查询方式,读取记录只能依赖行主键以及进行全局扫面,可以将行主键想象成主流数据库查询过程中用到的主键(例如,id). 2.Column Family 列族,可以将列族想象成日常主流数据库中的表结构的所有列的一个大管家,列族中存储了所有列的名称,整个表包括多少列

HBase底层存储原理——我靠,和cassandra本质上没有区别啊!都是kv 列存储,只是一个是p2p另一个是集中式而已!

理解HBase(一个开源的Google的BigTable实际应用)最大的困难是HBase的数据结构概念究竟是什么?首先HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.另一个不同的是HBase基于列的而不是基于行的模式. Google's BigTable论文 清楚地解释了什么是BigTable: Bigtable是一个疏松的分布式的持久的多维排序的map,这个map被行键,列键,和时间戳索引.每一个值都是连续的byte数组.(A Bigtable is a sparse

hbase安装部署(二)

一.Hbase基础 1.概念 Hbase是一个在HDFS上开发的面向列分布式数据库,用于实时地随机访问超大规模数据集,它是一个面向列族的存储器.由于调优和存储都是在列族这个层次上进行,最好所有列族的成员都有相同的"访问模式"和大小特征 2.区域 hbase自动把表水平划分"区域"(region). 每个区域由表中行的子集构.每个区域由它所属于表,它所包含的第一行及其最后一行(不包括这行)来表示 区域是在hbase集群上分布数据最小单位.用这种方式,一个因为太大而无法

HBase之简介

(一)HBase之简介 * 概念 * HBase是一个高可靠性.高性能.面向列.可伸缩.支持版本控制.稀疏的.多维度的和排序的分布式数据库. * 高可靠性: * (1): 在数据的写入过程中,数据首先会写到预写日志WAL(write ahead log)中,再写到memstore(内存)中,一旦                         HRegionServer宕机,可以回滚WAL,重新写入数据:         * (2):数据存储时,一般是用Hadoop的hdfs作为底层存储,可以设

(一)HBase之简介

(一)HBase之简介 * 概念 * HBase是一个高可靠性.高性能.面向列.可伸缩.支持版本控制.稀疏的.多维度的和排序的分布式数据库. * 高可靠性: * (1): 在数据的写入过程中,数据首先会写到预写日志WAL(write ahead log)中,再写到memstore(内存)中,一旦                          HRegionServer宕机,可以回滚WAL,重新写入数据:          * (2):数据存储时,一般是用Hadoop的hdfs作为底层存储,可

大数据学习--之--HBASE理论基础

Apache HBase简介 Apache HBase(Hadoop DataBase)是一个高可靠行.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可以在廉价的PC上搭建起大规模结构化存储集群. HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统:Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduc