Hadoop基础之《(9)—整合HBase+Phoenix+Hive》

news2024/11/17 0:53:30

一、HBase简介

1、HBase定义
Apache HBase是以HDFS为数据存储的,一种分布式、可扩展的NoSQL数据库(非关系型,以k,v的形式存储数据)。
HBase可以认为是以HDFS为存储的数据库。

2、HBase数据模型
(1)HBase的设计理念依据Google的BigTable论文,论文中对于数据模型的首句介绍:
Bigtable是一个稀疏的、分布式的、持久的多维排序map(代码里的hashmap是单维的,并且一定是有序的)。
(2)之后对于映射的解释如下:
该映射由行键、列键和时间戳索引;映射中的每个值都是一个未解释的字节数组。
(3)最终HBase关于数据模型和BigTable的对应关系如下:
HBase使用与Bigtable非常相似的数据模型。用户将数据行存储在带标签的表中。数据行具有可排序的键和任意数量的列。该表存储稀疏,因此如果用户喜欢,同一表中的行可以具有疯狂变化的列。
(4)最终理解HBase数据模型的关键在于稀疏、分布式、多维、排序的映射。其中映射map指代非关系型数据库的key-value结构。

二、HBase逻辑结构

1、存储数据稀疏,原数据有留空的部分。

2、数据存储多维,不同的行具有不同的列。

3、数据存储整体有序,按照RowKey的字典序排列,RowKey为Byte数组。

4、列、列族、Row key
row key是按照字典顺序排序的。

5、按照行进行拆分
拆分出Region,它会有对应的row key的一个范围。每个Region的row key范围不交叉。

将表格按照行拆分,块名称为Region,用于实现分布式结构。

6、竖着进行拆分
拆分出来的叫store。以列族为单位。

按照列族切分为store用于底层存储到不同的文件夹中,便于文件对应。

三、HBase物理存储结构

1、物理结构
物理存储结构即为数据映射关系,而在概念视图的空单元格,底层实际根本不存储。

列是:Row Key + 列族 + 列名 + 时间戳。

HDFS有一个特点,不能修改数据,只能删除、重写、追加写。

HBase要在不能改数据的基础上,实现改数据的功能,如何实现——以时间戳标记不同的版本。实际上删除、重写、追加写也是加标记。

四、数据模型概念

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/195669.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python---方法(普通方法,类方法,静态方法)

专栏:python 个人主页:HaiFan. 专栏简介:Python基础已经更新完,接下来是Python面向对象的知识点。 方法前言普通方法类方法静态方法总结前言 方法是什么? 一个类,它有特征,也有动作&#xff0…

华为OD机试(2023)真题目录(Java JS Python)

