自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

专注海量数据

欲穷千里目,更上一层楼-阿里巴巴hadoop开发

  • 博客(78)
  • 资源 (4)
  • 收藏
  • 关注

原创 博客迁移

在csdn安家已经3年多,最近想自己建设一个网站所以就弄了一个:fengshenwu.com/blog。还希望大家多多捧场我的个人博客啊。此个人站点会慢慢发展。。。不积跬步无以至千里,希望我能坚持下去写博客。这篇博客之前的所有博客都是从我以前的csdn博客站点导入的,所以很多存在格式问题,后面有时间再慢慢修改下。。。

2012-11-16 09:30:47 2818

原创 yarn(hadoop2)框架的一些软件设计模式

一、概述我们都知道,yarn版本的hadoop无论是从架构上面还是软件设计的层面上面都比原始的hadoop版本有较大的改进。在架构方面,我们认为yarn模式是新一代的框架,这个在官方等丛多的资料中说明得很详细了。在软件设计方面,我认为主要有以下的一些大的方面的改进:服务生命周期管理模式、事件驱动模式、状态驱动模式。这几个模式都写在hadoop-yarn-common中,接下来,我将详细说明这些

2012-11-01 08:13:38 10980 1

原创 2012杭州QCon全球软件开发大会所见所闻所悟

一、概述每次听完一些技术分享,都会写一篇分享,一方面也是我自己对论坛的一些总结,另一方面也是想把我自己的一些感受分享出来,上一篇是《2012年阿里技术嘉年华所见所感所悟》。这真是一个美好的时代,我们能从互联网上学习到这么多好的东西,也能参与这么多好的会议,这次特别感谢InfoQ。我这张票是部门给的,也特别感谢我的领导们。这三天我基本都在听,听了大约21场分享,感受还是比较多的,以下我主要就

2012-10-27 21:12:12 4400

原创 谈谈hadoop日志限制的问题

