随笔-88  评论-77  文章-48  trackbacks-0
 
Java Parallel Processing Framework 0.15.0 版本发布了.Java Parallel Processing Framework 是一个基于JAVA的并行框架.
文章来源:http://www.matrix.org.cn/resource/news/689_Parallel+Processing.html
posted @ 2006-04-28 11:29 崛起的程序员 阅读(241) | 评论 (0)编辑 收藏
在最新的mustang build 81 的changelog中, 我们可以看到:多层编译(Tiered Compilation ) 已经完成了, 已经在new features 列表里了..
文章来源:http://www.matrix.org.cn/resource/news/690_Tiered+Compilation.html
posted @ 2006-04-28 11:29 崛起的程序员 阅读(255) | 评论 (0)编辑 收藏
对于不想学习新标签的(比如jodd 等)
仍用struts 等的朋友,
把那些 “bean write”扔掉吧
换为 jsp2.0 的el表达式吧
例如
<img src=“<bean:write name="o" property="picUrl"/>”>
看这些双引号我就恼火

换为下面的清楚多了
<img src=${o.picUrl}>

当然
这些也支持
<logic:iterate id="o" name="listVO">
。。。
</logic:iterate>
这之间的 bean ,看起来爽多了吧

这中间还有一点
例如 我在request 里面setAttribute(“o”,“123”);
如果用bean write
<bean:write name="o" /> ,晕 报错! 说没有o 对象
用 ${o.} ,呵呵,为“” ,正式我想要的,


慢慢的你会发现可以放弃strtus 的标签了
具体的 看  
springside 项目了啊 :)
posted @ 2006-04-28 11:22 崛起的程序员 阅读(3403) | 评论 (0)编辑 收藏
对于不想学习新标签的(比如jodd 等)
仍用struts 等的朋友,
把那些 “bean write”扔掉吧
换为 jsp2.0 的el表达式吧
例如
<img src=“<bean:write name="o" property="picUrl"/>”>
看这些双引号我就恼火

换为下面的清楚多了
<img src=${o.picUrl}>

当然
这些也支持
<logic:iterate id="o" name="listVO">
。。。
</logic:iterate>
这之间的 bean ,看起来爽多了吧

这中间还有一点
例如 我在request 里面setAttribute(“o”,“123”);
如果用bean write
<bean:write name="o" /> ,晕 报错! 说没有o 对象
用 ${o.} ,呵呵,为“” ,正式我想要的,


慢慢的你会发现可以放弃strtus 的标签了
具体的 看  
springside 项目了啊 :)
posted @ 2006-04-28 11:15 崛起的程序员 阅读(174) | 评论 (0)编辑 收藏
    “Java产生于网络”,这是几年前java程序员一直津津乐道的话题,伴随着互联网的蓬勃发展,Java也曾有一股气吞山河,一统天下之势。然而今天,我们看到PHP占领全球网站应用的大半市场,Microsoft的ASP及.net占领了很大一部份市场(看看国内的各种网站、看看中国的党政网),还有其它Web开发语言也占据了一部份,最后剩下给Java可谓寥寥无几。PHP正在以他深得人心的简易开发优势快速扩张,如今又冒出个新贵Rails/Ruby在后面耀武扬威宣称要替代Java、消灭Java。我们不禁感叹:Java路在何方?

   成也萧何,败也萧何。我们认为,造成Java今天之局面的一个主要因素是Java技术的极度灵活,Java技术领域的“有组织、无纪律”。动不动JCP就给你搞一个Specification,管你怎么去实现;Java开发社区TTS及sourceforge.net每天都有新的框架或开源产品发布,最终这些技术及产品到其使用者(软件企业及程序员)手里时,他们根本不知道该如何选择。你不跟潮流别人就会笑话你古董,而且最让java程序员烦恼的莫过于昨天才辛辛苦苦掌握并引以为豪的新技术、新框架,今天就被别人嘲笑你所学会的东西已经落伍、老掉牙。

   另外,Java技术的“强大功能”及其“复杂性”也是造成Java应用步履蹒跚,举步为艰的一个不可忽视的因素。功能的强大是以技术的复杂作为代价,一个功能强大的系统总是由众多简单的小系统堆积而成。我们以为:“简易、实用才是硬道理”!再强大的功能也要以实用为基础,脱离了实际应用便是空谈乌托邦。如果实际应用中不可能用到,那我们又何必花那么多的精力煞费苦心地去搞那么多的设计及构架,(又何必点灯熬油挥汗如雨地去建一个很难登上的空中楼阁呢?)纵观今天java技术的应用,复杂得有点离普。一个简单的Web应用动辄就要戴上N层高帽,Web使用Struts(JSF)、持久层用hibernate(JDO/Entity Bean)、还引入了Spring或EJB,要IOC、AOP、支持任意数据库、支持任意存诸方式、支持组件对象关系任意配置、支持Web Service……如此琳琅满目的技术,如此强大的功能,想不复杂?难啊!时至今日,又有谁能象当年IBM总裁郭士纳一样让Java这个庞大,复杂的大象也能跳跳舞呢?

   Java在国内不能得到很好应用的一个主要原因是国产Java技术落伍。在Java世界,开源、优秀的东西很多很多,但基本全是泊来之品。也只有那些技术牛人、大型软件企业、外资企业,才有实力研究并很好运用。当前还有众多的中小型软件企业停留在JSP+Java Bean的时代,很多中小企业甚至老牌软件企业的CTO或者项目经理到现在还常理直气壮的说:"客户不就是要求J2EE平台吗?我们的JSP、Tomcat、JBoss不全是J2EE技术吗?”是的,软件嘛,能解决问题就行,好不容易花了两三年搭建起来的技术体系,说换就换,哪有那么容易啊!于是,软件越来越难以维护,越来越难以扩充,更加无法满足客户的新需求。

   再看国内很多比较知名的软件企业提出的一些新开发构架、开发体系、中间件及工具等,其基础核心仍然是国外引进的东东。比如很多软件公司开发的快速开发工具,构件开发等,都是以Struts、Spring、Hibernate等为基础,也就是要用他们的工具,开发东西还得要学Struts、Hibernate等。对于国内很多的初级开发者来说,学习这些框架的难度曲线太大。技术本土化不仅仅是把一门语言翻译成另外一门语言,更重要是思想的本土化、核心内容的本土化。

  说到技术及框架,一个国外的先近技术框架,都是别人先尝试用了N久证明了它的先进以后,我们国内才有一部份人拿进来开始慢慢学习,然后再宣传普及,等我们大部分人刚刚学会并以此为荣,奔走相告的时候,人家又搞了一个更加先进的出来。汗颜啊,难道我们只能疲于奔命地被人家牵着鼻子走吗?

  。。。。。。
