HBASE知识点

HBASE是什么?

  • 高可靠、高性能、面向列、可伸缩、实时读写的分布式数据库。
  • 利用HDFS作为其文件存储系统,利用MapReduce来处理HBase中的海量数据。利用Zookeeper作为其分布式协同服务。
  • 用于存储非结构化和半结构化的松散数据。

HBase数据模型

  • RowKey: 唯一标识一行记录,按字典顺序排序,RowKey只能存储64K的字节数据。

字典顺序存储,在合理的rowkey设计情况下,范围查询很快。

  • Column Family列族:
    – HBASE中每个列都归属于某个列族,列族必须作为表模式定义的一部分先给出。
    – 列名以列族作为前缀,每个列族都可以有多个列成员(column),新的列族成员可以随后按需动态加入。
    – 权限控制、存储以及调优都是在列族层面进行的。
    – HBase把同一列族里面的数据存储在同一目录下,由几个文件保存。
  • TimeStamp:
    – 在HBase每个cell存储单元对同一份数据有多个版本,更加唯一的时间戳来区分每个版本之间的诧异,不同版本的数据安装时间大圩排序,最新的数据版本排在最前面。
    – 时间戳类型是64位整型。
    – 时间错可以由HBASE在数据写入时自动赋值,此时时间戳是精确到毫秒的当前系统时间。
    – 时间戳也可以由用户显示赋值,如果应用程序要避免数据版本冲突,就必须自己生产具有唯一性的时间戳。
  • Cell单元格
    – 有行和列的坐标交叉决定。
    – 单元格室友版本的。
    – 单元格的内容是未解析的字节数组:{rowkey,column(=family+qualifier),version}唯一确定的单元
    – cell中的数据是没有类型的,全部是字节数组形式存储的。

HBase架构

在这里插入图片描述
在这里插入图片描述

Client

访问Hbase的接口并维护Cache加快对Hbase的访问。

Zookeeper

保证集群中只有一个活跃的Master。存储所有Region的寻址信息。实时监控Region的上线、下线信息,并实时通知Master。存储Hbase的schema和table元数据。

HMaster

为RegionServer分配Region,负责RegionServer的负责均衡。发现失效的RegionServer并重新分配其下的Region,管理用户对Table的CRUD。

HRegionServer

负责维护HMaster分配给他的Region,处理这些Region的IO请求。当Region变大到一个阈值后,RegionServer会进行Region拆分,并告知Master节点,由Master协调拆分后的Region进行迁移。

HRegion

HBase自动把表水平划分成多个Region,每个Region会保存一个表里面某段连续的数据(类似MYSQL表的横向拆分),每个表最开始只有一个Region,随着数据不断插入,Region不断增大,当增大到一个阈值时,Region就会才分成两个新的Region(裂变)。当Table中的行不断增多,就会有越来越多的Region,这样一张完整的表被保存在多个RegionServer上。

Store的MemStore和StoreFile

一个Region有多个Store组成,一个Store对应一个列族。Store报货位于内存中的Memstore和位于磁盘中的StoreFile。
写操作先写入Memstore,当Memstore中的数据打到某个阈值,HRegionServer会启动FlashCache进行进行写入StoreFile,每次写入形成单独的StoreFile。当StoreFile文件数量增长到一定的阈值后,系统会进行合并,在合并过程中会进行版本合并和删除工作(写操作的时候都是append操作,不会有更新和删除动作,所以速度很快),形成更大的StoreFile。当一个Region所有的StoreFile的大小和数量超过一定的阈值后,会把所有的Region分隔成两个,并由HMaster分配到相应的RegionServer服务器,实现负载均衡
读操作先在Memstore找,找不到去blockCache找,找不到再到StoreFile找。

blockCache是Hbase的读缓存,HBase采用最近最少访问策略来管理。

HLog

在HBase写操作时会先写HLog,然后再往Memstore写。HLog先写到内存,然后每秒进行一次持久化。在写入Memstore后,持久化到StoreFile之前如果HRegionServer挂掉了,则通过HLog进行数据恢复。如果HLog持久化之前挂掉了,那么这一秒的数据将丢失。