<!--table {border-spacing:1px; border:1px solid #A2C0DA}td, th {padding:2px 5px; border-collapse:collapse; text-align:left; font-weight:normal}thead tr th {background:#B0D1FC; bo

2012-10-24 17:12:00 6405

原创 hadoop相关的一些技巧

分布式系统比普通程序开发有一些特别的难度,最主要的就是环境问题。本博客将记录怎么去解决这些问题,最主要的是一些脚本。后期会连续更新,目前最主要的技巧有:ssh打通:hadoop在部署的时候,各个机器之间肯定要打通,我们不可能手工去敲每一个命令。所以最好有一个脚本。https://github.com/lwwcl1314/apollo/blob/master/distrubutescri

2012-10-22 22:04:26 4407

原创 HADOOP2.0,Exception java.lang.NoClassDefFoundError: org/apache/hadoop/mapreduce/v2/app/MRAppMaster

一、问题运行yarn的MR程序,发现出现问题,报错:Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/mapreduce/v2/app/MRAppMasterCaused by: java.lang.ClassNotFoundException: org.apache.hado

2012-10-21 14:34:59 23060 4

原创 hadoop2包结构及包功能大致介绍

一、概述hadoop2的设计细想比hadoop1进步了很多,毕竟hadoop1是几年前的东西了。软件设计的理论在这几年中发展很快,出现了很多的软件设计理论 如:领域驱动模型、事件驱动模型、状生命周期管理等,也出现了很多的开源的解决方案,当然开源的方案很多都是起源apache社区。在hadoop2中,采取了maven的工程管理结构,把以前的单一工程换成了多工程结构模式,现在估计有45个(po

2012-10-19 14:29:29 8273

原创 编译hadoop2.0(0.23.0)及运行的一些问题

svn co http://svn.apache.org/repos/asf/hadoop/common/tags/release-2.0.0-alpha xxxlinux: 参考$HADOOP_HOME/BUILDING.txt 及 $HADOOP_HOME/hadoop-mapreduce-project/INSTALL(ps,我开始没有注意这两个文件,所以我以下都是一步一

2012-10-18 20:07:27 8680 1

原创 hadoop mr的数据流程交互简单描述

一、概述文章可能会重新编辑,如果想浏览最新内容请访问原创博客:http://blog.csdn.net/bxyz1203/article/details/8074248。由于作者个人知识面有限,如果描述有错误或者遗留之处敬请谅解,再欢迎指出,我们共同进步。二、计算流程MR计算框架发展到1.0.3左右,计算框架没有发展大的变化。在《hadoop  The Definitive Guide

2012-10-15 19:06:11 8397

原创 hadoop mr的一些文件归属(包括临时文件的存储情况)

一、概述一个计算的流程如下图所示,对于一个简单的wordcount的计算中,总共要经历哪些文件呢?本文将详细探讨这个话题。文章可能会重新编辑,如果想浏览最新内容请访问原创博客:http://blog.csdn.net/bxyz1203/article/details/8057810。由于作者个人知识面有限,如果描述有错误或者遗留之处敬请谅解,再欢迎指出,我们共同进步。本文分析的是0.19.

2012-10-10 20:01:48 10964 1

原创 hadoop日志简单分析

一、概述本文基于0.19.1分析得出,有一些是alibaba hadoop优化的部分。本文不涉及jobtracker及nodename元数据的部分,本文主要讲述一个任务在计算阶段大致产生的一些日志,及日志的一些问题。二、日志简单介绍当所有的守护进程都起来后(为了简单起见,我们用的是伪分布模式,是由一个机器搭建的),大致的目录结构如下:[dragon.caol@hd19-vm1 lo

2012-09-24 17:03:14 5173

原创 hadoop mr类图大纲

分析一框架,莫过于类图,近日,亲自画此类图。高清图:http://img1.ph.126.net/pngTQtip2YZ5JR_yqdNSmQ==/6597918589632662351.jpg主要分为:client、JobTracker、TaskTracker、TaskRunner、Clild。协调有的是通过RPC调用,有的是通过Shell命令调用。阻塞通过要

2012-09-02 21:01:55 3959

原创 hadoop 0.19.1 rpc代码分析

一、概述hadoop中mr类图大致如下所示,其中只是简单列出了一些主要的功能模块。JobConf、JobTracker、TaskTracker、RPC Server等组件。在图中,我用红色框框框出了一些基本的类。此图基本反映了MR的类图结构。一个简单的job在hadoop上面跑起来,基本可以分为10个步骤。如下图所示:hadoop都是用rpc框架来机器的

2012-08-30 13:30:09 4183 9

原创 一个简单的分阶段多任务处理实例

1、概述我们经常需要处理一个很耗时的任务,一般只有其中几步是十分耗时的,此时我们想到的是多线程来处理此任务。但是往往我们不能简单地把整个任务弄成多线程程序。如:文件的读取,文件的写入需要单线程处理(如果多线程处理需要加锁,此时性能没有单线程快)。为了解决此类问题,此我们可以用到,生产者与消费者的模式。本质上是Staged Event Driven Architecture的原型。2、具

2012-08-23 09:52:09 4628

原创 数据迁移脚本备案

一、概述最近做的一个项目,在很大的程度上面是在做数据迁移。数据迁移往往是项目最大的风险点。在一些大的重构项目中,往往会有一个团队专门负责,可见其重要性。在项目发布中,数据迁移往往会占用很多的时间。数据迁移需要考虑很多的情况,如:迁移方案、数据备份、迁移总时间、迁移时间点、迁移后check。二、一个例子项目是想把一个登陆id:member_id换成后台交互的ali_id。为此有一个map

2012-08-20 15:18:58 3971

原创 系统健壮性的思考

一、概述最近系统有两个故障都跟系统健壮有很大的关系。为此,我们不得不进行思考,如何提高系统的健壮性。系统在经过功能测试后,对于正常的业务数据处理往往没有任何的问题,但是对于一些异常的数据、异常的业务处理就会出现系统集群不可用等灾难性的问题。异常的数据一般是因为系统的数据修正引起,往往在存储方面就不符合业务一致性约束。对于一些有年代的系统,数据修正又不可少,在我就职的部门中,每天都在

2012-07-26 16:24:59 14301 4

原创 2012年阿里技术嘉年华所见所感所悟

一、概述这个周末参加了《阿里技术嘉年华》,这个可以说算是国内一流的免费交流会了。多个公司的技术牛人聚集在杭州共同探讨IT技术。当然很多是阿里的同学,不过也有百度、腾讯、网易,甚至还有小米、360、证劵交易所公司的同学。阿里提供了这个么好的舞台,非常感谢。也期待更多的公司来参加举行嘉年华。二、大致过程此次我主要在听iData、aDev与iDevOps专场的讲座。我还是对后端比

2012-07-08 21:23:17 9545 5

原创 批处理命令高级用法

为了一个应用,需要写bat脚本,纠结了我很长时间,以下是这段代码,基本涉及到bat的一些高级用法。备份下。SETLOCAL DISABLEDELAYEDEXPANSIONfor /f "delims=>.*" all\pom.xml') do set APPNAME=%%ifor %%i in (A B C D E F G H I J K L M N O P Q R S T U V W

2012-07-05 19:09:10 3073

原创 异常日志没有堆栈信息

昨天财务出现一个问题,线上一直在报错:日志截屏如下:有异常,但是就只有一个java.lang.NullPointerException异常,这个没有堆栈信息,我怎么查问题呢?后来经过查询,这个问题其实是跟JDK5引入的一个新特性有关,对于一些频繁抛出的异常,JDK为了性能会做一个优化,在JIT重新编译后会抛出没有堆栈的异常。在使用server模式的时候,这个优化是开启的,我们的服务器跑在ser

2012-07-03 20:35:39 12046 2

原创 用自己的电脑来架站(有限资源架站、零成本架站)

很多同学喜欢自己编写一个网页,但是苦于没有域名,公网ip及服务器资源,一直无法向外发布。本文简单讲下在一般情况大家都有的资源下,搭建站点的过程。三要素:域名、公网ip、服务器资源。域名:其实域名最好解决了,我们可以申请一些免费的域名,如:花生壳,一般注册了就可以得到一个免费的域名,当然大部分是二级域名。如果需要一级域名,一般是要付费的。年费其实也很便宜的。公网IP:我们大部分同

2012-06-26 22:02:28 3626

原创 log4j源码解析及一个log4j:ERROR Attempted to append to closed appender named 的问题

一、log4j源码解析最近出现一个问题,弄得我不得不把log4j的源代码读了一篇。如果自己不想写代码,可以下载此代码:https://github.com/lwwcl1314/atlantis/tree/master/common/src/main/java/com/atlantis/study/log先讲下log4j的设计.log4j主要有元素:logger leve

2012-06-08 14:07:44 21239 2

原创 缓存漫谈-浏览器端的缓存

浏览器与服务器交互,都是靠http(https)协议来完成的。如何高效的把一些数据缓存在浏览器端,一直是一个话题。浏览器需要与服务器协商来完成缓存的过程,浏览器不能私自缓存。浏览器的刷新有三个级别:Ctrl+f5强制刷新,不用任何缓存。f5,发出请求,一般带上Last-Modified或者ETag数值,浏览器如果接受到304,那就用本地缓存,如果是200,那就用返回的内容。单击转到

2012-05-17 08:15:15 1249 1

原创 缓存漫谈一概述

一、概述缓存(cache)无处不在,计算机要是少了缓存,那基本也就谈不上性能。为什么需要缓存,最主要还是把计算的结果(也包括直接结果)缓存起来,提高响应速度,减少后端的压力一般缓存的位置有离客户更近的原则,也有设备速度的原则。我们针对缓存一般需要考虑以下几点:1、缓存的命中率。2、缓存的更新策略。当然一般是:LRU了。3、自动过期的时间。

2012-05-15 08:59:23 1301 1

原创 数据库大数据量导出多线程版本源码部分

package com.alibaba.crm.finance.bo.export;import java.io.File;import java.io.IOException;import java.math.BigDecimal;import java.sql.SQLException;import java.util.Date;import java.util.LinkedLi

2012-04-20 21:39:03 4912 4

原创 数据库大数据量导出多线程版本

【不积跬步,无以至千里;不积小流,无以成江海。】一、概述一年多前,我做了一个小需求,导出80w的数据。当时写了一篇博客《在集群上支持数据库大数据量导出》,简单地讲了一些原理,并贴出了部分的源码。原理用了一张图来表述:基本就是客户在页面申请导出请求,把请求存在数据库中,再由定时任务取出来运行:由于当时是把所有的请求都转给第一台机器运行,并且是单线程运行

2012-04-20 21:28:00 8549 5

原创 线上内存溢出问题排查<实践篇>

【实践是检验真理的唯一标准】一、概述之前写过 《性能的一些常用的命令与注意点》、《java jvm内存结构(回顾)》、 《JVM内存回收机制及回收器-一目了然》 等篇文章,今天写下实践吧,比较简单。 也正好前几天出现一个内存的问题。二、线上准备数据线上服务器跑得好好,突然服务不可用了,怎么办?1、登陆服务器,立马从LB拉下。2、快

2012-04-16 12:35:35 6342 9

原创 软件工程师的视角看网络(网络那点事)

[你能做到的,只是不要想一步登天]一、概述     在以太网中,我们都很清楚网络的分层模型,ISO模型7层:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP模型四层协议:主机至网络层、互联网层、传输层、应用层。 在实际应用中我们都是用TCP/IP的模型。下面我讲下软件设计需要了解的网络知识,个人感觉软件工程师应该知道这些知识的,当然也是些基础的网络知识。

2012-04-15 17:37:32 14016 58

原创 如果解决测试之痛<特别是单元、集成测试之痛>

【罗马城非朝夕建成,测试体系非一日之功】【概念】说到测试,最主要的是,检测代码是否满足特定的逻辑,检测代码是否满足业务的需求。测试还需要有一些附加特性,如:快速响应、可重复运行、可持续维护等。目前的测试基本可以分为:单元测试:检测代码片段的测试,基本是以代码结构为衡量,属于百盒测试。集成测试:集成各个系统的各个模块,各个代码片段的,主要以

2012-03-28 00:07:53 7296 12

原创 HUDSON邮件模板问题 <众里寻他千百度,蓦然回首,那‘人’却在灯火阑珊处>

【众里寻他千百度,蓦然回首,那‘人’却在灯火阑珊处】【问题描述】hudson邮件功能太弱了,项目经理说,能不能换成好看的。我就在hudson仓库中找了Email-ext+plugin(http://wiki.hudson-ci.org/display/HUDSON/Email-ext+plugin)一段简单配置后,配置如下$PROJECT_NAME - Bu

2012-03-26 23:01:06 4428 2

原创 测试框架迁移 <测试之体系,人人皆有一砖一瓦>

【测试之体系,人人皆有一砖一瓦】【概述】测试是非常重要的,构建一个好的测试对于系统的质量、重构非常重要。下面简单介绍下测试的一些框架,有的是带过,此篇主要是我这次迁移测试框架的一些总结。如果大家对其中的一些框架比较感兴趣,可以去研究下。 推荐:junit\testng\jmockit 。对于每个开发工程师肯定会大有益处的。其中会涉及到很到的java技术点。【选型】

2012-03-23 15:19:08 2134 5

原创 字符编码的问题

今天又出现一个字符编码的问题,jvm默认的是用的与本地操作系统有关系,一般是iso-8859-1编码,此对中文是丢失的。那下面我简单讲下,对于编码的理解。【导言】计算机是处理数字与字母的。在创造Unicode之前,有数百种指定这些数位的编码系统,没有一个编码可以包含足够的字元。有如此所的编码,每个之间还存在冲突,所以就必要要有一个强大的编码系统,能处理所有的字符,一统江

2012-03-22 19:46:40 942

原创 2012核心部门大会之感悟

今天是2012年大会,大会,就是文化传播,再此给人以信心。再以奖励的激励下,激发员工的激情。今天大会有几个点我最感触:第一点:关于核心的。‘核心的系统、核心的人’在 开始读《代码大全》给我最大的感觉。目前核心就是人太浮动了。系统也没有好的规划。从淘宝、支付宝来着,也有一个重构的过程,不过目前核心实在动静太小,希望能有所大动作,不过就目前的用户量,也无需大动。这个就是致命点,没有好的

2012-03-22 09:59:24 1314 1

原创 资源定位的问题-URLClassLoader、ServletContext、jetty资源加载

一、问题描述发现代码:在antx.properties中数值为:finance.abc.ict.port  = 1599 猜测应该是 SysConfig读取配置文件失败。基本定位是资源加载的问题。二、问题定位启动容器调试:发现类加载器是:org.eclipse.jetty.webapp.WebAppClassLoa

2012-03-16 11:50:22 1905

原创 java jvm defaultCharset问题

一、问题描述在写代码的时候,读取字节流的时候,一般需要转化成 字符串,此时就涉及到编码问题。一般文件是用啥 编码 存的,取的时候就用 此编码读取。 在写读的时候,一般建议指定编码。BufferedReader br = new BufferedReader(new InputStreamReader(is));最好写成BufferedReader br = new Buffer

2012-03-14 15:12:20 5963

原创 ant学习(存档)

ANT = [A]nother [N]eat [T]ool 在maven中经常需要用到Maven Antrun plugin(http://maven.apache.org/plugins/maven-antrun-plugin/) 插件.This plugin provides the ability to run Ant tasks from within Maven.

2012-03-13 16:24:19 1099

原创 eclipse调优

写一个插件显示启动时间的,插件下载地址:eclipse show start time第一次启动的时候:第二次就19s了这次15s今天把 eclipse调试了下,最后的结果是:-vmD:/Program Files/Java/jdk1.6.0_26/bin--launch

2012-03-12 09:26:57 1255 2

原创 JVM内存回收机制及回收器-一目了然

一、概述内存回收,分析出所以然,为什么如此设计,内存回收,如整理屋子。用户就是系统,其实和普通的系统没有大区别。需求:正确高效(不能对用户线程有较大的影响)二、设计我来设计的话,一些基本的问题。哪些对象需要被回收?谁来回收? JVM在哪里回收?  一般堆上,栈上回收比较困难在什么时候回收? 怎么回收?第一个问题:

2012-03-11 00:24:30 8593 3

原创 java jvm内存结构(回顾)

回顾下JVM内存的结构,下次能快速回想起来。为什么JVM内存会如此设计呢:目前大致的分为:堆、栈、方法区、程序计数器、直接内存为什么会分这么多呢?要想程序运行起来,需要不同的数据,不同的模型。如:线程运行时有线程的一些专有属性。第二就是 为了 内存的回收,可以分别调优。给用户更大选择。除了 程序计算器没有内存溢出外,每个区都会有内存溢出。(程序计算器所使用的内存太少了)

2012-03-08 23:54:47 2985 1

原创 简单描述类加载机制(回顾)

一、概述     一个类是如何到在jvm里面,到到底干了哪些事情。二、类的生命周期首先简要讲下类的生命周期:类加载包括:初始化之前的所有步骤。加载:通过一个类的全限定名来获取定义此类的二进制字节流。将这个字节流所代表的静态存储结构转化为方法区运行的数据结构。在java堆中生成一个代表这个类的java.lang.Class对象,作为方法区这些数据访问的

2012-03-04 11:46:09 1488

原创 线上一个类加载的问题(java.lang.NoClassDefFoundError)

一、背景    2012年02月下旬,把应用的容器从jboss换成了jetty.二、故障     前几天上午 同学叫我看一个问题,截图如下:大致描述为,线上有3台服务器,第二台服务器一直在报警,而且报警条数一直在增加。情况十分紧急,得马上、立刻解决。三、处理过程第一反应就是  看下此情况影响的业务,发现业务十分偏,是一

2012-03-04 11:22:59 8755 2

显示eclipse的启动时间

显示eclipse的启动时间,非常简单,传上来与大家分享下。嘿嘿

2012-03-12

win7_Aero主题资源管理器背景更

不知道哪位好心人做的,我简单备案下。 如果说有知识产权问题,请联系我删除。

2012-02-20

重构那点事情

本ppt是我个人关于重构的一个分享。里面很多的资料也来自互联网.如果大家要交流请发私信给我的csdn主页。

2011-10-30

认识oracle中的sqlnet.ora tnsnames.ora listener.ora三个文件

认识oracle中的sqlnet.ora tnsnames.ora listener.ora三个文件

2009-07-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除