posted @ 2006-04-28 11:11 崛起的程序员 阅读(176) | 评论 (0)编辑 收藏

         在2003年百富榜的前十位中,陈天桥即使不是崛起速度最快的富豪,也是最年轻的富豪。1973年出生的陈天桥凭借《传奇》开创了网络游戏最辉煌的案例。几年来,他的成功伴随着中国网络游戏业的成功,他的困顿也伴随着中国网络游戏业的困顿。

  “外面的世界非常热闹”

  南方都市报:1999年11月份盛大开始创业的时候,为什么会选择网络娱乐作为发展方向?

  陈天桥:当时我们一共是5个创业者,我从证券公司辞职,带上大学的一帮朋友,我们在思考什么样的产业是未来有前途的产业。那时充斥整个互联网的是旅游、是电子商务、是PORTAL(门户网站)、甚至是拍卖,是所有在美国最时髦的MODEL。

  而我们认为网络娱乐有这样几个特点,第一是没有物流问题,电话线不能把冰箱传到你家里,却可以把图像、游戏、互动的音乐传到你家里。第二,网络一定会给这个产业带来真正的附加价值。比如说,我把报纸的内容搬上网站,同样通过报纸可以浏览到新闻,我为什么要额外地付费呢?而内容通过网络会真正给你带来互动,一起体会两个人、三个人甚至上万个人的快乐。第三,要有清晰的侧重点,我一直认为盛大是娱乐企业、文化企业,而不是IT企业。第四,文化产业有一个很大的特点:同一个内容可以通过不同的形式获得不同的附加值。比如说迪斯尼的米老鼠可以通过动画展示,可以有音乐,有主题公园,它可以通过品牌提供内容,最大程度挖掘品牌效果。我当时提出“一鱼四吃”,而在网络文化产业,存在着“一鱼四吃”的可能性。

  但在最早的一年半时间里,盛大也经历了寒冬期,我当时告诫我的员工一定要耐得住寂寞,当时很多网站在做自己的广告,说自己的浏览量有多少,当时我说中国人每个人个子有一米七到一米八,你在那边跳啊跳,说自己有一米九,跳的时候就会伤自己的精力。何不坐下来等待时机的成熟。所以我特别感谢陪伴我们的团队,因为那段时间里,外面的世界非常热闹。

  南方都市报:软银亚洲今年为盛大投了4000万美元,并称看中的不是《传奇》,而是这个运营团队。一个企业在创业阶段,是如何达到相互信任的?

  陈天桥:大企业有完善的制度,而在企业很小的时候,因为制度不完善,需要相互信任,领导要相信员工、员工也要相信领导是信任他的。对企业来讲,信任是成本最低的途径。无数次的信任累积、最后会当作企业文化固定下来。这是一种博弈,就像两个罪犯分别关起来,都知道交代后一定会被枪毙,但是两个人都信任对方,谁也不肯说,结果最后就撑了过来。

  “敌进我退,敌退我进”

  南方都市报:2001年前,盛大经历了一年半的寒冬期,是不是因为当时对形势的错误估计?

  陈天桥:我们曾经犯过一个非常大的错误。现在想起来也非常好笑。当时整个公司只有50个人,但是我们就有动画、产品、平面媒体等几个事业部。伴随着“.COM”破灭,我们“一鱼四吃”的梦想也破灭了。

  2001年我们开始醒悟,那时候不瞒你说我特别喜欢看的是毛主席军事理论观点,感受最深的是,要想获得解放、获得成功,非常重要的一点就是集中优势兵力,各个歼灭,寻找敌人最薄弱的环节突破。当时正好韩国的游戏协会进入中国,首先找的是中国动画协会,动画协会说盛大喜欢做网络与动画结合的内容,于是就推荐了他们到盛大来访问。说实在的,尽管我们和韩国人之间发生了一些纠纷,但我们很钦佩韩国企业,他们在特定时候集中优势兵力,尤其金融危机后,他们把宽带领域和内容领域作为未来发展的突破口,这也是盛大从他们身上学到的一个非常重要的经验。

  南方都市报:你刚才提到毛主席军事理论观点,这是不是对你的判断、决策起到很大的作用?

  陈天桥:我上复旦的时候要军训一年。当时我们去井冈山上拉练,到过宁冈和三湾。看到毛主席在失去个人权力的时候,写下了“星星之火,可以燎原”这些文章。实际上,毛主席的胸襟、军事思想、处理问题的方式方法和企业是完全一样的。比如说“敌进我退,敌退我进”就是一个很好的例子:动画在国外已经发展了二三十年,我们不会去和对手正面交锋。但我们又拥有最大的网络游戏市场,这是我们进攻的机会。

  “盛大要做规则制定者”

  南方都市报:在经营游戏之后,你曾经说过盛大两年之内不准有人谈研发,因为需要专注,“谁跟我谈研发就把他开除”。但现在盛大又做研发又做销售,你担不担心用户不喜欢三心二意的运营商?

  陈天桥:截至去年,《传奇》同时在线的用户已经超过了60万。我们深信光靠运营这个环节,光靠我们对用户的理解和把握,就能够成为“中国在线”。但产业的发展,有时会超过个人的预计。网络文化这个产业,销售、研发、运营三个环节的紧密度实际上超过任何传统产业,它不像电影一样,看一场就结束了,网络游戏是持续发展的虚拟社会,在这样一个产业里面,如果你只是服务者而不是规则制定者,实际上会处于非常尴尬的位置。如果有人不愿意成为你的用户,这种痛苦可能还是短暂的。但如果他愿意成为你的用户,而你却无法提供他所需要的内容,那种痛苦才更为深刻。

  “花花世界原来别有洞天”

  南方都市报:现在盛大要转型做迪斯尼这样的娱乐公司,而多元化是很多企业的滑铁卢,也有很多人持怀疑态度,觉得盛大又回到自己的老路上,而且摊子铺得太大。

  陈天桥:我觉得一个产业发展到一定阶段,专注和多元化的矛盾一定会摆在企业的面前。我常说“比尔·盖茨最聪明的地方不是他做了什么,而是他没做什么”。以比尔·盖茨的实力,他可以买下纽约,可以去做房地产,但他专注在自己的操作系统、软件研发,而不被市场中别的诱惑所吸引。对于刚起步的企业来说,他没有什么可失去的,起步之后,到了一定的阶段,就需要适度多元化来分散风险。所以这是我说的一个企业发展所要经历的五个阶段,一是战略上寻找突破点,二是要专注,三是要进行整个产业链的整合,四是适度多元化,五是变成社会企业,承担适度的社会责任。

  南方都市报:你曾经说过做运营是一种病态的执着,但大家都认为,你正是靠着执着才把盛大做起来的,这种说法是不是反映了你的一种矛盾心情?

  陈天桥:之所以说病态是因为“一朝被蛇咬,十年怕井绳”。我们当时犯过多元化的错误,但现在大规模地进入研发,就像1949年解放战争的时候,是坚守阵地不敢出击,还是“宜将胜勇追穷寇?”我们也打了三大战役:《传奇》、《传奇世界》、与韩国人的官司和解。盛大已经形成了兵团的规模,我们不仅要运营的盛大,还要打到长江以南去,做研发的盛大。所以我们强调适度的多元化,我们没有回过头去做其它业务,例如经营房地产或保健品,但现在已经到了过江的时候,应该勇猛出击了。

  南方都市报:这和你以前“盛大要过独木桥”的说法相比,态度好像更积极了?

  陈天桥:任何做法从被动到主动都是有过程的。盛大开始运营游戏的时候不做研发,只是帮用户处理服务中的一些问题。但在《传奇世界》成功以后,我们发现长江以南才是“花花世界”,开始的时候只是粮草不够了,偷偷到长江以南运点回来,后来才发现长江以南别有洞天。不过我们一直也是摸着石头过河,如果可以不摸石头“噔噔噔”就过河的话,那就是圣人,我们还没有到那个程度。

  “财富榜不过是网络游戏”

  南方都市报:像盛大这种情形,很短时间里迅速积累起财富,会不会对企业员工心态有所影响?

  陈天桥:对,我们自己也认为这个时间很短。但我认为我们受财富的影响是很小的。盛大从开始到现在,一定是有变化的,但不是财富带来的变化,而是企业思考问题的方式、作风、眼界发生了改变。比如说两年前,当有一台服务器死机,遇到黑客进攻的时候,我们会十分紧张。但是经历了技术上、经营上、政策上的种种风险之后,我们改变的是胸襟、魄力、处理问题的态度和能力。财富带给人的变化很少,我们不会在这上面沾沾自喜。

  南方都市报:最近胡润、福布斯两个富豪排行榜出来以后,为什么盛大采取不作评价的态度?

  陈天桥:理论上我们对此不作评价,因为这和我们企业的风格不符。我们不是特别在意财富,而是在意我们的团队、我们的事业。财富榜对我们来讲不过是网络游戏,大家玩一场下来看看,我打了15级、他打了21级、丁磊的级别最高,仅此而已。或者在游戏中你是大侠、他是强盗、我是普通老百姓,但在现实生活中可能正好相反。我们只是按照胡润或福布斯的游戏规划扮演了财富榜上的角色而已。实际上这个东西出来第一天我们看了一下,说“哦,是这样。”从第二天起大家就再也不谈这件事了。

