
Hbase
文章平均质量分 59
.
落幕7
山山而川
展开
-
HBase调优
HBase调优预分区(重点)Rowkey设计(重点)In memoryMax VersionCompact&SplitBulkLoading(重点)预分区(重点)HBase的预分区Rowkey设计(重点)rowkey的设计In memory创建表的时候,可以通过HColumnDescriptor.setInMemory(true)将表放到 RegionServer的缓存中,保证在读取的时候被cache命中。Max Version创建表的时候,可以通过HColumnDescriptor原创 2021-10-18 19:11:05 · 578 阅读 · 0 评论 -
HBase BulkLoading
HBase BulkLoading优点:如果我们一次性入库hbase巨量数据,处理速度慢不说,还特别占用Region资源, 一个比较高效便捷的方法就是使用 “Bulk Loading”方法,即HBase提供的HFileOutputFormat类。它是利用hbase的数据信息按照特定格式存储在hdfs内这一原理,直接生成这种hdfs内存储的数据格式文件,然后上传至合适位置,即完成巨量数据快速入库的办法。配合mapreduce完成,高效便捷,而且不占用region资源,增添负载。限制:原创 2021-10-17 21:17:55 · 472 阅读 · 0 评论 -
Hbase的RowKey设计
HBase的RowKey设计文章目录HBase的RowKey设计rowkey长度原则rowkey散列原则rowkey唯一原则热点问题加盐哈希反转时间戳反转其他一些建议HBase是三维有序存储的,通过rowkey(行键),column key(column family和qualifier)和TimeStamp(时间戳)这个三个维度可以对HBase中的数据进行快速定位。HBase中rowkey可以唯一标识一行记录,在HBase查询的时候,有三种方式:通过get方式,指定rowkey获取唯一一条记录原创 2021-10-16 20:50:15 · 628 阅读 · 0 评论 -
MapReduce读写HBase
读:package com.liu;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.client.Result;import org.apache.hadoop.hbase.client.Scan;import org.ap.原创 2021-10-15 15:37:56 · 717 阅读 · 0 评论 -
Hbase的HA(高可用)
ZooKeeper在HBASE高可用中的作用:1.元数据同步2.主备切换HMaster:主HMaster在启动时会在ZooKeeper中/master节点注册备用的HMaster在启动时会在ZooKeeper中backup-masters节点注册HMaster只有一个,当进程挂了,那么会对HBase集群造成影响(单节点故障)解决办法:在另外一台服务器上,例如slave1,在启动一个HMaster启动命令:cd /usr/local/soft/hbase-1.6.0/./bin/原创 2021-10-15 14:54:29 · 1329 阅读 · 0 评论 -
在Hbase1.6.0搭建phoenix-4.16.0并以及Phoenix创建二级索引
PhoenixHbase适合存储大量的对关系运算要求低的NOSQL数据,受Hbase 设计上的限制不能直接使用原生的API执行在关系数据库中普遍使用的条件判断和聚合等操作。Hbase很优秀,一些团队寻求在Hbase之上提供一种更面向普通开发人员的操作方式,Apache Phoenix即是。Phoenix 基于Hbase给面向业务的开发人员提供了以标准SQL的方式对Hbase进行查询操作,并支持标准SQL中大部分特性:条件运算,分组,分页,等高级查询语法。文章目录Phoenix1、Phoenix原创 2021-10-14 22:11:40 · 888 阅读 · 0 评论 -
Hbase预分区
背景:HBase默认建表时有一个region,这个region的rowkey是没有边界的,即没有startkey和endkey,在数据写入时,所有数据都会写入这个默认的region,随着数据量的不断 增加,此region已经不能承受不断增长的数据量,会进行split,分成2个region。在此过程中,会产生两个问题:1.数据往一个region上写,会有写热点问题。2.region split会消耗宝贵的集群I/O资源。基于此我们可以控制在建表的时候,创建多个空region,并确定每个region的起始和终转载 2021-10-13 21:21:26 · 2038 阅读 · 0 评论 -
Hbase概述图
原创 2021-10-12 21:06:29 · 464 阅读 · 0 评论 -
Hbase过滤器
HBase过滤器文章目录HBase过滤器作用比较过滤器比较运算符常见的六大比较过滤器BinaryComparatorBinaryPrefixComparatorNullComparatorBitComparatorRegexStringComparatorSubstringComparator示例代码rowKey过滤器:RowFilter列簇过滤器:FamilyFilter列过滤器:QualifierFilter列值过滤器:ValueFilter专用过滤器单列值过滤器:SingleColumnValueF原创 2021-10-11 22:17:15 · 1126 阅读 · 0 评论 -
HbaseAPI
package com.liu;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;import org.apache.hadoop.hbase.TableName;i原创 2021-10-11 22:11:31 · 468 阅读 · 0 评论 -
Hbase shell
进入HBase shellhbase shell创建表语法:create <table>, {NAME => <family>, VERSIONS => <VERSIONS>}创建一个User表,并且有一个info列族create 'User','info'list #查看所有表describe 'User' #查看表详情表修改删除指定的列族alter 'User','delete'=>'info'增加新的列族alt原创 2021-10-10 10:16:10 · 469 阅读 · 0 评论 -
Hbase读写流程
Hbase读流程读:① HRegionServer 保存着 meta 表以及表数据,要访问表数据,首先 Client 先去访问zookeeper,从 zookeeper 里面获取 meta 表所在的位置信息,即找到这个 meta 表在哪个HRegionServer 上保存着。② 接着 Client 通过刚才获取到的 HRegionServer 的 IP 来访问 Meta 表所在的HRegionServer,从而读取到 Meta,进而获取到 Meta 表中存放的元数据。③ Client 通过元数据中原创 2021-10-10 09:29:07 · 550 阅读 · 0 评论 -
Hbase架构
hadoop生态图一、Hbase简介HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩、实时读写的分布式数据库利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为其分布式协同服务主要用来存储非结构化和半结构化的松散数据(列存 NoSQL 数据库)二、Hbase系统架构图Client提供了访问HBase的一系列API接口,如Java Native API、Rest风格h原创 2021-10-09 20:42:18 · 570 阅读 · 0 评论 -
hbase1.6.0搭建
准备1、启动hadoopstart-all.sh验证http://master:500702、启动zookeeper需要在在三台中分别启动zkServer.sh startzkServer.sh status搭建hbase1、上传解压配置环境变量 tar -zxvf hbase-1.6.0-bin.tar.gz -C /usr/local/soft2、修改hbase-env.sh文件vim hbase-env.sh增加java配置export JAVA_HOME=/us原创 2021-10-09 19:14:45 · 762 阅读 · 0 评论