当前位置: 首页 > news >正文

habse

为什么需要它?
简单来说,HBase是一个建立在Hadoop文件系统(HDFS)之上的、分布式的、可扩展的NoSQL数据库。
它的设计灵感来源于Google的Bigtable论文,旨在提供一个能可靠地存储和处理海量结构化或半结构化数据的解决方案。你可以把它想象成一个“无限扩展的、多维的HashMap”。
HBase的典型使用场景:
海量数据存储:存储TB、PB级别的数据,如用户行为日志、交易记录、社交媒体数据等。
实时读写随机访问:支持对单条数据的快速读写,延迟在毫秒级别。
稀疏数据:适合存储那些“很多列,但每行只有少数列有值”的表。
需要水平扩展:可以通过简单地增加机器来扩展集群的存储和计算能力。
二、HBase的核心架构:如何做到既快又稳?
HBase的架构是其强大能力的基石,主要包含以下几个核心组件:
HMaster:
集群的“管理员”,负责管理元数据(表结构等)、RegionServer的负载均衡以及故障恢复。
通常采用主备模式,保证高可用性。
RegionServer:
集群的“干活工人”,负责处理客户端的读写请求,管理多个Region。
数据真正存储和提供服务的地方。
Region:
数据分片的基本单位。一张巨大的HBase表会根据行键(Row Key)被水平切分成多个Region,分布在不同RegionServer上。这实现了数据的分布式存储和负载均衡。
Store:
每个Region按列族(Column Family)再次切分,每个列族对应一个Store。
Store包含一个MemStore(内存写缓存)和多个HFile(磁盘文件)。
ZooKeeper:
集群的“协调员”,负责维护集群的元信息、监控RegionServer的状态,并协助HMaster进行故障发现和选举。
写入流程简述:
当客户端写入一条数据时,它首先会被写入对应Region的MemStore中。当MemStore达到一定大小时,会异步地刷写(Flush) 到HDFS上形成一个不可变的HFile文件。这个过程极大地提升了写入性能。
读取流程简述:
读取时,HBase会同时查询MemStore和多个HFile,并将结果合并后返回给客户端。为了提升读取效率,HBase会定期在后台执行压缩(Compaction) 操作,将多个小HFile合并成一个大文件,并清理已删除的数据。

http://www.hskmm.com/?act=detail&tid=34495

相关文章:

  • hbase
  • 微信小程序 在云函数本地调试时,总是提示node modules 未安装,立即安装。解决方法
  • Godot-C#场景之间的切换
  • 读书日记1
  • 【ARM CoreLink 系列 3.1 -- CCI-500 详细介绍 -上半部】
  • 央企程序员AI创业一个月感受 ✨
  • tryhackme-预安全-网络基础知识-局域网介绍-05
  • 10.19
  • 从众多知识汲取一星半点也能受益匪浅【day16(2025.10.18)】(加班但只加到四点半)
  • (个人思考)游戏技能的实现
  • 模拟赛T4 分析
  • ubuntu系统中containerd的cni网络配置
  • 十月阅读笔记
  • #20232408 2025-2026-1 《网络与系统攻防技术》实验二实验报告 - 20232408
  • 题解:P2672 [NOIP 2015 普及组] 推销员
  • 一文读懂Schnorr签名
  • 如何选择合适的SAP实施公司?3步锁定靠谱的SAP服务商
  • CSP-S2024
  • 10/19
  • 论DCT和IDCT的重要性,汇编SIMD版第一,此贴第二,就是这么狂 :-)
  • 这些SAP实施公司哪家强?国内比较好的SAP实施商推荐
  • 25秋周总结5
  • UML图
  • 博士研究文档管理技术指南
  • 题解:P12128 [蓝桥杯 2024 省 B 第二场] 质数变革
  • 题解:P12003 在小小的奶龙山里面挖呀挖呀挖(加强版)
  • apisix升级完整流程
  • 10.11-10.18 一周总结
  • 10/19/2025 一周总结
  • 如何生成逼真的合成表格数据:独立采样与关联建模方法对比