posted @ 2006-04-28 09:43 崛起的程序员 阅读(202) | 评论 (0)编辑 收藏

         药品使用说明书:  

      【品名】民间俗称老婆,正式场合可称妻子或内人;现亦叫达令。 
      【化学名称】woman 
      【成分】水、血液和脂肪类碳水化合物,气味幽香。 
      【理化性质】性质活泼,根据情况可分为一价(嫁)、二价(嫁)、三价(嫁)。。。。n价(嫁)。易溶于蜜语、甜言;在真情、钻石,金钱、豪宅的催化下熔点降低。难溶于白丁
  【性状】本品为可乐状的凹凸物,表面光洁,涂有各种化妆品、对钻石,铂金有强烈的亲和力;羞涩时产生红移现象;生气产生蓝移(绿移)本品随时间推移产生黄移,形状会有所改变,但不影响继续使用。
  【功能主治】
  主治单身恐惧症顽疾,对失恋和相思病也有明显效果。
  【用法用量】 建议一生一片。
  【注意事项】本品仅适用于单身之成年男性。服用时需小心谨慎,如药品导致使用者出现耳朵变软(钯耳朵)、惧内、气管炎(妻管严)等现象,则必须马上找相关专业医师咨询,并在医生指导下使用;没有则可继续使用。多吃有致命的过敏反应,吃2种以上即导致不良的相互作用!
  【规格】通常为45千克至 千克,如出现特殊超重情况,请男人加强锻炼或找健康医生处理。
  【贮藏】常温下妥善保存,室内通风处最佳;如在室外,则需避免女性、帅 哥成群处。使用期间,尤忌本品夜不归宿。
  【包装】各种时装、首饰、手袋,并随季节变化随时更换。
  【有效期】视幸福程度而定,最长可达一生;最短,一天也可能失效。
  【批准文号】正式批准文号见钻戒说明书内页。
  【生产企业】老丈母和老丈人。
  【禁忌】无论什么时候,都不能说胖
 

posted @ 2006-04-27 13:55 崛起的程序员 阅读(246) | 评论 (0)编辑 收藏

