12 JavaMan_chen

尚未进行身份认证

我就是传说中的java男!

等级
TA的排名 9k+

elasticsearch选举master

数据节点确定了master以后,会开启MasterPinger线程来与其保持心跳通信的逻辑如果通信过程中链接断开,会通过MasterNodeFailureListener监听器进行回调处理处理过程中会去调用ZenDiscovery类的handleMasterGone方法,以便选举出新的master进行通信master的选举逻辑主要是通过ZenDiscovery类findMaster方法来封装的,大

2015-12-21 10:06:37

将kafka工程转成maven项目

kafka默认提供的源码是通过sbt进行构建的,在向eclipse导入的时候不是很方便,所以可先将其转换成maven项目,pom.xml配置如下:<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="h

2015-12-05 01:20:30

Region拆分逻辑

TableofContentsRegion拆分拆分前提获取拆分点执行拆分回滚操作Region拆分Region的拆分逻辑是通过CompactSplitThread线程的requestSplit方法来触发的,每当执行MemstoreFlush操作时都会调用该方法进行判断,看是否有必要对目标Region进行拆分。拆分前提Region可拆分的前提是需要满足如下约束条件:目标RegionServer的线

2015-08-28 10:21:20

HFile存储格式

TableofContentsHFile存储格式Block块结构HFile存储格式HFile是参照谷歌的SSTable存储格式进行设计的,所有的数据记录都是通过它来完成持久化,其内部主要采用分块的方式进行存储,如图所示:每个HFile内部包含多种不同类型的块结构,这些块结构从逻辑上来讲可归并为两类,分别用于数据存储和数据索引(简称数据块和索引块),其中数据块包括:(1)DATA_BLOCK:

2015-08-21 14:10:00

RegionServer功能职责

TableofContentsRegionServer功能职责租约管理Nonce管理堆内存监控健康检测RegionServer功能职责租约管理HBase的租约管理功能主要应用在scan查询上,如果客户端执行scan操作以后,在60秒内没有将Scanner进行关闭,也没有显示的将租约移除,这时查询租约将会过期,RegionServer会强行关闭与之对应的Scanner,来防止无效连接数过多的情况

2015-08-07 09:57:44

Region恢复逻辑

