Hbase基础介绍-1 概述

news2024/10/6 10:30:17

Hbase基础介绍-1 概述

  • 一、概述
    • 1、定义:
    • 2、特点:
    • 3、HBase在Hadoop生态中的地位
    • 4、HBase与HDFS
    • 5、Hbase与Hive
    • 6、关系型数据库与列式数据库
    • 7、结构化数据和非结构化数据
    • 8、HBase使用场景
    • 9、CAP定理
    • 10、Hbase与传统关系型数据库的区别

一、概述

在这里插入图片描述

1、定义:

HBase是一个分布式的、面向列的开源数据库,是Google BigTable的开源实现,不同于一般的关系数据库,适合非结构化数据存储。

2、特点:

适合大规模海量数据,PB级数据;分布式、并发数据处理,效率极高;易于扩展,支持动态伸缩;适用于廉价设备;不适用于传统关系型数据的存储;可以支撑在线业务。

3、HBase在Hadoop生态中的地位

HBase是Apache基金会顶级项目,HBase基于HDFS进行数据存储,HBase可以存储超大数据并适合用来进行大数据的实时查询。

4、HBase与HDFS

(1)HBase建立在Hadoop文件系统上,利用了HDFS的容错能力;
(2)HBase提供对数据的随机实时读/写访问功能;
(3)HBase内部使用哈希表,并存储索引,可以快速查找HDFS中数据。

5、Hbase与Hive

(1)共同点:都可以处理海量数据;文件都是保存到HDFS上。
(2)不同点:Hbase的计算不通过MapReduce,自己实现CRUD功能,可以有集群,通过zookeeper实现管理,可以实时计算;Hive通过MapReduce实现数据查询,只能做离线计算。

6、关系型数据库与列式数据库

关系型数据库以行为单位进行存储,连续存储,记录在一个连续的存储空间中。
列式数据库以列为单位进行存储,不同列之间存储的位置不连续。

7、结构化数据和非结构化数据

结构化数据:有严格的数据模型,适合用二维表来展示的数据,表结构不会频繁调整。
非结构化数据:非结构化数据是数据结构不规则或不完整;没有预定义的数据模型;不方便用数据库二维逻辑表来表现,例如办公文档、文本、图片、XML、HTML、各类报表、图像和音频/视频信息等。

8、HBase使用场景

瞬间写入量很大;大量数据需要长期保存,且数量会持续增长;HBase不适合有join、多级索引、表关系复杂的数据模型。
注意:Hbase只支持行级别的事务

9、CAP定理

分布式系统的最大难点,就是各个节点的状态如何同步。CAP定理是这方面的基本定理,也是理解分布式系统的起点。
一致性(C):所有节点在同一时间具有相同的数据。
可用性(A):保证每个请求不管成功或失败都有响应,但不保证获取的数据的正确性。
分区容错性(P):系统中任意信息的丢失或失败不会影响系统的运行,系统如果不能在某个时限内达成数据一致性,就必须在上面两个操作之间做出选择。
hbase是CAP中的CP系统,即hbase是强一致性的。

10、Hbase与传统关系型数据库的区别

Hbase关系型数据库
数据库大小PB级别GB、TB级别
数据类型Bytes丰富的数据类型
事务ACID只支持单个Row级别全面的ACID支持,多Row和表
索引只支持Row级别支持
吞吐量百万写入/秒千写入/秒

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

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

相关文章

飞腾D2000 如何修改boot启动项

开机后,按着F2进入如下界面 选择Enter Setup 选择 Boot Maintenance Manager 进入Boot Options 选择Change Boot Order 在这个界面按 键盘上的 Enter 键 在弹出得蓝色小方框里,按键盘的上下键,比如我要把硬盘盘符放在boot 启动项的第一首选项,则移动下键到硬盘盘符上,再…

嵌入式系统入门基础知识分析(二)

目录 ​编辑 1、GPIO原理与结构 2、A/D接口 3、D/A接口基本 4、键盘接口

解密网站401错误:了解发生原因和修复方法

​  每个网站都会有不同的错误码,其中,401错误被认为是相对常见的错误码。那么,什么是网站401错误呢?在摸清了这一点之后,我们也需要学习一下如何解决它。 什么是 401 状态码? 401 状态代码是 Web 服务器发送给浏览器的 HTTP …

【小菜鸡刷题记】--字符串篇

【小菜鸡刷题记】:字符串 剑指 Offer 05. 替换空格剑指 Offer 58 - II.左旋转字符串剑指 Offer 20.表示数值的字符串剑指 Offer 67. 把字符串转换成整数 特此声明:题目均来自于力扣 剑指 Offer 05. 替换空格 题目链接 请实现一个函数,把字符…

【JUC基础】06. 生产者和消费者问题

1、前言 学习JUC,就不得不提生产者消费者。生产者消费者模型是一种经典的多线程模型,用于解决生产者和消费者之间的数据交换问题。在生产者消费者模型中,生产者生产数据放入共享的缓冲区中,消费者从缓冲区中取出数据进行消费。在…

MySQL同时In俩个字段,In多个字段,Mybatis多个In查询问题,Mysql多个IN查询多出数据问题,Mysql多个IN查询 数据准确问题