http://www.itpub.net/519295.html
*介绍
  许多年来,我在不同的新闻组上花费了很多时间与那些想知道如何得到数据库管理员(DBA)的工作或者如何成长为一名DBA的IT人进行交谈,现在他们有了工作。这些年来许多人针对如何达到这个目标提出了不同意见。本文即是那些意见的综合并且能够在如何才能出色的完成DBA的工作方面给出好的建议。这篇文章同样对于如何让一名DBA变得对老板更有价值。假如你已经是一名DBA,那么也许你会希望跳过文章的前几段。
*我应该成为一名DBA么?
  我曾问过的一个问题是一个人应该从事DBA这样的职业么。这个问题并不容易回答,因为它因人而异。有的人有成为一名好DBA所需要的天赋。而其他人并不认为能够很容易掌握成为DBA的秘诀。DBA职业需要掌握一定的技能。而且还需要其他IT职业所不必需的要求。因此,为了回答这个问题,我通常给将要成为DBA的人描述DBA职业所必需的要求。下面的段落中,我都将以问题结尾。在继续下一段以前请花一些时间考虑并且回答这些问题。
  许多人因为许多原因而立志要成为DBA。其中一个主要原因是薪水。DBA是IT业中薪水最高的职业之一。其他人想成为DBA是因为喜欢赞扬DBA是受到的荣誉,或者因为他看上去很酷!我个人认为,成为DBA是很值得的。它是一个很有意思,令人兴奋的职业。那么,你把DBA作为一个可能的职业选择的原因是什么呢?
  除非你已经提前准备好了,否则你可能会发现从事DBA职业充满了挫折和令人头痛。一个数据库存在于操作系统和最终用户应用程序之间。同样地,DBA必须非常精通他的数据库所在的操作系统。DBA并不一定需要知道所有有关操作系统的知识,但是他知道得越多越好。数据库与操作系统联系非常紧密。理解这种关联是十分必要的。DBA还需要知道服务器硬件以及它如何影响与帮助数据库。同时,DBA必须理解应用软件。DBA可能会被要求帮助开发人员创建可靠,健全的数据库应用程序。还有,最重要的也是最明显的,DBA必须十分彻底的理解数据库引擎,它是如何工作的,所有的引擎是如何组合在一起的,以及如何影响数据库引擎向最终用户和应用程序传送数据的能力。我见过的最好的DBA有非常深刻的理解而且不仅仅在数据库本身。他们知道一些系统管理与应用开发。好多时候他们在成为DBA之前有其中一个或两个背景。无论如何,成为一名合格的而不是出色的DBA也需要许多背景知识。你是否已经做好准备开始学习直到你感到已经无法再学下去了?
  许多和我交谈过的,在开始DBA职业时遇到困难的人,在尝试着吸收大量DBA所需了解的信息时实际上都会有一些问题。毕竟系统管理员是全职学习操作系统的细节。应用程序开发人员全职学习如何编写好的程序。DBA不仅要非常了解这两种不同的工作,而且还需要花费更多的时间去理解数据库的体系结构,以及理解每一样东西的每一块是如何组合在一起的!听起来是不是很让人畏缩?有许多人失败后这样想,并且把DBA工作看作一项非常困难的事情。也有那些传播和理解所有这些信息,并且使用这些信息做出好的,听起来具有技术性的决定的人。正如我以前是一名DBA时喜欢说的,所有这些对我来说看上去像一个大谜团。把这些所有的很好的组合在一起就是挑战。你是哪一种人?
  许多DBA是随时侯命的。他们会在白天或晚上的所有时间接到呼叫去解决他们的数据库出现的致命问题。数据库是商业信息技术基础组织的必不可少的组成部分。没有数据,就没有必要拥有一个计算机系统。数据推动商业。假如amazon.com的网站不能在数据库中搜索产品并且假如没有人能够为他们的产品下订单,那么它会变成什么样?它就不会在商业中存在很久。当数据库down掉,即使只是很短的时间,公司也会损失重大。基于这个原因,DBA到达现场后必须尽可能迅速的解决问题。许多公司有自己的DBA团队以便可以轮流待命。这些DBA 24x7小时的维持数据库应用程序。假如工作需要的话,你准备好随时候命了么?
  一些DBA的职责包括为软件打补丁或者对数据库做些改变。通常,这些操作不能在公司职员工作的时候做,因为此时数据库必须运行以便他们能够工作。这意味着DBA经常不得不在很早或者深夜甚至周末,总之,在正常工作时间以外来完成工作。你准备好在非正常时间工作,或者你在找一个朝九晚五的工作?
  对DBA而言,需要掌握的一个重要内容就是通常被称为“软技术”的东西。DBA需要在团队中很好的工作,通常团队是在变化的,如系统管理员,网络管理员,应用程序开发人员,项目经理和其他人。DBA要能够用流利的英语解释复杂的技术概念,让团队中其他人明白。DBA还要能够在数据库相关问题上指挥团队队员。你的软技术怎么样?
  下面不是全部列表,但是包括了DBA的典型职责:
  **把监视数据库实例当作每日必做工作以保证其可用性。解决不可用的问题。
  **收集系统统计和性能信息以便定向和配置分析。
  **配置和调整数据库实例以便在应用程序特定要求下达到最佳性能。
  **分析和管理数据库安全性。控制和监视用户对数据库的访问。必要时审计数据库的使用。
  **监视备份程序。必要时提供恢复。测试备份与恢复程序。
  **升级RDBMS软件并且在必要时使用补丁。必要时升级或者迁移数据库实例。
  **通过数据库相关动作来支持应用程序开发人员。
  **跟随数据库趋向和技术。当可应用时使用新技术。安装,测试和评估Oracle新的相关产品。
  **执行存储和物理设计。均衡设计问题以完成性能优化。
  **创建,配置和设计信的数据库实例。
  **诊断,故障检测和解决任何数据库相关问题。必要时联系Oracle支持人员以便使问题得到较好的解决。
  **确保Oracle网络软件(SQL*Net, Net8, Names, OiD)配置和运行的很好。
  **与系统管理员(Unix & NT)一起工作以保证Oracle相关事务得到很好的处理。
  **为有效的,定期的维护数据库创建任何必要的脚本。
  前面各段的问题是为了使你考虑一名DBA该做些什么,帮助你决定这是不是适合你的职业。我并非意味着假如你的目标是成为DBA这些会阻止你。我只是尝试着展现一些事实。我看到过一些DBA一旦被实际工作打击了就一蹶不振。他们花费时间,精力和一些金钱获得了他们的第一份DBA工作。我个人认为这个职业非常有价值。而且我无法想像现在做任何其他的会怎样。所以,这一段帮助你决定这是不是你希望从事的。假如它是,那么尽你所有去得到它!
