![](https://img-blog.csdnimg.cn/20200822114044168.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
HBase
文章平均质量分 91
HBase。。。
一个写湿的程序猿
练习两年半的程序猿。。。只因(ji)你太美!!!
初识不知文中意,再见已是文中人
展开
-
HBase客户端、服务器端、列簇设计、HDFS相关优化,HBase写性能优化切入点,写异常问题检查点
首先考虑业务是否需要写WAL,通常情况下大多数业务都会开启WAL机制(默认),但是对于部分业务可能并不特别关心异常情况下部分数据的丢失,而更关心数据写入吞吐量,比如某些推荐业务,这类业务即使丢失一部分用户行为数据可能对推荐结果并不构成很大影响,但是对于写入吞吐量要求很高,不能造成数据队列阻塞。假设忽然来了一批大汉,要定制超大汉堡,好了,所有的窗口都工作起来,而且因为大汉堡不好制作导致服务很慢,这样必然会导致其他排队的用户长时间等待,直至超时。另外需要注意的是,批量put请求要么全部成功返回,要么抛出异常。原创 2023-03-22 15:31:25 · 323 阅读 · 0 评论 -
LSM-Tree 和 B-tree 数据存储结构对比
LSM-Tree 和 B-tree 数据存储结构对比顺序存储 与 哈希索引SSTable 和 LSM treeB-Tree存储结构的比对所谓数据库,最基础的功能,就是保存数据,并且在需要的时候可以方便地检索到需要的数据。在这个基础上,演化出了不同的数据库系统,以及多种索引机制帮助检索数据。顺序存储 与 哈希索引试想一下,如果按照保存数据,并且在需要的时候可以方便地检索到需要的数据这一标准,设计一个简单的数据库,那么最简单的做法应该怎么做呢?最简单的做法,就是通过顺序保存数据到一个日志文件中。然后原创 2021-09-17 16:26:57 · 516 阅读 · 0 评论 -
hbase热点问题
hbase热点问题我们最开始hbase创建表默认是一个region,而我们所谓的热点问题其实就是对某一个region的过量访问造成的;Hbase当发现一个region存储数据量大于阈值(默认10G)时,会分裂region变成两个,此时访问此表数据会被阻塞,直到分裂成功才可继续访问;综上问题,我们需要在建表的时候就预分区(分区就是region),分区语句例如:create ‘test_region’,‘info’,‘info2’,SPLITS => [‘1’,‘2’,‘3’,‘4’,‘5’原创 2021-02-24 16:39:30 · 402 阅读 · 0 评论 -
hbase宽表和高表以及优缺点
hbase宽表和高表以及优缺点hbase的row key是分布式的索引,也是分片的依据。在HBase中使用宽表、高表的优劣总结如下:查询性能分片能力元数据开销事务能力数据压缩比小结宽表总结一 宽表的优点大量使用宽表究竟给我们带来了什么好处?二 宽表的不便三 如何优雅的使用宽表hbase中的:宽表:是指很多列较少行,即列多行少,一行中的数据量较大,行数少;高表:是指很多行较少列,即行多列少,一行中的数据量较少,行数大。hbase的row key是分布式的索引,也是分片的依据。hbase 的 ro原创 2021-02-24 16:03:39 · 1816 阅读 · 0 评论 -
哈希存储引擎、B树存储引擎、LSM树存储引擎详解
哈希存储引擎、B树存储引擎、LSM树存储引擎详解1.前提2. 哈希存储引擎3. B树存储引擎4. LSM树存储引擎4.1 LSM主题思想4.2 LSM树在HBase中的应用参考1.前提讲LSM树之前,需要提下三种基本的存储引擎,这样才能清楚LSM树的由来:哈希存储引擎。B树存储引擎。LSM树(Log-Structured Merge Tree)存储引擎。2. 哈希存储引擎哈希存储引擎哈希表的持久化实现,支持增、删、改以及随机读取操作,但不支持顺序扫描,对应的存储系统为key-value存储原创 2021-02-24 14:58:27 · 858 阅读 · 0 评论 -
HBase-存储文件合并StoreFile Compaction 和 Region Split
文章目录- StoreFile Compaction- Region Split- StoreFile Compaction由于MemStore每次刷写都会生成一个新的HFile,且同一个字段的不同版本(timestamp)和不同类型(Put/Delete)有可能会分布在不同的HFile中,因此查询时需要遍历所有的HFile。为了减少HFile的个数,以及清理掉过期和删除的数据,会进行 StoreFile Compaction。Compaction分为两种,分别是Minor Compaction和M原创 2020-08-27 16:35:18 · 802 阅读 · 0 评论 -
HBase-MemStore触发刷写的六种时机
文章目录MemStore Flush1)MemStore级别2)Region级别3)RegionServer级别4)HLog级别5)定期刷写6)手动刷写MemStore Flush所有的flush都是以Region为单位刷新1)MemStore级别当 Region中 某个 MemStore 的大小达到了hbase.hregion.memstore.flush.size(默认值128M),会触发Region的刷写(若Region中有多个Store,只要有其中一个达到hbase.hregion.mem原创 2020-08-27 15:32:47 · 1182 阅读 · 0 评论 -
HBase-架构原理组件,写数据流程,读数据流程解析
文章目录架构原理写数据流程读数据流程架构原理1)HDFSHDFS 为 HBase 提供最终的底层数据存储服务,同时为 HBase 提供高可用的支持。2)Client利用 RPC 机制与 Master 和 RegionServer 通信,并维护Meta Cache 来加快对HBase的访问。Client 访问用户数据前需要首先访问 ZooKeeper,找到 hbaes:meta 表的 Region 所在的位置,最后才能找到用户数据的位置去访问,不过 client 端会做 cache 缓存。3)Z原创 2020-08-23 12:47:04 · 2236 阅读 · 0 评论 -
HBase-概述,hbase逻辑结构,hbase物理存储结构
文章目录HBase概述HBase逻辑结构HBase物理存储结构HBase概述HBase是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。是一种面向列簇存储的非关系型数据库。用于存储结构化和非结构化的数据,适用于单表非关系型数据的存储,不适合做关联查询,类似JOIN等操作。基于HDFS,数据持久化存储的体现形式是HFile,存放于DataNode中,被ResionServer以region的形式进行管理。延迟较低,接入在线业务使用,面对大量的企业数据,HBase可以实现单表大量数据的存储原创 2020-08-23 11:07:27 · 2855 阅读 · 1 评论