本专栏算法题均来自2023华为OD机考新题库。 本专栏算法题全部支持Java、JavaScript、Python语言实现。 注意:本专栏只包含新题库题目,不包含老题库题目。如果想同时拥有新、老题库全部题目,请订阅华为OD机试(2022&2023&#…

c/c++开发,C++类的常用基本函数实现案例

一、C类的常用基本函数 C类的常用基本函数主要包括:默认构造函数,普通构造函数,拷贝构造函数,析构函数,赋值(,运算符重载)函数: 1.默认构造函数,在没有显式初…

苹果电脑怎么用移动硬盘ntfs?教你三招方法

苹果电脑怎么用移动硬盘ntfs?Mac可以正常读取NTFS外置设备上的文件,但是不能够正常往里面写入文件,同样不能对上面的文件进行编辑、删除、移动等,如果想要进行这些操作。 一、什么是NTFS NTFS是一个日志文件系统,这意…

稍纵即逝,读博期间要注意的事情 / 读博期间一定不要做的事

稍纵即逝,读博期间要注意的事情 读博期间一定不要做的10件事 tip:配图除了缓解文章疲劳,就没有其它意图了。 时间稍纵即逝,博士期间的科研时间其实非常紧张和短缺。对于刚入学的博士新生,尤其是直博生和长学制&#…

DMA驱动开发---认识DMA

DMA定义: DMA用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。这就节省了CPU的资源来做其他操作。 DMA传输方式: DMA的作用就是实现数据的直接传输,而去掉了传统数…

Go 恶意软件增多,分析两个新发现的零检出样本

由于 Go 良好的跨平台特性,在多个操作系统与架构上都能运行,所以最近使用 Go 语言编写的恶意软件越来越多,每周都会发现大量的新样本。 在四月末,研究人员通过蜜罐发现了两个新的变种(Backdoorit和 Caligula&#xff…

AOSP 8.0 系统启动概要

目录 一、Android 系统启动流程图 二、系统启动阶段 三、 系统重要进程 3.1 父进程 3.2 重量级进程 一、Android 系统启动流程图 备注:(图片引用gityuan) 二、系统启动阶段 step1. 启动电源及系统:电源按下后,引…

家庭网络WIFI相关知识

文章目录参考资料路由器的最大下载速率WFI协议WIFI工作频段和信道2.4GHZ频段5GHz频段双频路由器兼容性覆盖WIFI信号为什么总这么差?参考资料 WiFi穿墙完全指南:你的网速是由什么决定的? 路由器的最大下载速率 所谓的450M路由器中的“450M”…

【Catalyst 9000 内嵌抓包方法】

新的一年 新的征程 新的课程开班 等你来学&#xff01; 1.在特权模式下进入如下配置 switch#monitor capture XXX interface Gix/x/x both 或 control-plan both <<<<< control-plan为CPU抓包 switch#monitor capture XXX match any 或 access-list XX swi…

4.6--贪心--最小生成树(MST)

一共有两种方法Prim算法和Kruskal算法都可以看作是应用贪心算法设计策略的例子。 Prim算法--选集合S中所有顶点的邻接点 距离最短的那个点&#xff08;不属于S&#xff09;加入集合S Kruskal算法--每次选取最短的且不构成回路的边 它们都利用了下面的最小生成树性质&#xf…

VRP系统下增加网络设备安全性之console接口

VRP即华为设备的操作系统 增加网络设备安全性的其中一种措施是增加console的安全 增强console安全性 1、使用密码登陆 首先先进入设备的console接口&#xff1a; 在进入系统视图时&#xff0c;可以使用system-view或sys 在进入console接口时&#xff0c;可以使用user-inte…

RPC的序列化方案详解

1 为什么需要序列化&#xff1f; 网络传输的数据须是二进制数据&#xff0c;但调用方请求的出入参数都是对象&#xff1a; 对象不能直接在网络传输&#xff0c;需提前转成可传输的二进制&#xff0c;且要求可逆&#xff0c;即“序列化” 将对象转换成二进制数据 这时&#xf…

拉伯证券|磷酸铁锂电池低温性能怎么解?

磷酸铁锂系电池本钱相对三元系电池低&#xff0c;且安全性好&#xff0c;寿命长。随着技能的前进&#xff0c;实践能量密度也在无限挨近理论能量密度。所以其市场占有率也在稳步上升&#xff0c;且现已超越三元系锂电池的装机量。 但磷酸铁锂&#xff08;LiFePO4&#xff0c;L…

Java网络编程 - UDP通信

文章目录UDP通信快速入门一发一收多发多收广播组播UDP通信 快速入门 UDP协议的特点: UDP是一种无连接、不可靠传输的协议。 将数据源IP、目的地IP和端口以及数据封装成数据包&#xff0c;大小限制在64KB内&#xff0c;直接发送出去即可。 UDP协议通信首先要有DatagramPacket数…

flume kafka channel 应用详解

1 官方文档 Documentation -> Flume User Guide2 kafka source (消费者) Kafka Source is an Apache Kafka consumer that reads messages from Kafka topics. If you have multiple Kafka sources running, you can configure them with the same Consumer Group so each …

2.DjangoRestFramework【基于DRF的RESTAPI的序列化使用】

进入Django rest framwork官网就能看到rest_framwork相关的教程; 1.安装rest_framwork pip install djangorestframework pip install markdown # Markdown support for the browsable API. pip install django-filter # Filtering support2.在setting中注册 setting…

QT-线性拟合(自动找直线区域)

最近有个需求&#xff0c;需要对一个S曲线的散点图做线性拟合&#xff0c;百度上线性拟合和曲线拟合公式很多&#xff0c;没什么问题&#xff0c;但需求里面有一个预期就是自动找出直线部分&#xff0c;前面因为其它事情耽搁&#xff0c;一直没有实现&#xff0c;心里多少有点梗…

SpringBoot微服务项目,转发并响应下载请求

在微服务项目中&#xff0c;我经常会碰到从一个微服务项目转发下载请求并实现下载文件的需求&#xff0c;因此在此做一个转发下载的示例。总的下载转发流程如下&#xff0c;我会按照这个流程一一介绍下载流程。 1、客户端的下载请求 这里主要介绍controller层是如何接收客户端…

apple pencil一代平替笔有哪些?平替电容笔推荐

当今社会&#xff0c;高科技推动了数字产品的发展。无论是在工作中&#xff0c;还是在学习中&#xff0c;大的屏幕都能让画面变得更清楚。不管是现在还是未来&#xff0c;Ipad设备都会变成我们每天的一个重要组成部分。如果ipad与一款易于使用的电容笔相结合&#xff0c;将会大…