*我怎样得到第一份DBA工作?
  你已经阅读了前面的段落并且认为成为一名DBA是一个好的职业。祝贺你!我希望你的职业能变成你想像得那么令人兴奋和有意义。那么,你如何找到第一份DBA工作?这个问题我已经听别人问了许多许多遍。
  在90年代早期,因特网急速发展。它使公司象草一般萌芽。公司蜂拥而至并且开始创建他们在网上的形象。几乎所有这些有网站的公司都需要一个数据库作为web应用的后台。不幸的是,当时在该领域却没有那么多DBA。在IT业,DBA变得奇缺。那段时间里,得到一份DBA工作看上去只要可以拼出“Oracle”或者可能只是在大学里接触过一学期的数据库就行。为了使生活变得更好,DBA的匮乏促使公司付给有潜力的职员很高的薪水。假如你想要成为一名DBA,很容易,非常容易。你需要做的就是证明你了解什么是数据库然后工作就会比你预期的更早的出现在你面前。
  然后因特网的泡沫破灭了。大量投产因特网的公司破产。许多给公司工作的DBA重新寻找工作。缺少DBA的公司找到一名有DBA经验的人比以前容易得多。在21世纪初期,由于经济并不十分稳固,因此生活并不容易(至少在美国如此)。公司都勒紧了他们的裤腰带。所有这些转化为更少的工作机会和DBA候选人更少的工作空缺。
  得到第一份DBA工作的最艰难的部分是每一个职位都要求有一些工作经验。如果你从公司的角度出发,你就可以理解为什么对DBA职位而言经验是必需的。假如他没有一点经验,你会付给这个人很高的工资让他去操作,维护和运行你IT基础组织的最大最重要的一部分么?你的公司会付钱给一名没有经验的DBA么?并且,在等待他成长起来的过程中可能会损失上百万美元的收入。对大多数公司而言,这些问题的答案肯定是‘不’。所以,没有经验,获得你的第一份DBA工作是很困难的。
  第一份DBA工作现在成了恶性循环的境遇。假如我没有任何经验,我怎样才能得到DBA的工作呢?我没有工作的话又怎么能得到DBA经验呢?这是要战胜的最困难的障碍。最困难的部分是获得第一个DBA工作。这部分的剩下部分将针对实现你第一个DBA工作的目标给你一些建议。
  提示#1:接受教育。 - 尽可能多的学习有关数据库的知识。这很可能将占用你正常工作以外的部分时间也精力。参加本地大学举办的数据库培训班。许多培训公司都会举办数据库管理员的培训班。假如你的老板不资助你的学习,那么你可能不得不自己支付这笔费用。许多DBA职业要求至少为计算机科学或相关专业本科以上学历,因此你必须至少有那样的文凭。
  提示#2:锻炼成为DBA。 - 许多数据库供应商都允许你下载他们数据库系统的测试版或评估版。下载一份并且在自己的个人电脑上安装软件。练习使用数据库。故意破坏数据库并且尝试修复它。尝试着履行你所能想到的尽可能多的DBA职责。测试和磨练你在自己的测试平台上的技能这样你就可以证明你的数据库管理能力。
  提示#3:获得认证。 - 许多数据库提供商都提供自己的数据库产品的认证。许多公司现在都把认证看作是一种标准。需要记住的一件事是仅获得认证是不够的。通过DBA认证测试并不意味着你知道如何管理一个数据库。它只是告诉你以后可能的老板,现在你拥有了一定的技术。它还告诉你的老板你对DBA工作的态度是很认真的。我看到许多人抱怨他们已经得到了认证但是没有经验,却仍然不能得到第一份DBA工作。认证本身并不能使你得到工作,但它是无害的。即使没有其他的,在你进行认证的时候你也已经学到了许多知识。只是不要依赖认证来给你带来你要找的工作。你需要的比这还要多。但它会在最后帮助你。
  提示#4:利用你现有的技能。 - 许多DBA具有系统管理员背景。其他的有应用程序开发背景。假如可能,查看你能否利用现有的技能来得到工作。现在的目标就是为你和你的老板创造一个双赢的局面。例如,让我们假设你已经是一名系统管理员而想进入DBA领域。也许你会找到一份工作,这份工作一部分时间里可以用到你的系统管理技能,并且在剩下的时间里可以使你涉及到数据库管理领域。假如你已经是一名某个产品平台上的DBA但你希望转到其他产品平台,那么看看你能否找到一份同时接触两个产品平台的工作。这样,公司和你都得到了想要的。在你定向到了DBA工作后,你可以试着得到一个能让你全职作它的职位,也许还可以在同一个公司中。
  提示#5:利用现在的机会。 - 有时候,一个人进入DBA领域仅仅需要的是正确的地方和正确的时机。假如你现在的老板有一个机会让你进行任何数据库的项目,抓住这个机会!任何数据库经验就比没有数据库经验要好。让你的管理者知道你十分积极的在寻找任何可能的数据库机会。他们就有可能在下次机会到来的时候想到你。进行这些数据库项目以及看到你要成为一个DBA的渴望以后,他们可能会决定培训你,提拔你。许多许多人都是以这种方式获得他的第一个DBA工作,在进行了一些数据库相关的项目后不知不觉的成为一名较低级的DBA。通常当一名DBA离开公司后,公司将在内部寻找一个候选人,假如他们认为这名候选人是可训练的话。
  提示#6:寻找较低级的DBA职位。 - 假如你只是为了一个较低级的DBA工作,看到DBA职位的需求描述说他们正在寻找高级DBA或者其他的。所以,让我们严谨一些。你并没有一个高级方面的经验。我已经讨论过了对于这样的职位为什么公司不会考虑你。但是他们会在低级的职位上考虑你。低级的DBA在高级DBA的指导下完成工作。他们摸索窍门。一般来说,高级DBA对数据库承担责任,同时也获得所有的荣誉。但是不要焦急。随着你的事业发展,你将会有越来越多的责任和得到越来越多的信任。因为你没有任何经验,你应该从这里开始启航。
  我也听到过一些公司寻找一名高级DBA,但是到最后,他们实际想要雇一名低级的DBA。你或许希望申请这样的职位虽然你也许没有资格。他们可能还是会决定雇佣你。但是提前说明你仍然在摸索阶段并且已经是较低级的DBA水平。不要试图欺骗他们让他们认为你是高级DBA的水平。这只会降低你得到这项工作的机会。
  这些提示将帮助你得到第一份DBA的工作。祝你在寻找工作时有好运气。当你已经找到了第一份DBA工作后,继续下面的部分来学习如何往下走下去。