背景: 今天产品验收的时候,导入了大量数据;发现造价项目某个查询列表数据多出了几条数据;看了Mybatis查询,才发现是同时使用了多个IN查询导致的问题;入参是对象列表,In值是分开循环赋值…

【SpringBoot整合RabbitMQ(上)】

一、简单的生产者-消费者 1.1、创建连接工具类获取信道 public class RabbitMqUtils {public static Channel getChannel() throws IOException, TimeoutException {//创建一个链接工厂ConnectionFactory factory new ConnectionFactory();//工厂IP 链接RabbitMQ的队列facto…

google_breakpad库的基本使用

参考链接: windows下捕获dump之Google breakpad_client的理解Google Breakpad:基本介绍和操作方法Breakpad 入门linux下用QT捕获程序异常 简介 github 地址 三大组件 client:读取当前线程的状态、加载的可执行文件、共享库等信息,写入到…

Azure深层防御

深层防御的目的是保护信息,防止未经授权访问信息的人员窃取信息。 深层防御策略使用一系列机制来减缓攻击进度,这些攻击旨在获取对数据的未经授权的访问权限。 深层防御层 可以将深度防御可视化为一组层,并将要保护的数据放在中心&#xf…

一篇文章搞定ftp、dns服务器

一篇文章搞定ftp、dns服务器 1、ftp 安装ftp 挂载centos镜像cd /media/CentOS_6.8_Final/Packages安装命令:[rootlocalhost Packages]# rpm -ivh vsftpd-2.2.2-21.el6.x86_64.rpm Vsftpd配置目录为/etc/vsftpd,其中包含下面几个文件 /var/ftp/&#xf…

awk命令编辑

awk工作原理 逐行读取文本,默认以空格或tab键分隔符进行分隔,将分隔所得的各个字段保存到内建变量中,并按模式或者条件执行编辑命令。 sed命令常用于一整行的处理,而awk比较倾向于将一行分成多个“字段”然后再进行处理。awk信息…

做网工10年,没人在30岁前和我讲这些(一)

晚上好,我是老杨。 23年才刚过几天,我就感觉自己又上了点年纪,时常面对年纪比较小的粉丝,无意识的面露慈爱的笑容。 还是每次小冬提醒我,我才发现我的表情不对劲。 我对年轻人的包容度是很强的,尤其是一…

VMware、CentOS、XShell、Xftp的安装

第 1 章 VMware 1.1 VMware 安装 一台电脑本身是可以装多个操作系统的,但是做不到多个操作系统切换自如,所以我们 需要一款软件帮助我们达到这个目的,不然数仓项目搭建不起来。 推荐的软件为 VMware,VMware 可以使用户在一台计…

DNS正反向解析

正向解析 1.准备工作 关闭Selinux服务和firewalld服务 [rootserver ~]# setenforce 0 [rootserver ~]# systemctl stop firewalld 修改服务器与客户端的IP为静态IP地址 [rootserver ~]# nmcli connection modify ens160 ipv4.method manual ipv4.address …

剑指offer 19. 正则表达式匹配

文章目录 1. 题目描述2. 解题思想3. 设置dp初始值4.代码实现 1. 题目描述 2. 解题思想 定义dp数组 dp[i][j]:表示当字符串长度i,j是,s与p是否匹配 确定递推公式 核心是s[i]要与p[j]进行比较,比较的结果来确定 dp数组的值&#xf…

STM32-ADC多通道输入实验

之前已经介绍了几个ADC的笔记和实验了,链接如下: 关于ADC的笔记1_Mr_rustylake的博客-CSDN博客 STM32-ADC单通道采集实验_Mr_rustylake的博客-CSDN博客 STM32-单通道ADC采集(DMA读取)实验_Mr_rustylake的博客-CSDN博客 接下来…

NodeJs基础之NRM与NPM

nrm nrm can help you easy and fast switch between different npm registries, now include: npm, cnpm, taobao, nj(nodejitsu). 译文:nrm可以帮助您在不同的npm注册表之间轻松快速地切换,现在包括:npm、cnpm、taobao、nj(no…

编译安装及yum安装

一、编译安装 源码包:是由程序员按照特定格式和语法编写的包 二进制包:源码包经过成功编译之后产生的包 1.tar -xf httpd-2.4.29.tar.bz #解压源码包 2.安装依赖环境 3.配置安装路径 4.编译make并安装 5.关闭防火墙,和安全机制 6.开启服务器 7.…

全电发票时代,记账凭证不用再打印了!

—政策通告— 为进一步推进电子发票应用和推广实施工作,助力国家数字经济发展,国家档案局会同财政部、商务部、国家税务总局总结三批增值税电子发票电子化报销、入账、归档试点经验,依据国家相关法律法规和标准规范,编制形成了《…

KMP匹配算法

目录 一、暴力匹配法动画演示代码实现 二、KMP算法的概念三、KMP算法的应用题目代码实现 一、暴力匹配法 动画演示 时间复杂度为&#xff1a; O ( m ∗ n ) O(m * n) O(m∗n) 代码实现 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std;int…