hbase
文章平均质量分 56
zhifeng687
这个作者很懒,什么都没留下…
展开
-
Hbase使用Coprocessor构建二级索引
为什么需要二级索引Hbase默认只支持对行键的索引,那么如果需要针对其它的列来进行查询,就只能全表扫描了。表如果较大的话,代价是不可接受的,所以要提出二级索引的方案。网上的实现方法很多,华为,360等公司都有自己的方案,其中华为的已经开源,但是貌似对源码改动较大,新手不容易接受,所以没有选择它们。而其它的像利用Phoenix,solr等外部框架构建索引对Hbase的学习并没有太大的帮助。综上所...转载 2016-03-17 11:22:25 · 781 阅读 · 0 评论 -
Hbase RegionServer对数据的读写流程详解
HBase深入分析之RegionServer所有的用户数据以及元数据的请求,在经过Region的定位,最终会落在RegionServer上,并由RegionServer实现数据的读写操作。本小节将重点介绍RegionServer的代码结构和功能,从实现细节上深入理解RegionServer对于数据的操作流程。1 RegionServer概述RegionServer是HBase集群运行在每个工作节点...转载 2018-06-04 10:12:39 · 3877 阅读 · 0 评论 -
HBase RegionServer的核心组件MemStore
HBase系统中一张表会被水平切分成多个Region,每个Region负责自己区域的数据读写请求。水平切分意味着每个Region会包含所有的列簇数据,HBase将不同列簇的数据存储在不同的Store中,每个Store由一个MemStore和一系列HFile组成,如图所示。Region结构组成HBase基于LSM树模型实现,所有的数据写入操作首先会顺序写入日志HLog,再写入MemStore,当MemStore中数据大小超过阈值之后再将这些数据批量写入磁盘,生成一个新的HFile文件。LSM..翻译 2018-06-20 18:39:53 · 1492 阅读 · 0 评论 -
HBase Scan & Filter原理/流程详解
2.3.4 Get expect scanning resultsIn order to have a better understanding of the below explanation, I need to explain how does a KeyValue be stored in HFile.n How does a KeyValue be storedFigure 4 KeyV...转载 2018-06-20 00:01:52 · 5995 阅读 · 0 评论 -
HBase Scan流程分析
HBase的读流程目前看来比较复杂,主要由于:HBase的表数据分为多个层次,HRegion->HStore->[HFile,HFile,...,MemStore]RegionServer的LSM-Like存储引擎,不断flush产生新的HFile,同时产生新的MemStore用于后续数据写入,并且为了防止由于HFile过多而导致Scan时需要扫描的文件过多而导致的性能下降,后台线程会...转载 2018-06-20 00:05:34 · 855 阅读 · 0 评论 -
使用HBase Coprocessor
转载自:使用HBase CoprocessorHBase的Coprocessor是模仿谷歌BigTable的Coprocessor模型实现的。Coprocessor提供了一种机制可以让开发者直接在RegionServer上运行自定义代码来管理数据。首先必须要指明使用Coprocessor还是存在一些风险的。Coprocessor是HBase的高级功能,本来是只为HBase系统开发人员准备的。因为C...转载 2018-06-20 00:17:21 · 371 阅读 · 0 评论 -
基于Solr实现HBase的二级索引
HBase 二级索引方案的基本原理本文所说的二级索引是针对 HBase 数据表中的 rowkey 一级索引而言的,其原理就是针对数据表主键(rowkey)外的某个或者某些字段列建立的类似于“键 - 值”对的数据结构,以列的值作为“键”,以该列值对应的 rowkey 作为“值”,并按“键”的值进行排序,利用B+ 树或者其他查找效率高的数据结构进行存储,以建立“列值”到 row key 的映射关系...转载 2016-03-18 14:44:30 · 5586 阅读 · 0 评论 -
基于ES的HBase二级索引方案
HBase不支持多条件查询,不提供二级索引,难以满足用户对检索功能多样性和高效率两方面的需求。由索引模块的需求分析可知,本文解决通过,提出数据与索引的分离,利用HBase数据库的存储模式灵活多变,容纳海量数据等特点,结合ES的快速建立索引和提供多样化的查询接口等优势,构建基于ES的HBase二级索引方案。从HBase二级索引现状可知,目前主要解决思路分为两种:第一种是开发人员手动创建和维护索引表,...转载 2016-03-19 12:26:45 · 2535 阅读 · 0 评论 -
基于HBase的大数据存储在京东的应用场景
HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,适用于结构化的存储,底层依赖于Hadoop的HDFS,利用HBase技术可在廉价PCServer上搭建起大规模结构化存储集群。因此,HBase被广泛使用在大数据存储的解决方案中。为何使用HBase1、HBase的优点: 列可以动态增加,并且列为空就不存储数据,节省存储空间 HBase自动切分数据,使得数据存储...转载 2016-03-16 23:25:24 · 2063 阅读 · 0 评论 -
HBase Catalog Tables (region定位原理)
译自: -ROOT- HBase and.META. table structure在HBase中,大部分的操作都是在RegionServer完成的,Client端想要插入,删除,查询数据都需要先找到相应的RegionServer。什么叫相应的RegionServer?就是管理你要操作的那个Region的RegionServer。Client本身并不知道哪个RegionServer管理哪个Regi...转载 2018-05-09 18:03:32 · 1266 阅读 · 0 评论 -
zookeeper和hbase
Client客户端、Master、Region都会通过心跳机制(RPC通信)与zookeeper保持联系。当在Hbase中插入或读取数据时流程如下;1、在Client中写一个Java类运行,客户端只需要连接zookeeper,客户端会从zookeeper中得到Regionserver的映射信息,之后客户端会直接连接到Region Server,2、RegionServer在启动之后会向zookee...转载 2018-05-08 17:41:11 · 1438 阅读 · 1 评论 -
HBase和Hive的区别和适用场景
一、区别:Hbase: Hadoop database 的简称,也就是基于Hadoop数据库,是一种NoSQL数据库,主要适用于海量明细数据(十亿、百亿)的随机实时查询,如日志明细、交易清单、轨迹行为等。 Hive:Hive是Hadoop数据仓库,严格来说,不是数据库,主要是让开发人员能够通过SQL来计算和处理HDFS上的结构化数据,适用于离线的批量数据计算。通过元数据来描述Hdfs上的结构化文本数据,通俗点来说,就是定义一张表来描述HDFS上的结构化文本,包括各列数据名称,数据类型是什么等,方便我转载 2018-05-07 17:39:19 · 308 阅读 · 0 评论 -
HBase的WAL机制
简述WAL(Write-Ahead-Log)预写日志是HBase的RegionServer在处理数据插入和删除的过程中用来记录操作内容的一种日志。在每次Put、Delete等一条记录时,首先将其数据写入到RegionServer对应的HLog文件的过程。 客户端往RegionServer端提交数据的时候,会先写WAL日志,只有当WAL日志写成功以后,客户端才会被告诉提交数据成功,如果写WAL失败会...转载 2016-06-23 10:54:48 · 566 阅读 · 0 评论 -
HBase各种级别的锁以及对读写的阻塞
为了保证并发操作时数据的一致性和性能,HBase中应用了各种各样高效的可重入锁,包括行级别的rowlock、mvcc,region级别的读写锁,store级别的读写锁,memstore级别的读写锁等等。1、 行级别的锁RowLockHBase中为了解决行级别在并发操作中的一致性问题,采用了Rowlock机制。保证只有同一个线程同时对该行做操作。当然rowlock有lease租约的概念,超过期限,...转载 2016-12-16 11:19:56 · 572 阅读 · 0 评论 -
HBase的put流程源码分析
https://blog.csdn.net/bryce123phy/article/details/51279878hbase是一个nosql型数据库,本文我们会分析一下客户的数据是通过什么样的路径写入到hbase的。HBase作为一种列族数据库,其将相关性较高的列聚合成一个列族单元,不同的列族单元物理上存储在不同的文件(HFile)内。一个表的数据会水平切割成不同的region分布在集群中不同...转载 2018-04-04 11:09:20 · 1876 阅读 · 0 评论 -
HBase的Region机制
转载自:HBase的Region机制 HBase 的机制里包含了许多优秀的算法,如 Region 定位、Region 分配、Region Server的上线和下线、Master 的上线和下线。在谈到这些之前,先把 HBase 的基本架构里的一些概念列在这里。一、HBase组成1.Client:利用 RPC 机制与 HMaster 和HRegionServer通信;2.Zookeeper: 协调...转载 2018-04-04 14:41:21 · 13110 阅读 · 0 评论 -
hbase伪分布式安装
开发环境ubuntu 16.04.4 hadoop-2.9.0zookeeper-3.4.10hbase-1.2.6安装配置1、本地安装好hadoop-2.9.0和zookeeper-3.4.10hadoop-2.9.0的core-site.xml配置如下:<configuration> <property> <name>fs.defa...原创 2018-04-11 17:45:30 · 1644 阅读 · 0 评论 -
HBase的Region分裂和合并原理
Region分裂当MemStore的数据超过阈值时,将数据溢写磁盘,生成一个StoreFile文件。当Region中最大Store的大小超过阈值时,Region分裂,等分成两个Region,实现数据访问的负载均衡。新的Region的位置由HMaster来确定在哪个RegionServer中。下面是具体的细节:1.当一个region里的StoreFile增长到大于配置的参数:hbase.hregion.max.filesize的大小,也可以在创建HBase表的时候指定这个参数,region会被一分转载 2018-05-06 17:18:15 · 1307 阅读 · 0 评论 -
hbase的负载均衡策略
1.负载均衡概述Master的LoadBalancer线程周期性的在各个RegionServer间移动region维护负载均衡1 经常被并发查询的数据不要存储在同一个RegionServer中 , 避免热点读取问题 .2 当一个机器上经过大量的插入或者删除数据以后 ,region合并或者分裂 ,那么机器上的region的数量会相差很大 .3 当新增了节点以后 , 应该去分配一些其他机器上的region数据4 当某个RegionServer宕机以后 , 这台机器上数据的分配region的执行转载 2018-05-06 17:25:44 · 2380 阅读 · 0 评论 -
HBase架构解析
转载自:HBase架构解析HBase架构组成HBase采用Master/Slave架构搭建集群,它隶属于Hadoop生态系统,由一下类型节点组成:HMaster节点、HRegionServer节点、ZooKeeper集群,而在底层,它将数据存储于HDFS中,因而涉及到HDFS的NameNode、DataNode等,总体结构如下:其中HMaster节点用于:管理HRegionServer,实现其负载...转载 2018-05-06 20:33:19 · 305 阅读 · 0 评论 -
京东「卖家日志」系统的构建 | 流式计算日志系统应用实践
引言本文讲述如何去构建一个日志系统,用到了哪些技术?为什么用这些技术?遇到的问题及优化的过程,希望给大家在实践中提供一些参考。这是一个有关于日志的项目,负责收集、处理、存储、查询京东卖家相关操作的日志,这里就叫它“卖家日志”。在日常的开发过程中,可能对日志这个词并不陌生,例如常接触到的Log4j、slf4j等等,这些日志工具通常用来记录代码运行的情况,当系统出问题时,可以通过查看日志及时的...转载 2016-03-14 12:43:56 · 775 阅读 · 0 评论