*我刚得到我的第一份工作!现在该怎样?
  祝贺你!你现在是DBA俱乐部的正式成员了!对于这份梦寐以求的令人激动的职业,你准备好了么?你的工作才刚开始并且你在学习上已经落在后面。你将会发现要成为一名高效的数据库管理员有大量的知识你必须掌握。你的第一年或前两年将花费比以前更多的时间来学习。假如你发现学习知识的数量使你大脑超负荷,那么休息一下,歇口气,然后再回到学习中去。为了帮助你继续走下去,你可以按照下面的方法进行:
  步骤#1: 关系型数据库理论 - 这部分我假设你将管理的数据库是一个“关系型”数据库。其他数据库模型也存在,但是关系型模式是近二十年工业上占统治地位的一种数据库模式。假如你的数据库系统是其他的模式,那么学习它的理论。相关数据库理论是十分重要的。它是其他一切的基础。我也看到许多跳到数据库管理职位的人从不想去学习纯粹的关系型数据库理论。不可避免的,在他们的事业中对理论基础的匮乏作为缺点暴露了出来。假如你对关系型数据库理论理解得很好,那么你将非常容易的在任何平台的关系型数据库管理系统(RDBMS)中转变。我使用Oracle数据库,或者IBM的DB2,或者微软的SQL Server是无关紧要的。他们都是关系型数据库系统。他们在最底层都在做着相同的事情。区别在于他们怎样去做相同的事情。纯粹的关系型数据库理论对于较低级的DBA来说并非必需的。但是假如你想要超越低级DBA的水平它就是十分重要的。许多大学的教科书都很好的包含了关系型数据库的理论。其中一本被广泛使用的教科书就是由Elmasri and Navathe编写的数据库系统基础,Bejamin/Cummings Press。
  步骤#2: 彻底的学习查询语言 - 数据库都有语言让你能够从数据库中得到数据,把数据放到数据库中,以及修改数据库中的数据。对于关系型数据库而言,这种语言就是结构化查询语言(SQL)。这门语言是你与数据库接触的工具。不能让这个工具成为以后学习的障碍,这一点很重要。在你的测试数据库中练习不同的SQL语句直到他们变成了你的习惯。这方面的一本非常好的书叫做Oracle 9i完全参考(Oracle 9i The Complete Reference)由Loney 和Koch编写,Oracle Press。每一名Oracle DBA都应该在他事业的早期阅读这本书。Oracle 9i参考手册(Oracle 9i SQL Reference manual)是另一个很重要的知识来源。在他们的技术网站TechNet上( 
http://technet.oracle.com  )你可以访问所有的Oracle在线文档。你必须注册一个账号,但是它是免费的。每个都应该在TechNet上有一个账号。
  步骤#3: 开始学习基本的数据库管理工作 - 这难道不是你最开始在这里的原因?为什么它在列表的第三位?我们尝试着建造一个知识的金字塔,我强烈的感觉到一个人需要知道关系型数据库理论和SQL,并且在你学习如何进行基本的数据库管理工作时把他们当作工具来使用。这些工作包括启动和关闭数据库,备份和恢复数据库,以及创建/删除/修改数据库对象。对于Oracle数据库管理而言,在市面上有大量的书籍可以给你所期望的一个很好的体会。这本书是Oracle 9i DBA手册(Oracle 9i DBA Handbook by Loney on Oracle Press)。我知道的大多数DBA都在他们事业的早期不只一遍的阅读过这本书。这里,你应该同时阅读和理解Oracle 9i 概念指导,Oracle 9i管理员指导,以及Oracle 9i备份与恢复指导(Oracle 9i Concepts Guide, the Oracle 9i Administrator’s Guide, and the Oracle 9i Backup and Recovery Guide)都来自Oracle文档。
  步骤#4: 阅读,阅读,再阅读 - 由于你才刚开始你的DBA职业生涯,因此你正在开始为你的技能奠定基础。这需要一段很长的时间去形成,吸收和领会所有你将学到的知识。毫无疑问的,比你资深的DBA由许多工作要做,因此他们可能不会总是腾出大量时间辅导你的学习。你不得不靠自己学习很多东西。这就是阅读的目的。市面上有许多书籍可以解答许多数据库相关的话题。Oracle Press是Oracle公司的官方出版社,有大量的Oracle相关书籍。同时也有其他的出版社,如Wrox Press 和 O’Reilly Press。你也可以找到Oracle文档来阅读。并且还有许多网站和新闻组。尽可能多的读书使你能够继续下去。还有,不只一遍的阅读它们可以使你吸收你第一次阅读时错过的内容。
  步骤#5: 创建测试案例 - 我经常看到初学者问一些很基础的问题,其实假如他们花一些时间来考虑,这些问题都是很容易解答的。毫无疑问的,在你开始学习Oracle的时候你会有许多的问题。看看这些问题你能不能自己回答出来。例如,我又一次被问到能不能向有唯一性约束的列中插入空值。最开始,这看上去也许不是很容易回答的问题。但它却是非常容易去试验的!只需要创建一个简单的表。在其中的一列,假如唯一性约束。尝试着在该列插入一个空值。有效么?你应该能够非常容易的回答出这个问题了。那么,为什么要创建这些案例呢?一个原因是这样做可以提高你解决问题的能力。创建这些案例需要的技能就是解决问题用到的技能。解决问题的技能将会对你的DBA事业有很大的帮助。另一个原因是随着你的事业的发展,你将经常需要创建更复杂的测试案例以便保证数据库和应用程序的成功。在将来,甚至简单的测试案例也可以组成更复杂的数据库和应用程序分解。
  步骤#6: 找一个良师 - 一个良师能够为你的DBA生涯(或者其它类似的职业)引领方向。他们能够给你指示,回答问题以及在你的DBA的成长过程中帮助你节约一些时间。但愿这篇文章能够在你事业发展的一段时间内起到良师益友的作用。假如你与一名资深的DBA共同工作,那么那个人应该有责任为你的事业进行有益的指导。你也可以同时选择其他的人指导你。
  步骤#7: 参加本地用户群 - 许多跨国家的城市有本地用户群,他们定期聚会讨论数据库相关的话题。假如可能,参加其中一个本地用户群。这将给你一个与他人相互交流的很好的方法。