TableofContentsRegion恢复逻辑配置参数Region恢复逻辑RegionServer出现宕机以后,其上部署的Region将会被Master重新分配处理,由于在宕机前,某些Region的memStore数据可能还没有做flush操作,因此,需要对这部分数据做还原处理,还原过程通过读取HLog文件来实现。截至到目前为止(1.

2015-07-31 10:15:24

RPC通信功能实现

TableofContentsRPC通信功能实现配置参数调用方法RPC通信功能实现HBase的RPC通信功能主要基于Protobuf和NIO这两个组件来实现,在通信管道上选择的是protobuf对外声明的BlockingRpcChannel(阻塞式),其callBlockingMethod方法决定了客户端与服务端的交互行为,比如采用什么样的方

2015-07-24 12:53:50

Hive-On-Tez性能测试

TableofContentsHive-On-Tez测试MRR计算模型测试MPJ计算模型测试Hive-On-Tez测试在MRR和MPJ计算模型的处理上,TEZ能够提升的性能较为明显,具体测试如下:MRR计算模型测试测试表格1.users(id,name,password):数据总量1千万条

2015-07-21 06:04:50

two-phase commit

Two-phasecommit(二段事务提交)是解决分布式事务的一种有效方式,当数据库由于数据量较大而进行垂直拆分时,需要引入分布式事务来确保数组整体的一致性和完整性顾名思义,事务的提交分成两个阶段:准备阶段和提交阶段1.准备阶段(PreparePhase)准备阶段Slave所做事情1.从Master获取写操作请求并在本地执行,同时将执行记录写入redo日志文件,便于出错后

2013-08-10 10:37:02

参观者与组合模式

Demo背景实现类似于gwt框架的功能,通过java代码来编写界面组件,在将界面组件转换成浏览器可识别的UI元素设计思路:代码要实现两部分功能:1.编写界面组件代码,用java类定义出所需要的界面元素(Button、Label、Panel等)2.将java类组件进行语义转换,转换成界面引擎可识别的语法(json、html,js等)接口设计:界面组件的设计参考awt采

2013-07-17 16:41:48

Tapestry5.3使用总结

1.Tapestry框架的加载是通过Filter来完成的,需要在web.xml中加入以下配置: app org.apache.tapestry5.TapestryFilter app /*2.这里面,过滤器拦截了所有的URL,某些时候可能希望有一些URL不被拦截(比如Servlet的mapping-url)这时候需要通过构建IgnoredPathsFilter服务,把不需要拦

2013-07-17 10:16:30

Maven使用

一、生命周期整个build生命周期包含多个phrase默认的生命周期由以下phrase组成(按执行先后数序排列):validate:验证项目合法并具备了所有需要的信息initialize:初始化操作(创建目录结构)generate-sources:生成项目源代码process-source:处理项目源代码generate-resource:生成项目资源文件proce

2013-06-18 10:01:49

SpringSecurity个性化配置

应用场景现有的数据库中包含以下几张表格用于权限管理要求在此基础上集成SpringSecurity,将表格的数据作为数据源来完成登录和权限校验逻辑SpringSecurity的配置可通过两种方式呈现,基于自身的namespace配置和传统的基于Bean的配置。通过namespace来配置Security非常简洁,隐藏了很多繁琐的实现细节,但也不便于初学者进行理解,而如果要想对Se

2013-04-02 15:55:07

java使用xquery

在使用关系数据库时,我们通过sql语句来检索数据源,这没有任何问题,但是关系数据也存在着一定的局限性,只能存储结构化的数据当数据集是非结构化的时候该怎样存储呢,最简单的办法就是封装成xml。应用开发中我们经常使用xml作为数据源来存储一些非结构化的数据,然而是否存在一种语言可以像sql语句检索关系数据库一样来检索xml呢?答案就是xquery。xquery本身的语法结构并不复杂,x

2013-03-04 11:11:07

Hadoop之HDFS子框架

体系结构由图片可以看到HDFS主要包含这样几个功能组件Namenode:存储文档的元数据信息,还有整个文件系统的目录结构DataNode:存储文档块信息,并且文档块之间是有冗余备份的这里面提到了文档块的概念,同本地文件系统一样,HDFS也是按块存储的,只不过块的大小设置的相对大一些,默认为64M。如果一个文件不足64M,那么它只存储在一个块中,而且并不会占用64M的磁盘空间,

2013-02-19 15:51:17

hadoop的产生

大数据的概念最早是由麦肯锡这家公司提出的,他们指出:“数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素,人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来。”进入2012年,大数据的概念开始被越来越多的提及,甚至已经上了纽约时报和华尔街日报的专栏封面。随着系统信息化的建设,海量数据正呈现井喷式增长,如何消化和分析这些数据从中提炼出有价值的信息是企业所要面

2013-02-19 12:27:12

MapReduce执行流程

MapReduce的大体流程是这样的,如图所示:由图片可以看到mapreduce执行下来主要包含这样几个步骤1.首先对输入数据源进行切片2.master调度worker执行map任务3.worker读取输入源片段4.worker执行map任务,将任务输出保存在本地5.master调度worker执行reduce任务,reduceworker读取map任务的输出文件

2013-02-07 18:17:27

hadoop counter

hadoop计数器的主要价值在于可以让开发人员以全局的视角来审查程序的运行情况,及时做出错误诊断并进行相应处理hadoop内置了很多计数器,这些计数器大体上可分为三组,MapReduce相关、文件系统相关和作业调度相关,分别统计每一个环节的处理情况,计数详情可通过http://master:50030/jobdetails.jsp界面进行查看除了内置计数器,hadoop还提供自定义计数

2013-02-04 15:35:10

hive功能简介

Hive提供了类SQL语法的功能,可通过它来检索Hadoop存储数据,查询操作是基于MapReduce来完成的Hive功能1.通过select语句查询指定column的数据2.通过where语句过滤查询条件3.通过groupby语句将查询结果进行分组4.执行join查询操作使用写有Join操作的查询语句时有一条原则:应该将条目少的表/子查询放在Join操作符的左边。原因是

2012-12-24 10:33:07

Virgo整合ECF

ECF框架是OSGI-RemoteService的声明实现,其依赖Bundle包括:org.eclipse.ecforg.eclipse.ecf.osgi.services.distributionorg.eclipse.ecf.osgi.services.remoteserviceadminorg.eclipse.ecf.osgi.services.remoteservicead

2012-12-11 09:36:22

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!