原文链接:
http://blog.csdn.net/programmer_editor/article/details/3865839
编者按:牛新庄,数据库维护,优化和架构专家;曾获得国内数据库领域最高荣誉----"2006年中国首届杰出数据库工程师"; 数年前曾被IBM全球软件部以年薪60万元人民币聘用,而他却婉然拒绝;这样一个躲藏在幕后的"牛人",有着怎样的学习,发展之路?为此,本刊特邀牛新庄博士,请他讲述一个真实版的"数据库之路";
选定发展方向
1999年,我在开始读研时就给自己确定了以后的发展方向;
当时有两个方向:网络,数据库技术;因为在2000年之时,网络大热,市场上拥有CCNP,CCIE证书的人特别牛;所以我当时也考下了CCNP证书,但后来发现网络方向涉及很多硬件层面的东西,这些都对厂商的依赖性太强,个人发挥空间不大;而我喜欢钻研,所以慢慢开始转向专攻数据库技术;
在认准数据库这个方向后,我开始深入学习数据库理论方面的知识;当时,人大王珊教授的《数据库系统原理教程》一书,我读了几十遍;在学习数据库理论的同时,我开始接触并深入学习DB2和Oracle,并从1999年开始使用DB2 V5.2;那时,市场上关于DB2方面的技术书籍几乎没有,互联网也不像现在这么发达;因为我的导师做一个课题需要用到DB2数据库,但是我只能依靠查看 DB2随机文档来学习;那时,我还自己兼职,通过帮别人做些小软件赚钱,外加课题经费,以支付考OCP认证和DB2认证的费用;
到现在为止,我一直认为考认证是一个很好的学习动力;因为考试费用不菲,如果不想浪费钱只能拼命看书;我在读研的2000年就通过了OCP 8i认证,后来又陆续通过DB2 V5.2认证;这些认证极大地增强了我的自信;同时,在帮助导师用PB,Delphi等编程工具做应用开发时,我有意识地增强对SQL的学习,这对我后来的性能调优工作非常有帮助;
这里我想说的是,做好一个时期的人生规划非常重要;我们首先要有一个明确的努力方向和规划,然后有意识的往这个方向努力;这种积极主动的学习要比被动学习效率高很多;
第一次做培训
"机遇偏爱于有准备的头脑",这句话虽是老生常谈,却是人生真谛;记得2000年底,我在网上看到一个帖子说需要一个人去安装DB2数据库,差旅报销,每天500元,我喜出望外;因为这项工作需要有DB2认证才能去,而我那时DB2高级系统管理和应用开发的认证都有,所以很快就通过了对方的审核;但是当我到客户现场时才发现,不是安装DB2而是要给客户讲课,当时我就傻眼了,因为讲课需要的知识远比安装配置数据库要难得多,更何况我之前根本没有讲过课;没办法,压力也是动力,只能前一天夜里看教材备课到凌晨5点;短短睡了两个小时后,8点半去讲课;四天讲课下来,我总共休息了12个小时;还好自己毕竟有 DB2应用开发经验和DB2认证做基础,总算勉强应付了过去;只是没想到的是,这次并不算顺利的培训,竟是我未来几年培训生涯的开始;
将培训当学习的动力
经过第一次讲课后,我看到了自己的差距,知道仅有认证是不够的;客户的很多问题,书本上没有答案,需要自己在实践经验上做努力;另外,讲课前讲师需要把一些原理,概念性的东西弄清楚,也需要对数据库进行深入学习;
后来,IBM培训部通过一些渠道知道我能讲DB2且拥有相关证书,就找我讲授DB2系列课程;所以,从2001年开始,我就经常作为IBM官方讲师讲授 DB2系列的所有课程;我自认为讲课是一个很好的学习过程,因为课前要深入了解概念,对于自己的理论深入学习有很大帮助;同时,课堂上学员的实际操作问题也会强迫自己做更深入的研究;
我对培训有这样的认识:学员听你讲三个小时,要远远胜过自己看3小时的书;如果把一堂课的内容比喻成一杯水,那老师至少应该提前储备一桶水;所以,在讲课之前,我精心准备实验,深入和学员交流;我讲课从不照本宣科,而是自己准备了很多教材外比较实用的知识来扩展教材内容;同时争取上课过程中把一些概念用浅显易懂的例子来讲解;要想做到这些,首先自己必须对这个概念有深刻的理解才行,这一切都在客观上促进了自己的学习;
随着培训的增多,有部分客户开始找我做实际的调优工作;记得我第一次去为客户现场调优是2001年,去大连大通证券解决锁等待问题;客户环境用的是AIX 和CICS;当时虽然问题解决了,但自己心里还是比较虚,因为对AIX和CICS不了解,万一是这两个方面有问题,自己就没办法搞定了;这让我认识到一个复杂系统的调整往往需要具备多方面的知识;这件事之后,我在网上买了一个140的IBM工作站小机,自己安装AIX并开始学习;
数据库学习Tips
根据我对数据库的理解,目前市场上虽然有Oracle,DB2,Informix,Sybase和SQL Server数据库,但Informix数据库已经被IBM收购,而Sybase数据库在技术和市场上正走向没落,占据市场主要份额的就是 Oracle,DB2和SQL Server数据库;SQL Server数据库非常好,但是很遗憾的是只能在Windows平台使用;所以如果你深入研究SQL Server数据库,我只能说获取高薪的概率稍低,而且坦白的说,使用SQL Sever数据库的企业一般是中小企业居多;而国内做Oracle数据库的人太多,如果你想在Oracle领域出人头地,难度极大;但是,做DB2数据库的人反而不太多,物以稀为贵;况且,DB2数据库广泛应用在银行,电信,制造行业,零售行业,保险行业等"高薪"领域中,所以我强烈建议学习DB2数据库,做IBM技术一般获取高薪的概率相对会大一些;我们的时间精力是有限的,所以必须选择好方向然后努力为之;除了SQL Server,这几个数据库我都在使用,我个人感觉除了功能外,对于运行稳定而言,相对于Oracle不太稳定的优化器,DB2无疑是最稳定的,它的优化器无比强大;如果能在锁方面再有更先进的技术,那么DB2将是完美的;
这期间,我一边学习,一边通过了AIX的全部认证;记得非常清楚的是,为了做HA的实验,我花费了很大工夫;因为那时小型机不像今天这么普及,无法搞到 7133阵列;后来我又学习了CICS,WebSphere,MQ和存储;就这样,在我培训的过程中,发现自己哪方面薄弱并且感觉这个方向有前途,我就会开始学习;不过,那时我的技术主要还是围绕IBM产品为主;由于自己对培训比较用心且颇受客户好评,找我做培训的国内培训机构开始变多;这个期间我自己的技术水平也增长很快;
2002年11月,我参加了首届 "IBM DeveloperWorksLive! China 2002"大会,并获得IBM首次在国内评选的"杰出软件技术专家"奖,当时在6名获奖者中名列第2;这个奖项客观上对我在客户群的拓展方面起到很大帮助;找我解决问题的人更多了,所以2002--2003年也成了我技术提升最快的两年;
这两年内,我陆续学习了HP-UX,WebSphere和MQ并通过认证;我自己的感觉是,如果你把一门技术研究得非常深,非常透,由于触类旁通的缘故,再去学习另一门技术时就很轻松;所以,我在学完AIX再去学习HP-UX时,感觉非常轻松;同样,在学习ORACLE和DB2后再去学习Informix 也同样很容易;通过这种纵向的深入和横向的比较,各种产品的所长所短也会非常清楚,自己的技术视野无意间更加全面化;而且通过对一个产品的深入,你往往能够发现这个产品的缺点和需要改进的地方;就拿DB2来说,每次版本更新的新特性,在新版本未上市前我就可以猜得差不多了;这主要有三个原因:一是我贴近真实用户,了解他们的真正需求;二是自己一直在用且不断总结思考;三是这些特性别的数据库有,而DB2没有,那在下个版本就会增加;所以相对来说,我自身对新版本的新特性学习就非常轻松了;就DB2而言,我拥有DB2 V5.2 ,V7.1,V8.1和DB2 V9的全部认证,而且我应该是国内第一个把DB2 V8认证全部通过的人,当然,这其中也有巧合的成分;
重要的一点是:学习过程中,要不断地把实践和理论融合,知其然更知其所以然,这样提升就会快很多;
现场救援"赶场"记
2004--2005年是我最忙碌的两年,那时候找我讲课的培训机构和需要性能调优的客户非常多,基本上整天在天上飞;培训机构找我讲课常常需要提前一个月预约;那两年内,除了过年几天,其他时间都是在做培训和诊断,调优,足迹遍及国内主要城市;我自己基本上是国内六大银行开发中心和数据中心培训的指定讲师,并为北京银信科技,山东农信,广东农信,交行大集中IBP等项目做数据库技术顾问;
那时的我年轻,精力充沛;记得最刺激的一次是2004年9月的一天,上午9点为上海移动IT部门做AIX动态逻辑分区(DLPAR)培训,结束时是17 点;之后,立刻坐出租车前往扬州,于20点到达扬州供电局并协助他们进行电力负荷控制系统项目上线,一直奋战到凌晨3点半;接着,又连夜乘出租车赶往上海,在凌晨6点到达酒店;休息两小时后,8点出发,准时出现在上海移动培训现场;那时我对报酬不太在意,想的主要是用心积累技术经验和客户资源;在我看来,能够不断通过实践让自己成长是第一要义;而且,去的客户现场越多,处理的问题就越多,也就越多地发现自己的不足,然后再拼命学习,不断积累,总结和思考,进入了一个良性循环;
至今我仍然怀念那段充实,紧张而充满激情的光辉岁月;2004年和2005年,一方面因为以独立咨询顾问的个人身份无法出具发票;另一方面,项目越做越大,尤其是很多银行的数据库架构和维护项目涉及合同金额也越来越大,需要签订正式公司合同;于是,我就分别在上海,北京注册了公司;当然这些年我并非都是一帆风顺,也犯过一些重大错误,例如:我曾经在2002年5月1日把海南美兰机场的数据库调死,导致机场航班信息管理系统瘫痪;早期也曾经因为调整某证券系统宕机而影响股民交易,这些都对客户造成了影响,但这些都是成长必须要走的路;经过这两次事件后,我自己也思考,总结了很多,在之后的调优工作中我基本上再没有犯过错误;
我的秘诀:学习,积累,规划
2006年8月我获得"2006年中国首届杰出数据库工程师"称号,算是对我多年学习数据库的一个总结;自2007年开始,我专注于做一些大客户的运维工作,并相应减少了培训次数;2008年,我被建设银行以年薪217万聘请为资深技术专家来维护Oracle和Informix数据库;就做技术而言,以一己之力能挣到年薪几百万常常令我感到自豪,也让我感受到技术的魅力,觉得自己多年来对技术的钻研得到了认可;
之所以讲述我的技术之路,主要目的是给大家一些参考,尽可能多地去了解社会的需求,有意识给自己制定人生规划;我自己认为,多年来能取得这样的成绩,勤奋,努力和坚持一直是我最看重的;因为有了这些,才不至于当机遇光顾时,你却不知所措;
现在很多年轻人,恰恰缺少的就是这样的忘我与痴迷,在我熟悉的数据库技术领域,很多年轻人越来越早地将注意力集中在薪水和职位上,这是很不明智的行为;其实,往往那些将诸如高薪与职位忘怀的人反而能更快地取得成功;"不经一番寒彻骨,安得梅花扑鼻香?"这样的道理人人都懂,可能够真正去实践的人却并不多;结合我的学习经验与感悟,我总结有16字要诀:去除浮躁,认真学习,不断积累,寻找机遇;
最后,我用这句话与大家共勉:古之成大事者,不唯有超世之才,亦唯有坚韧不拔之志也!
作者简介:
牛新庄博士,研究方向为数据仓库和数据挖掘;是IBM官方资深培训讲师(培训DB2,AIX,MQ,WebSphere和CICS);2002年获IBM 杰出软件专家奖,2006年获"首届中国杰出数据库工程师奖","2006年IT168技术卓越奖";是中信银行,山东农信,广东农信等公司资深技术顾问,中国建设银行总行特聘资深技术专家;拥有OCP,AIX,DB2,HP-UX,MQ,CICS和WebSphere等二十多项国际认证;著有《Oracle数据库开发讲座----Oracle9i Jdeveloper与J2EE实务应用》,《DB2应用开发实战指导》,《循序渐进DB2-系统管理,运行维护与应用案例》,《深入解析DB2-高级管理,内部体系结构与诊断案例》和《DB2性能调整与优化》等书;
(本文来自《程序员》杂志0901期)
分享到:
相关推荐
### 牛新庄:数据乾坤当空舞 #### 数据架构与信息治理的领军人物 牛新庄,作为国内顶尖的数据架构与信息治理专家,在IT领域有着举足轻重的地位。他不仅在学术界有着深厚的造诣,还曾在业界担任多个重要职务。...
【牛新庄 DB2 DBA 教程】是一份经典的 IT 学习资源,专注于 DB2 数据库的管理和优化。DB2,由 IBM 开发,是业界广泛使用的高性能关系型数据库管理系统,尤其在金融、电信等领域有着广泛的应用。DBA(Database ...
牛新庄目录简介牛新庄博士自传编辑本段简介[1] 牛新庄博士,是国内顶尖数据架构与信息治理专家,以217万年薪受聘于中国建行总行资深技术专家,在国内的金融六大行、
牛新庄的书,很经典,是学习db2的好书,全本,放心下载
《牛新庄--循序渐进DB2系统管理运维与应用案例》这本书是DB2数据库管理系统的学习宝典,由专家牛新庄精心编著。它深入浅出地讲解了DB2在系统管理、运维以及实际应用中的各种技术和案例,旨在帮助读者掌握DB2的核心...
××××这是第1/2部分, 7Zip压缩×××× 《循序渐进DB2:DBA系统管理、运维与应用案例》DB2数据库是IBM公司关系型数据库核心产品,在国内以及全球有着广泛的应用。针对DB2初学者,本书循序渐进地把DB2所涉及的...
DB2数据库性能调整和优化(第2版)侧重于介绍DB2数据库的性能调优。性能调优是一个系统工程:全面监控分析操作系统、I/O性能、内存、应用及数据库才能快速找到问题根源;深刻理解DB2的锁及并发机制、索引原理、数据库...
牛新庄在这一领域有深厚的经验,他的分享对于学习和掌握DB2优化技术具有很高的价值。 DB2优化器是DB2数据库管理系统的核心组件之一,负责解析SQL语句并确定最佳的访问路径。它基于成本模型来选择最低成本的访问策略...
### 牛新庄:DB2使用经验 #### 一、DB2专有名词解释 - **Instance(实例)**:在DB2中,实例是数据库管理系统的一个独立运行副本。每个实例都可以有自己的配置参数,并且可以同时运行多个实例。实例通常由一个用户...
标题“AIX性能调优-牛新庄”指向了专门针对AIX操作系统进行性能调优的技术内容,AIX是IBM开发的一种UNIX操作系统,主要应用于其Power Systems服务器。性能调优是系统管理中的一项重要任务,它旨在提高系统的响应速度...
××××这是第2/2部分, 7Zip压缩×××× 《循序渐进DB2:DBA系统管理、运维与应用案例》DB2数据库是IBM公司关系型数据库核心产品,在国内以及全球有着广泛的应用。针对DB2初学者,本书循序渐进地把DB2所涉及的...
《牛新庄-db2数据库性能调整优化》这本书深入探讨了DB2数据库的性能优化技术,是DB2数据库管理员和开发人员的重要参考资料。DB2作为IBM公司的一款企业级关系型数据库管理系统,广泛应用于金融、电信、制造等多个行业...
db2 性能优化方面的超详细资料,包括性能监控的各种方法,监控工具,调优方法,另附一个优化的实例步骤。这是我在IBM实习时自己整理的db2优化资料。里面的.odt文档需要下载一个兼容模式才可打开。...
××××这是第1/2部分, 7Zip压缩×××× 数据库内核是数据库系统稳定运行的心脏,DB2数据库内核庞大而复杂。本书从DB2内核组件入手,同时介绍了其与操作系统在进程、共享内存、信号量之间的关系。...
DB2look 是 IBM 数据库 DB2 的一个强大工具,它主要用于提取数据库对象的 DDL (Data Definition Language) 定义,包括存储过程、触发器、视图和索引等。在本文中,我们重点关注如何使用 DB2look 重新创建优化器访问...
- **实战案例分析**:例如,文中提到的2001年大连大通证券的锁等待问题案例,虽然最终解决了问题,但也让牛新庄博士意识到在复杂的系统环境下,仅仅掌握单一数据库技术是不够的,还需要对相关的操作系统和其他中间件...
命令、故障诊断和调优课程目录:【】DB2 9 中的 XML 索引【】DB2 9.5 中多线程架构的工作原理【】db2 clp 命令锦集【】DB2 v8.x的通用license【】db2 V9的宝典:计划、实施、性能【】DB2 使用经验积累-牛新庄血与泪...
从开始接触DB2,我就一直很佩服牛新庄, 不因为别的,就因为这三本书, 牛老师不仅技术精湛,而且书中很多地方用词也是恰到好处 可以说“句句是精华,字字是经典” 平时遇到的问题,从网上找到的答案, 发现很多都是...
从开始接触DB2,我就一直很佩服牛新庄, 不因为别的,就因为这三本书, 牛老师不仅技术精湛,而且书中很多地方用词也是恰到好处 可以说“句句是精华,字字是经典” 平时遇到的问题,从网上找到的答案, 发现很多都是...