*我如何能够从一名DBA初学者变为一个具有中级水平的DBA?
  你已经成为DBA一段时间了,你现在希望你的技术水平提高一阶么?下一步该怎么做?首先,往回看前面的部分,确认你已经完成了所有的步骤。彻底理解SQL语言是十分重要的。理解关系型数据库理论和掌握基本的数据库管理任务也是非常重要的。到如今,你应该阅读文档和其他书籍到已经郁闷了。假如没有,那么你还没准备好继续深造,增长你的DBA的技术水平。假如你已经准备好继续了,我已为你的继续深造准备了一些方法。
  步骤#1: 学习操作系统和你的服务器硬件 - 正如我前面所说,数据库存在于操作系统和服务器硬件之上。理解这些组成部分如何工作是很必要的。你应该知道如何与特殊的操作系统相合。你如何删除或者编辑文件?假如你的操作系统是Unix,你应该掌握命令行以及Unix命令如何辅助你工作。对于运行在Windows或其他操作系统上而言也是一样的。你同时需要对服务器的硬件有一定的了解。物理内存和虚拟内存有什么区别?RAID是什么以及不同的级别是如何产生影响的?为什么数据库喜欢更多的物理硬盘而非一个大硬盘卷?你需要知道这些事情以便你能够容易的与系统管理员进行如何配置好你的服务器以便使它能够充分的支持数据库方面的交谈。
  步骤#2: 学习应用程序设计因为它与数据库相关 - 如前面所述,数据库存在于操作系统与数据库应用程序之间。你真的需要这两者。SQL语言是如何帮助创建好的应用程序的?绑定变量是什么并且为什么他们很重要?Tom Kyte 写了一本非常好的书,在Oracle应用程序设计上给出了很好的建议。他的Expert One-on-one Oracle书可在 Wrox Press找到。我强烈推荐阅读此书。他详细的叙述了那些能够生成和破坏Oracle应用程序的东西。你需要知道这些,因为你的应用程序开发人员希望从你这里得到指导和数据库知识。学习任何与应用程序设计有关的知识。也许参加一个关于软件工程,操作系统或数据结构的课程班会有好处。
  步骤#4: 取得认证 - 也许你的工作并不需要,但是取得认证一定对你有益。作为DBA的每一天里,你学到了许多新的和令人激动的事情。也许在你职业生涯的这段时间里,有几天你没学到任何新的东西。但你仍然有很多要学习。成为一名OCP(Oracle Certified Professional) DBA要求你必须已经学到了数据库管理所有方面的基础。我发现在OCP考试的学习过程中,我学到了在我工作中从未接触过的东西。一次我学到了我从未碰到过的一个特殊课题,在后来的日子里我就能够使用那个知识解决问题。假如我从为在OCP考试中学倒它,那么我永远也不会用那种特殊的方法去解决问题。这已经一次次的发生在我的面前。有的人可能会说认证实际上真的不值得。我要说它只会对你有益无害。所以,去取得认证吧!
  步骤#5: 获得一个资源库 - 在前面的部分中,我指出每个DBA都应该在Technet上有个账号。这是你其中一个主要资源。但是同时还有许多其他资源。很多人共享他们的Oracle知识。假如你还没有开始,你应该用网络浏览器去搜索并收集很多Oracle资源。愿意的话,你可以从访问我的网站( 
http://www.peasland.net  )开始。下面是一些Oracle DBA必须了解得网站列表:
  **Ask Tom - 