HFILE

StoreFile存储在HDFS中的文件名称。

写操作

  1. 访问ZK得到元数据表地址。
  2. 访问RegionServer找到列族Store;
  3. 往Store的MemStore写数据(先写入HLog,再写入MemStore)。
  4. MemStore在数据快满或满64M的时候进行持久化到StoreFile。

读操作

  1. 访问ZK得到元数据表地址。
  2. 访问RegionServer找到列族Store。
  3. 从MemStore读数据,如果MemStore中没有就从blockCache(读缓存)读。
  4. blockCache没有则从磁盘读取,如果读取到则返回并缓存到blockCache。

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

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

相关文章

Java“牵手”拼多多商品详情数据,拼多多商品详情接口,拼多多API接口申请指南

拼多多商品详情API接口的作用是获取拼多多平台上某个商品的详细信息,包括商品标题、价格、图片、规格、参数、店铺信息等。 开发者可以通过该接口获取到商品的原始数据,方便进行数据分析、价格比较、爬取等操作。通过该接口获取到的商品详情数据可以结合…

flink命令行提交jar包任务

1. 环境准备 1.1 flink环境准备 关于如何安装flink,这个写的非常详细,https://blog.csdn.net/qq_43699958/article/details/132826440 在flink的bin目录启动flink cluster [rootlocalhost bin]# ./start-cluster.sh1.2 Linux环境准备 1.2.1 关闭linu…

43.MQ—RabbitMQ

