
HBase
文章平均质量分 82
mm_bit
这个作者很懒,什么都没留下…
展开
-
HBase深入学习(1)
HBase架构组成HBase采用Master/Slave架构搭建集群,它隶属于Hadoop生态系统,由一下类型节点组成:HMaster节点、HRegionServer节点、ZooKeeper集群,而在底层,它将数据存储于HDFS中,因而涉及到HDFS的NameNode、DataNode等,总体结构如下:其中HMaster节点用于:管理HRegionServer,实现转载 2016-03-21 17:18:23 · 835 阅读 · 0 评论 -
HBase-1.2.1之查找Region位置的源码学习
首先需要清楚的是:zookeeper上存放的是meta表在region的地址真正的meta表数据是存放在region上的,和其他普通的数据表是一样的。以get操作为例:在HTable中的get方法中的return rpcCallerFactory.newCaller().callWithRetries(callable,this.operationTimeout);--->原创 2016-07-28 17:00:40 · 880 阅读 · 0 评论 -
HBase集群中RegionServer崩溃后的快速恢复措施探索
随着互联网和通信行业的迅猛发展,积聚的各种数据呈急剧增长态势。这些海量数据既蕴含着丰富的信息和资源,又面临着信息有效管理和提取的难题。云计算是分布式处理、并行处理和网格计算的发展,可以提供近乎无限的廉价存储和计算能力,特别适合于日益暴增的海量数据的存储和处理。在云计算领域中,Hadoop体系独树一帜,其丰富的子系统可以满足多种领域和行业的应用需求,而其中的HBase作为一种非结构化数据库,特别适合转载 2016-07-08 09:49:07 · 2335 阅读 · 0 评论 -
HBase-1.2.1之HRegionServer启动源码学习
在hbase-server项目中的org.apache.hadoop.hbase.regionserver.HRegionServer类中。public HRegionServer(Configuration conf, CoordinatedStateManager csm) throws IOException, InterruptedException { this.原创 2016-07-28 14:49:27 · 1552 阅读 · 0 评论 -
HBase-1.2.1之Get操作源码学习
最近在学习HBase的源码,主要是学习HRegionServer部分。从Get请求入手,找到了主要的实现类:Get,HTable,ConnectionManager等。具体如下:Get操作:使用Java API读取数据:1、 实例化Configuration类Configuration conf = HbaseConfiguration.create();在Hba原创 2016-05-30 15:09:32 · 1571 阅读 · 1 评论 -
hbase错误:Org.apache.hadoop.ipc.RemoteException:User:client is not allowed to impersonate root
场景:远程登录配有Kerberos的hbase的时候,client端用到的kerberos的principal是client/mj1@BDSM.CMCC错误:Org.apache.hadoop.ipc.RemoteException:User:clientis not allowed to impersonate root;解决方法:在hadoop的配置文件core-site.xm原创 2016-07-29 10:57:06 · 5235 阅读 · 0 评论 -
通过hive访问hbase中的表
在hbase中创建表后,我们只能在hbase shell中使用scan查询数据,这对于熟悉SQL的使用者不怎么习惯,不过我们可以在hive中创建外部表来访问hbase表中的数据,例子如下:1.这里hbase中的表oss_user_label_action_data已经存在=> #hbase(main):067:0> scan 'oss_user_label_action_dat转载 2016-07-19 16:58:49 · 1390 阅读 · 0 评论 -
用Java访问带有Kerberos认证的HBase
开始之前 因为HBase的存储系统是基于Hadoop的存储,现在Hadoop已经增加了Kerberos认证机制,这样HBase的客户端访问HBase数据库的时候也需要进行身份的认证。 Kerberos是一个认证中心,客户端在访问HBase前必须通过认证才能访问,下图是Kerberos的认证图: 我们不需要详细介绍Kerbero转载 2016-07-19 18:26:41 · 14204 阅读 · 0 评论 -
hbase-1.2.1之put操作源码学习
Put操作:1. 实例化Configuration类Configuration conf = HbaseConfiguration.create();同Get操作。2、 实例化HTable类HTable hTable = new HTable(conf,tableName);同Get操作。3、 实例化Put类Put p = new Put(Byte原创 2016-07-28 14:58:52 · 1549 阅读 · 0 评论 -
HBase 写优化之 BulkLoad 实现数据快速入库
1、为何要 BulkLoad 导入?传统的 HTableOutputFormat 写 HBase 有什么问题?我们先看下 HBase 的写流程:通常 MapReduce 在写HBase时使用的是 TableOutputFormat 方式,在reduce中直接生成put对象写入HBase,该方式在大数据量写入时效率低下(HBase会block写入,频繁进行flush,split,comp转载 2016-08-01 17:45:33 · 2717 阅读 · 0 评论 -
HBase数据库检索性能优化策略
HBase 数据表介绍HBase 数据库是一个基于分布式的、面向列的、主要用于非结构化数据存储用途的开源数据库。其设计思路来源于 Google 的非开源数据库”BigTable”。HDFS 为 HBase 提供底层存储支持,MapReduce 为其提供计算能力,ZooKeeper 为其提供协调服务和 failover(失效转移的备份操作)机制。Pig 和 Hive 为 HBase转载 2016-03-21 18:01:29 · 856 阅读 · 0 评论 -
java api登录远程配有kerbeors的hbase实现
昨天开始才知道IDEA Intellij中可以在打包的jar包中设置断点进行debug,于是决定把之前遗留下的连接远程hbase的问题重新捡起解决。现在的环境:client端:是windows10的系统,开发工具为IDEA Intellij 远程的服务器端:是非本地机的centos系统。使用的hadoop为2.7.2版本,hbase为1.2.1原创 2016-07-22 17:57:06 · 3307 阅读 · 0 评论 -
Hbase安装kerberos及远程登录配置
1. 安装ZK, 单机多实例配置及启动· 创建data目录, 创建datalog目录· 1040 mkdir data 1041 cd data/ 1043 mkdir slave1 1044 mkdir slave2 1045 mkdir slave3 1046 cd .. 1047 mkdir datalog 10原创 2016-07-19 10:17:07 · 8912 阅读 · 2 评论 -
hbase-1.2.1之协处理器的源码学习
HBase中的协处理器:两种:observer和endpointObserver:RegionServerObserver:钩子函数主要是针对对region的管理的,比如merge,writeWAL,createRElplicationEndPoint,replicateLogEntries.RegionObserver:钩子函数主要是针对client端对region上的数据操作,比如原创 2016-07-28 15:56:22 · 1646 阅读 · 0 评论 -
hbase-1.2.1之scan、batch操作的源码学习
Scan操作:1、 实例化Configuration类Configuration conf = HbaseConfiguration.create();同Get操作。2、 实例化HTable类HTable hTable = new HTable(conf,tableName);同Get操作。3、 实例化Scan类Scan scan = new Scan();原创 2016-07-28 15:13:15 · 2008 阅读 · 0 评论 -
HBase深入学习(2)
HBase读的实现通过前文的描述,我们知道在HBase写时,相同Cell(RowKey/ColumnFamily/Column相同)并不保证在一起,甚至删除一个Cell也只是写入一个新的Cell,它含有Delete标记,而不一定将一个Cell真正删除了,因而这就引起了一个问题,如何实现读的问题?要解决这个问题,我们先来分析一下相同的Cell可能存在的位置:首先对新写入的Cell,它会存在于转载 2016-03-21 17:20:54 · 547 阅读 · 0 评论 -
HBase特征
Hbase是运行在Hadoop上的NoSQL数据库,它是一个分布式的和可扩展的大数据仓库,也就是说HBase能够利用HDFS的分布式处理模式,并从Hadoop的MapReduce程序模型中获益。这意味着在一组商业硬件上存储许多具有数十亿行和上百万列的大表。除去Hadoop的优势,HBase本身就是十分强大的数据库,它能够融合key/value存储模式带来实时查询的能力,以及通过MapReduce进转载 2016-03-21 18:03:33 · 1031 阅读 · 0 评论 -
HBase周边知识
HBase 不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.所谓非结构化数据存储就是说HBase是基于列的而不是基于行的模式,这样方便读写你的大数据内容。HBase是介于Map Entry(key & value)和DB Row之间的一种数据存储方式。就点有点类似于现在流行的Memcache,但不仅仅是简单的一个key对应一个 value,你很可能需要存储多个属性的数据结构转载 2016-03-21 18:10:15 · 708 阅读 · 0 评论 -
java操作HBase
本篇文章讲述用HBase Shell命令 和 HBase Java API 对HBase 服务器 进行操作。在此之前需要对HBase的总体上有个大概的了解。比如说HBase服务器内部由哪些主要部件构成?HBase的内部工作原理是什么?我想学习任何一项知识、技术的态度不能只是知道如何使用,对产品的内部构建一点都不去关心,那样出了问题,很难让你很快的找到答案,甚至我们希望最后能对该项技术的领悟出自己的转载 2016-03-21 18:12:07 · 741 阅读 · 0 评论 -
HBase优化技巧、存储
这篇文章浅显的从几个方面谈谈HBase的一些优化技巧,只能作为我学习笔记的一部分,因为学多了怕忘,留给自己以后看看。1 修改 linux 系统参数Linux系统最大可打开文件数一般默认的参数值是1024,如果你不进行修改并发量上来的时候会出现“Too Many Open Files”的错误,导致整个HBase不可运行,你可以用ulimit -n 命令进行修改,或者修改/etc/se转载 2016-03-21 18:14:14 · 2017 阅读 · 0 评论 -
HBase笔记
HBase是面向列存储的列式数据库列式数据库:对数据库中的数据存储时,是按照列来存储的。附:对于普通的行式关系型数据库,对于查询语句SELECT ID, NAME FROM STUDENT,则处理该查询命令时,是先从STUDENT表中将所有列的数据都查出来返回给客户端,然后再客户端在将ID列和NAME列过滤出来呈现给客户,这样对于磁盘的IO消耗太大,查询速度就会降低。对于列式数据库来说,原创 2016-03-25 16:44:00 · 551 阅读 · 0 评论 -
Caused by: org.apache.zookeeper.KeeperException$AuthFailedException: KeeperErrorCode = AuthFailed fo
在配置hbase的kerberos认证时,启动zookeeper之后,启动hbase出现如下错误,导致HMaster立马down掉但是接着在zkEnv.sh中配置了如下内容之后,SERVER_JVMFLAGS="-Dsun.net.spi.nameservice.provider.1=dns,sun"启动zookeeper出现了如下错误:2016-04-29 1原创 2016-04-29 16:34:06 · 14013 阅读 · 2 评论 -
HBase中的HMaster、HRegionServer、Zookeeper
HMaster是HBase主/从集群架构中的中央节点。通常一个HBase集群存在多个HMaster节点,其中一个为Active Master,其余为Backup Master.Hbase每时每刻只有一个hmaster主服务器程序在运行,hmaster将region分配给region服务器,协调region服务器的负载并维护集群的状态。Hmaster不会对外提供数据服务,而是由region服原创 2016-05-03 16:00:44 · 10266 阅读 · 0 评论 -
Hbase安装
环境:CentOS6.5 Hadoop2.7.2 HBase1.2.11.安装好 hadoop 集群,并启动 [grid@hadoop4 ~]$ sh hadoop-2.7.2/sbin/start-dfs.sh [grid@hadoop4 ~]$ sh hadoop-2.7.2/sbin/start-yarn.sh 查看 hadoop 版本: [grid@hadoop原创 2016-04-19 19:19:39 · 1325 阅读 · 0 评论 -
Apache Ranger0.6版本源码编译
1 Ranger简介Apache Ranger提供一个集中式安全管理框架,它可以对Hadoop生态的组件如Hive,Hbase进行细粒度的数据访问控制.通过操作Ranger控制台,管理员可以轻松的通过配置策略来控制用户访问HDFS文件夹、HDFS文件、数据库、表、字段权限.这些策略可以为不同的用户和组来设置,同时权限可与hadoop无缝对接.2 准备2.1 环境说明1 Ra原创 2016-04-21 18:44:02 · 3763 阅读 · 11 评论 -
HBase学习
HBase简介HBase是Apache Hadoop的数据库,能够对大型数据提供随机、实时的读写访问,是Google的BigTable的开源实现。HBase的目标是存储并处理大型的数据,更具体地说仅用普通的硬件配置,能够处理成千上万的行和列所组成的大型数据库。HBase是一个开源的、分布式的、多版本的、面向列的存储模型。可以直接使用本地文件系统也可使用Hadoop的HDFS文件存储系统转载 2016-05-06 18:34:48 · 981 阅读 · 0 评论 -
hbase1.2.1配置kerberos
今天需要在hbase上配置kerberos认证,所以需要安装kerberos,安装配置过程如下:kerberos简介kerberos简单来说就是一套完全控制机制,它有一个中心服务器(KDC),KDC中有数据库,你可以往里添加各种“人”以及各种“服务”的“身份证”,当某个人要访问某个服务时,他拿着自己的“身份证”联系KDC并告诉KDC他想要访问的服务,KDC经过一系列验证步骤,最原创 2016-04-29 17:25:05 · 8485 阅读 · 1 评论