Hbase
文章平均质量分 85
weixin_42073629
这个作者很懒,什么都没留下…
展开
-
HBase 数据迁移方案介绍
一、前言HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分为以下几类:图1.HBase数据迁移方案从上面图中可看出,目前的方案主要有四类,Hadoop层有一类,HBase层有三类。下面分别介绍一下。二、Hadoop层数据迁移2.1 方案介绍Hadoop层的数据迁移主要用到DistCp(Distributed Copy), 官方描述是:DistCp(分布式拷贝)是用于大规模集群内部和集群之间拷贝的工具。 它使用Map/Reduce实现文件分发,错误处理和恢复,以原创 2021-07-12 01:01:11 · 677 阅读 · 1 评论 -
Sqoop导入HBase,并借助Coprocessor协处理器同步索引到ES
1.环境Mysql 5.6 Sqoop 1.4.6 Hadoop 2.5.2 HBase 0.98 Elasticsearch 2.3.52.安装(略过)3.HBase Coprocessor实现HBase Observerimport org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache.hadoop.conf.Configuration;原创 2021-07-11 15:20:58 · 294 阅读 · 0 评论 -
通过HBase Observer同步数据到ElasticSearch
Observer希望解决的问题HBase是一个分布式的存储体系,数据按照RowKey分成不同的Region,再分配给RegionServer管理。但是RegionServer只承担了存储的功能,如果Region能拥有一部分的计算能力,从而实现一个HBase框架上的MapReduce,那HBase的操作性能将进一步提升。正是为了解决这一问题,HBase 0.92版本后推出了Coprocessor – 协处理器,一个工作在Master/RegionServer中的框架,能运行用户的代码,从而灵活地完成分布式原创 2021-07-11 15:06:11 · 242 阅读 · 0 评论 -
HBase系统架构及数据结构
一、基本概念一个典型的 Hbase Table 表如下:1.1 Row Key (行键)Row Key是用来检索记录的主键。想要访问 HBase Table 中的数据,只有以下三种方式: 通过指定的Row Key进行访问; 通过 Row Key 的 range 进行访问,即访问指定范围内的行; 进行全表扫描。 Row Key可以是任意字符串,存储时数据按照Row Key的字典序进行排序。这里需要注意以下两点: 因为字典序对 Int 排序的结果是...原创 2020-10-25 01:07:08 · 256 阅读 · 2 评论 -
HBase容灾与备份
一、前言本文主要介绍 Hbase 常用的三种简单的容灾备份方案,即CopyTable、Export/Import、Snapshot。分别介绍如下:二、CopyTable2.1 简介CopyTable可以将现有表的数据复制到新表中,具有以下特点:支持时间区间 、row 区间 、改变表名称 、改变列族名称 、以及是否 Copy 已被删除的数据等功能; 执行命令前,需先创建与原表结构相同的新表; CopyTable的操作是基于 HBase Client API 进行的,即采用scan...原创 2020-10-25 01:06:59 · 304 阅读 · 0 评论 -
HBase —— 集群环境搭建
一、集群规划这里搭建一个 3 节点的 HBase 集群,其中三台主机上均为Regin Server。同时为了保证高可用,除了在 hadoop001 上部署主Master服务外,还在 hadoop002 上部署备用的Master服务。Master 服务由 Zookeeper 集群进行协调管理,如果主Master不可用,则备用Master会成为新的主Master。二、前置条件HBase 的运行需要依赖 Hadoop 和 JDK(HBase 2.0+对应JDK 1.8+) ...原创 2020-10-25 01:06:48 · 190 阅读 · 0 评论 -
HBase —— 单机环境搭建
一、安装前置条件说明1.1 JDK版本说明HBase 需要依赖 JDK 环境,同时 HBase 2.0+ 以上版本不再支持 JDK 1.7 ,需要安装 JDK 1.8+ 。JDK 安装方式见本仓库:Linux 环境下 JDK 安装1.2 Standalone模式和伪集群模式的区别在Standalone模式下,所有守护进程都运行在一个jvm进程/实例中; 在伪分布模式下,HBase 仍然在单个主机上运行,但是每个守护进程 (HMaster,HRegionServer 和 Zo...原创 2020-10-25 01:06:26 · 247 阅读 · 0 评论 -
Phoenix的安装使用与SQL查询HBase
一. Phoenix的简介1. 什么是phoenix 现有hbase的查询工具有很多如:Hive,Tez,Impala,Shark/Spark,Phoenix等。今天主要说Phoenix。phoenix是一个在hbase上面实现的基于hadoop的OLTP技术,具有低延迟、事务性、可使用sql、提供jdbc接口的特点。而且phoenix还提供了hbase二级索引的解决方案,丰富了hbase查询的多样性,继承了hbase海量数据快速随机查询的特点。但是在生产环境中,不可以用在OLTP中。在...原创 2020-10-06 00:02:38 · 3109 阅读 · 0 评论 -
HBase应用之微博案例
一. 需求分析1)微博内容的浏览,数据库表设计2)用户社交体现:关注用户,取关用户3)拉取关注的人的微博内容二. 代码实现代码设计总览:1.创建命名空间以及表名的定义//获取配置 confprivate Configuration conf = HBaseConfiguration.create();//微博内容表的表名private static final byte[] TABLE_CONTENT = Bytes.toBytes("ns_weibo:conten...原创 2020-10-06 00:02:27 · 666 阅读 · 0 评论 -
HBase(十)HBase性能调优总结
一. HBase的通用优化1高可用 在HBase中Hmaster负责监控RegionServer的生命周期,均衡RegionServer 的负载,如果Hmaster挂掉了,那么整个HBase 集群将陷入不健康的状态,并且此时的工作状态并不会维持太久。所以HBase支持对Hmaster 的高可用配置。HBase的高可用集群搭建参考:CentOS7.5搭建HBase1.2.6HA集群2Hadoop的通用性优化1)NameNode元数据备份使用S...原创 2020-10-06 00:02:14 · 596 阅读 · 0 评论 -
HBase(九)HBase表以及Rowkey的设计
一 命名空间1命名空间的结构1)Table:表,所有的表都是命名空间的成员,即表必属于某个命名空间,如果没有指定,则在default默认的命名空间中。2)RegionServergroup:一个命名空间包含了默认的RegionServerGroup。3)Permission:权限,命名空间能够让我们来定义访问控制列表ACL(AccessControlList)。例如,创建表,读取表,删除,更新等等操作。4)Quota:限额,可以强制一个命名空间可包含的r...原创 2020-10-06 00:02:02 · 294 阅读 · 0 评论 -
HBase(八)HBase的协处理器
一、协处理器简介1、 起源 Hbase 作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执 行求和、计数、排序等操作。比如,在旧版本的(<0.92)Hbase 中,统计数据表的总行数,需 要使用 Counter 方法,执行一次 MapReduce Job 才能得到。虽然 HBase 在数据存储层中集成 了 MapReduce,能够有效用于数据表的分布式计算。然而在很多情况下,做一些简单的相 加或者聚合计算的时候,如果直接将计算过程放置在 server 端,能够减少通讯开原创 2020-10-06 00:01:49 · 178 阅读 · 0 评论 -
HBase(七)Hbase过滤器
一、过滤器(Filter) 基础API中的查询操作在面对大量数据的时候是非常苍白的,这里Hbase提供了高级的查询方法:Filter。Filter可以根据簇、列、版本等更多的条件来对数据进行过滤,基于Hbase本身提供的三维有序(主键有序、列有序、版本有序),这些Filter可以高效的完成查询过滤的任务。带有Filter条件的RPC查询请求会把Filter分发到各个RegionServer,是一个服务器端(Server-side)的过滤器,这样也可以降低网络传输的压力。 要完成一个过滤的操作,至原创 2020-10-06 00:01:38 · 395 阅读 · 0 评论 -
HBase(六)HBase整合Hive,数据的备份与MR操作HBase
一.数据的备份与恢复1. 备份停止HBase服务后,使用distcp命令运行MapReduce 任务进行备份,将数据备份到另一个地方,可以是同一个集群,也可以是专用的备份集群。即,把数据转移到当前集群的其他目录下(也可以不在同一个集群中):$ bin/hadoop distcp \ hdfs://node21:8020/hbase \hdfs://node21:8020/HbaseBackup/backup20180820尖叫提示:执行该操作,一定要开启Yarn 服务...原创 2020-10-06 00:01:26 · 475 阅读 · 0 评论 -
HBase(五)HBase的API操作
一、项目环境搭建新建MavenProject,新建项目后在pom.xml 中添加依赖:<dependency><groupId>org.apache.hbase</groupId><artifactId>hbase-server</artifactId><version>1.2.6</version></dependency><dependency><groupId&...原创 2020-10-06 00:01:14 · 534 阅读 · 0 评论 -
HBase(四)HBase集群Shell操作
一、进入HBase命令行在你安装的随意台服务器节点上,执行命令:hbase shell,会进入到你的 hbase shell 客 户端[admin@node21 ~]$ hbase shellSLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/opt/module/hbase-1.2.6/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/原创 2020-10-05 01:02:01 · 1014 阅读 · 0 评论 -
HBase(三)HBase架构与工作原理
一、系统架构注意:应该是每一个 RegionServer 就只有一个 HLog,而不是一个 Region 有一个 HLog。从HBase的架构图上可以看出,HBase中的组件包括Client、Zookeeper、HMaster、HRegionServer、HRegion、Store、MemStore、StoreFile、HFile、HLog等,接下来介绍他们的作用。1、Client1、HBase 有两张特殊表:.META.:记录了用户所有表拆分出来的的 Region 映射...原创 2020-10-05 00:42:43 · 773 阅读 · 0 评论 -
HBase(二)CentOS7.5搭建HBase1.2.6HA集群
一、安装前提1、HBase 依赖于 HDFS 做底层的数据存储2、HBase 依赖于 MapReduce 做数据计算3、HBase 依赖于 ZooKeeper 做服务协调4、HBase源码是java编写的,安装需要依赖JDK1、版本选择打开官方的版本说明http://hbase.apache.org/1.2/book.htmlJDK的选择Hadoop的选择此处我们的hadoop版本用的的是2.7.6,HBase选择的版本是1.2.62、下载安装包官网下原创 2020-10-05 00:41:14 · 214 阅读 · 0 评论 -
HBase(一)HBase入门简介
一HBase的起源HBase的原型是Google的BigTable论文,受到了该论文思想的启发,目前作为Hadoop 的子项目来开发维护,用于支持结构化的数据存储。ApacheHBase™是Hadoop数据库,这是一个分布式,可扩展的大数据存储。当您需要随机,实时读取/写入您的大数据时使用Apache HBase™。该项目的目标是托管非常大的表 - 数十亿行×数百万列 - 在商品硬件集群上。Apache HBase是一个开源的,分布式的,版本化的非关系数据库,其模型是由Chan...原创 2020-10-05 00:25:57 · 197 阅读 · 0 评论
分享