目录 一、MQ—RabbitMQ。 (1)同步调用与异步调用。 (1.1)同步调用。 (1.2)异步调用。 (2)MQ之间的区别。 (3)RabbitMQ学习。 (3.1&#xf…

一文读懂:苹果手机怎么录屏?

“刚买的苹果14,最近需要用来录屏,找了很久都没找到,朋友说苹果手机没有录屏功能,可是我半信半疑,花了这么多钱买的,怎么可能没有录屏功能呢,有人知道苹果手机怎么录屏吗?” 苹果手…

骨传导耳机对大脑有影响吗?骨传导耳机到底好不好

先上结论,骨传导耳机对大脑没有影响。骨传导耳机使用的是骨传导技术,声音是通过头骨骨头和颌骨给内耳传递的,而不是通过传统的空气传播,它将声音传输到颅骨,然后透过骨头振动直接刺激内耳,绕过外耳和中耳。…

C#,《小白学程序》第十五课:随机数(Random)第二,统计学初步,数据统计的计算方法与代码

1 文本格式 /// <summary> /// 《小白学程序》第十五课&#xff1a;随机数&#xff08;Random&#xff09;第二&#xff0c;统计学初步&#xff0c;数据统计的计算方法与代码 /// 用随机数做简单的统计并用图形显示统计结果。 /// </summary> /// <param name&q…

数电课程设计——课设一:加减计数器

为了帮助大家更好学习FPGA硬件语言&#xff0c;创立此资源 包含文件有&#xff1a;实验报告、仿真文件&#xff0c;资料很全&#xff0c;有问题可以私信 一、实验内容 1、利用QuartusII和Modelsim实现100进制可逆计数器编码显示实验。 二、实验步骤 &#xff08;1&#xff…

CentOS 7 openssl 3.0.10 rpm包制作 —— 筑梦之路

源码下载地址&#xff1a; https://www.openssl.org/source/openssl-3.0.10.tar.gz 编写spec文件&#xff1a; cat << EOF > openssl.specSummary: OpenSSL 3.0.10 for CentosName: opensslVersion: %{?version}%{!?version:3.0.10}Release: 1%{?dist}Obsoletes…

企业可以自己建立大数据平台吗?有哪些好处?

随着企业的快速发展&#xff0c;企业累积了越来越多的数据&#xff0c;但管理巨量的大数据是一件非常难的事情&#xff0c;且很多数据没有充分发挥作用。因此不少企业在问&#xff0c;企业可以自己建立大数据平台吗&#xff1f;有哪些好处&#xff1f; 企业可以自己建立大数据…

vue 验证码 图片点击

实现登陆验证 图片依次点击功能 demo &#xff0c;上图可以根据demo修改&#xff0c;直接拿用 <template><div><div class"big-box" id"BigBox" :style"background-image:url( imgCodeUrl )"><div class"click-box…

最新IDE流行度最新排名(每月更新)

2023年09月IDE流行度最新排名 顶级IDE排名是通过分析在谷歌上搜索IDE下载页面的频率而创建的 一个IDE被搜索的次数越多&#xff0c;这个IDE就被认为越受欢迎。原始数据来自谷歌Trends 如果您相信集体智慧&#xff0c;Top IDE索引可以帮助您决定在软件开发项目中使用哪个IDE …

python开发之个微机器人的二次开发

简要描述&#xff1a; 取消消息接收 请求URL&#xff1a; http://域名地址/cancelHttpCallbackUrl 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/json 参数&#xff1a; 参数名类型说明codestring1000成功&#xff0c;1…

水循环原理VR实景教学课件开发

日本核污水排海让人们越来越重视海洋大气层水循环的安全&#xff0c;水循环是一个周而复始、循环往复的动态过程&#xff0c;为了将水循环过程以形象、生动地形式展示出来&#xff0c;水循环VR全景动态演示逐渐受到大家青睐。 传统的水循环教育方式通常是通过图片、动画或实地考…

MySql安装包配置

电脑重配过多次&#xff0c;此为mysql安装记录贴&#xff0c;方便查阅 从官网下载的安装包进行本地配置 下载地址 解压下载下来的zip压缩包 解压出来的文件中新增配置my.ini文件 [mysqld] # 设置3306端口 port3306 # 设置mysql的安装目录 basedirD:\\software\\package\\M…

Adobe Acrobat Reader界面改版 - 解决方案

问题 日期&#xff1a;2023年9月 Adobe Acrobat Reader下文简称Adobe PDF Reader&#xff0c;此软件会自动进行更新&#xff0c;当版本更新至2023.003.20284版本后。 软件UI界面会大改版&#xff1a;书签页变成了右边、工具栏变到了左边、缩放按钮变到了右下角&#xff0c;如…

通过curl命令分析http接口请求各阶段的耗时等

目录 一、介绍二、功能1、-v 输出请求 响应头状态码 响应文本等信息2、-x 测试代理ip是否能在该网站使用3、-w 额外输出查看接口请求响应的消耗时间4、-o 将响应结果存储到文件里面5、-X post请求测试 (没测成功用的不多) 一、介绍 Curl是一个用于发送和接收请求的命令行工具和…

【LeetCode-简单题】977. 有序数组的平方

文章目录 题目方法一&#xff1a;双指针方法二&#xff1a; 题目 方法一&#xff1a;双指针 class Solution { // 方法一 &#xff1a;双指针public int[] sortedSquares(int[] nums) {int left 0;int right nums.length -1 ;int[] res new int[nums.length];//结果集新数组…

中金支付-对账文件接受base64后保存文件

前后接口不太清楚。 通过别人的对接沟通过程中看到这个问题&#xff0c;简单尝试成功后做个记录。 接口返回内容为Base64&#xff0c;那么先进行解码base64_decode。 解码后内容截图如下&#xff1a; 大概能看出来里面含有csv文件&#xff0c;且接口中说明&#xff1a;对账文件…

企业网络革命:连接和访问的智慧选项

近年来&#xff0c;企业网络通信需求可谓五花八门&#xff0c;变幻莫测。它不仅为企业的生产、办公、研发、销售提供全面赋能&#xff0c;同时也让企业业务规模变大成为了可能。今天&#xff0c;我们来聊聊广域网中两个不可忽视的概念&#xff1a;连接&#xff08;Connection&a…

统一潮流控制器 (UPFC) 的应用,以增强电力系统中的电压稳定性(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…