http://asktom.oracle.com
  **Jonathan Lewis web site -  http://www.jlcomp.demon.co.uk/
  **Ixora (Steve Adams) -  http://www.ixora.com.au
  **Orapub -  http://www.orapub.com
  **Metalink (Oracle支持网站) -  http://metalink.oracle.com
  还有许多其它的好网站。
  步骤#6: 开始在不同的新闻组和论坛上交流 - 也许你已经发现了他们,但假如现在你还没有那么是时候去开始了。有许多的新闻组和论坛可以回答你的任何Oracle问题。在Oracle群落里还有许多高手愿意和你共享他们的知识。你所要做的就是提问。下面是一个列表包含了可以开始交流的最好的因特网团体:
  **Usenet newsgroups - comp.databases.oracle.server 和 comp.databases.oracle.misc 是两个可以交流的非常著名的世界性的新闻组。他们拥有大量的针对Oracle问题的交流卷宗。观看这些组的最好的方法式使用新闻广播员。但是假如你想通过基于web的方式访问,也可以通过Google搜索引擎搜索它。( 
http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&group=comp.databases.oracle )
  **Quest Pipelines - 当他们在最开始还属于软件提供商RevealNet的时候,被称为the RevealNet Pipelines。现在,Quest购买了RevealNet 并且拥有Pipelines 。因为Pipelines是中等的,所以这些是我最喜欢的。你可以在这里找到Pipelines ( 
http://www.quest-pipelines.com/index.asp  )。
  观察别人是如何经历考验和磨难的是一件好事。假如你有问题,可以自由的在群里提出来。假如你要提出问题,通常应该包括一些信息,比如你的Oracle版本和Oracle运行的平台。这些将会得到有很大的差别的答案。假如你忘记了,会有人提醒你!甚至你不用提问也可以从其他人的答案中学到许多知识。我已经记不得多少次我之所以能够解决问题完全是因为我记得其他人在新闻组里问过相同的问题。
*我如何从一名具有中级水平的DBA转变为一名高级DBA?
  好,作为DBA你已经坚持不懈的努力了很长时间。你感到自己已经准备好往前再走一步。成为一名高级DBA需要什么?下面的部分将帮助你走下去。
  步骤#1: 阅读所有的文档 - Oracle文档通常并不是很容易阅读的。无数次,你翻阅文档只是为了要弄清整件事情。假如文档是最好的东西,那么那些站在你的书架里的Oracle书籍就不会有市场。但是文档确实包含了一些无法在任何其他地方找到的信息。例如,你无法找到每一个专门的INIT.ORA参数或V$视图的详细说明。书本上也许会涉及一部分,但是Oracle文档却包含它们所有。我遇到过一个非常厉害的高级DBA,他没有从头至尾的阅读过Oracle文档。这不是偶然的。Oracle文档是必须阅读的。也许到现在为止你已经读过Oracle概念指导十二遍了。但是当Oracle 10i发布了,你还要再次阅读。任何有关10i的新概念将在文档里记录。假如你真的想更上一层,那么,去阅读那些文档。不要逃避它。
  步骤#2: 成为一名专家 - Oracle数据库是一个非常复杂的东西。为了更上一层,你必须精通产品的许多组成部分。以备份与恢复开始。成为一名备份与恢复的专家。故意的破坏数据库然后察看如何恢复它。尝试以任何可能的方式破坏数据库然后查看还有没有可能恢复。你将彻底的理解备份与恢复的概念。在你成为了备份与恢复的专家以后,再去成为其他领域的专家。你会有无穷无尽的题目要去掌握。在你整个职业生涯中都保持如此。但是请记住,无论你有多么专业,在某些领域,某些人会在某些方面知道的比你多。不要带个人情绪。只是尽可能多的从那个人那里学到知识。
  步骤#3: 积极参加新闻组,论坛和用户组 - 在前面,我提过为什么不同的新闻组和论坛是学习新知识的很好的地方。现在轮到你进行下一步并且去回答任何你能够回答的问题。你将会惊讶于在这过程中你能学到那么多!
  步骤#4: 写白皮书并且展示它们 - 这与前面提到的方法类似。首先,共享你拥有的知识是很重要的。假如你的职业生涯已经走到这一步,那么从某种意义上讲,是离不开他人的贡献的。所以,现在是你为他人奉献的时候了。第二,当你企图共享你的信息的时候会有令人惊异的事情发生。在你要用清楚的,简练的语言表述问题以便其他人能够使用时,那些信息在你的头脑里经过了一个令人瞠目的过程。这个过程使你巩固了知识,这是无法通过其它方法进行的。所以在白皮书中共享那些信息,讨论会,以及新闻组和论坛都是你学习和使你的能力更上一层的非常好的方法。顺着这条路,你应该作两件事。第一,认识到你将会犯错误。其他人将会很高兴的指出那些错误,有时在某种意义上那并不是很好。不要企图掩藏你的错误。承认它们并从它们那里学习。第二,学会说你不知道答案而不是企图以欺骗的方式通过。人们早晚会知道你在企图蒙蔽他们。简单的告诉他们现在你对答案并不肯定,但你会在查到答案后回来告诉他们。假如你时刻谨记这两件事,你就不会违背你的诚实而且你将成长为一名职业的IT人。
  步骤#5: 成为解决Oracle问题的专家? 高级DBA通常都是被看作是解决复杂的Oracle问题的人。你将会用到你所有的技术来解决许多问题,这些技术都是你的职业生涯中积累下来的。我前面提到的任何事都将会在解决问题的过程中用到;文档,书籍,新闻组,测试案例,和其它DBA都将辅助你解决问题。
  步骤#6: 成为性能调优的专家? 高级DBA通常都是被看作是调整数据库和应用程序性能的人。假如你是高级DBA但是你却不能分析性能瓶颈,那么你的公司将会到别处寻找这些服务。
  步骤#7: 成为承载能力计划的专家? 高级DBA通常都是被看作是根据数据增长量和交易增长来计划数据库承载能力的人。高级DBA需要在影响应用程序性能以前发现系统瓶颈。例如,DBA应该知道在数据库将可用的磁盘空间用完以前预置更多的磁盘空间。不密切关注承载能力计划将会导致生产数据库宕机。
  步骤#8: 密切关注新的技术? 高级DBA应该对IT界的关数据库技术的未来有好的建议。有什么可用的技术可以帮助数据库?例如,学习存储领域网的优缺点以及如何把它们应用到数据库系统。有什么技术在不远的将来可以用,哪些能够帮助我们?例如,写这篇文章的时候,linux操作系统正在变得越来越流行。Lunix会给你的数据库操作系统平台带来些什么?它能为你的公司工作么?
*结论
  从获得第一份工作,到从一名初级的DBA成长成一名高级DBA,我希望这篇文章在如何度过你的职业生涯的各个阶段方面给了你一些建议。无论你现在处在你的DBA职业生涯的哪一阶段都可以用到这篇文章。

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=671610

posted @ 2006-04-27 09:39 崛起的程序员 阅读(225) | 评论 (0)编辑 收藏
仅列出标题
共9页: 上一页 1 2 3 4 5 6 7 8 9