简单,可复制

点点滴滴,尽在文中

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
上一页 1 2 3 4 5 6 ··· 43 下一页

2013年10月22日

摘要: 本文主要是从HBase应用程序设计与开发的角度,总结几种常用的性能优化方法。有关HBase系统配置级别的优化,这里涉及的不多,这部分可以参考:淘宝Ken Wu同学的博客。1. 表的设计1.1 Pre-Creating Regions默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分。一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入HBase时,会按照region分区情况,在集群内做数据的负载均衡。有关预分区,详情参见:Table Cre 阅读全文
posted @ 2013-10-22 09:50 ggjucheng 阅读(3633) 评论(0) 推荐(0) 编辑

摘要: 因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果。所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正。配置优化zookeeper.session.timeout默认值:3分钟(180000ms)说明:RegionServer与Zookeeper间的连接超时时间。当超时时间到后,ReigonServer会被Zookeeper从RS集群清单中移除,HMaster收到移除通知后,会对这台server负责的regions重新balance,让其他存活的RegionServer接管.调优:这个timeout决定了Regio 阅读全文
posted @ 2013-10-22 09:49 ggjucheng 阅读(6540) 评论(0) 推荐(1) 编辑

2013年10月21日

摘要: HBase提供了Java Api的访问接口,掌握这个就跟Java应用使用RDBMS时需要JDBC一样重要,本文将继续前两篇文章中blog表的示例,介绍常用的Api。import java.io.IOException;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor; 阅读全文
posted @ 2013-10-21 20:39 ggjucheng 阅读(52441) 评论(0) 推荐(4) 编辑

摘要: 几个相关类与HBase数据模型之间的对应关系java类HBase数据模型HBaseAdmin数据库(DataBase)HBaseConfigurationHTable表(Table)HTableDescriptor列族(Column Family)Put列修饰符(Column Qualifier)GetScanner一、HBaseConfiguration关系:org.apache.hadoop.hbase.HBaseConfiguration作用:对HBase进行配置返回值函数描述voidaddResource(Path file)通过给定的路径所指的文件来添加资源voidclear()清. 阅读全文
posted @ 2013-10-21 11:26 ggjucheng 阅读(11621) 评论(0) 推荐(1) 编辑

摘要: HBase的服务器体系结构遵循简单的主从服务器架构,它由HRegion服务器(HRegion Server)群和HBase Master服务器(HBase Master Server)构成。HBase Master服务器负责管理所有的HRegion服务器,而HBase中所有的服务器都是通过ZooKeeper来进行协调,并处理HBase服务器运行期间可能遇到的错误。HBase Master Server本身不存储HBase中的任何数据,HBase逻辑上的表可能会被划分为多个HRegion,然后存储到HRegion Server群中,HBase Master Server中存储的是从数据到HReg 阅读全文
posted @ 2013-10-21 11:08 ggjucheng 阅读(5902) 评论(0) 推荐(2) 编辑

2013年10月20日

摘要: HBase shell的基本用法hbase提供了一个shell的终端给用户交互。使用命令hbase shell进入命令界面。通过执行 help可以看到命令的帮助信息。以网上的一个学生成绩表的例子来演示hbase的用法。namegradcoursemathartTom59787Jim48980这里grad对于表来说是一个只有它自己的列族,course对于表来说是一个有两个列的列族,这个列族由两个列组成math和art,当然我们可以根据我们的需要在course中建立更多的列族,如computer,physics等相应的列添加入course列族。(1)建立一个表scores,有两个列族grad和co 阅读全文
posted @ 2013-10-20 21:56 ggjucheng 阅读(20538) 评论(0) 推荐(1) 编辑

摘要: HBase使用场景和成功案例有时候了解软件产品的最好方法是看看它是怎么用的。它可以解决什么问题和这些解决方案如何适用于大型应用架构,能够告诉你很多。因为HBase有许多公开的产品部署,我们正好可以这么做。本章节将详细介绍一些人们成功使用HBase的使用场景。注意:不要自我限制,认为HBase只能解决这些使用场景。它是一个初生的技术,根据使用场景进行创新正驱动着系统的发展。如果你有新想法,认为可以受益于HBase提供的功能,试试吧。社区很乐于帮助你,也会从你的经验中学习。这正是开源软件精神。HBase仿效了Google的BigTable,让我们开始探索典型的BigTable问题:存储互联网。典型 阅读全文
posted @ 2013-10-20 20:46 ggjucheng 阅读(28789) 评论(0) 推荐(2) 编辑

2013年10月18日

摘要: 本文的主题就是讲解Zookeeper通信模型,本节将通过一个概要图来说明Zookeeper的通信模型。Zookeeper的通信架构在Zookeeper整个系统中,有3中角色的服务,client、Follower、leader。其中client负责发起应用的请求,Follower接受client发起的请求,参与事务的确认过程,在leader crash后的leader选择。而leader主要承担事务的协调,当然leader也可以承担接收客户请求的功能,为了方便描述,后面的描述都是client与Follower之间的通信,如果Zookeeper的配置支持leader接收client的请求,clie 阅读全文
posted @ 2013-10-18 18:13 ggjucheng 阅读(9364) 评论(0) 推荐(2) 编辑

摘要: Zookeeper的Client直接与用户打交道,是我们使用Zookeeper的interface。了解ZK Client的结构和工作原理有利于我们合理的使用ZK,并能在使用中更早的发现问题。本文将在研究源码的技术上讲述ZK Client的工作原理及内部工作机制。在看完ZK Client的大致架构以后我希望能有一种简单的方式描述ZK Client的基本结构,想来想去我觉得还是图片比较能反映情况,于是我画了这张大致的结构图:我想既然我画了这张图,就让我们从这张图开始讲起吧。模块:我们可以认为ZK的Client由三个主要模块组成:Zookeeper, WatcherManager, ClientC 阅读全文
posted @ 2013-10-18 18:07 ggjucheng 阅读(16621) 评论(0) 推荐(1) 编辑

摘要: 原计划在介绍完ZK Client之后就着手ZK Server的介绍,但是发现ZK Server所包含的内容实在太多,并不是简简单单一篇Blog就能搞定的。于是决定从基础搞起比较好。那么ZK Server最基础的东西是什么呢?我想应该是Paxos了。所以本文会介绍Paxos以及它在ZK Server中对应的实现。先说Paxos,它是一个基于消息传递的一致性算法,Leslie Lamport在1990年提出,近几年被广泛应用于分布式计算中,Google的Chubby,Apache的Zookeeper都是基于它的理论来实现的,Paxos还被认为是到目前为止唯一的分布式一致性算法,其它的算法都是Pax 阅读全文
posted @ 2013-10-18 17:59 ggjucheng 阅读(3620) 评论(0) 推荐(1) 编辑

上一页 1 2 3 4 5 6 ··· 43 下一页