作者简介:
Joel Perez云和恩墨首席技术专家
OracleACE总监, Maximum Availability OCM,获11g和12C的OCM证书,在超过50个国家的Oracle研讨会上发表演讲,2003年获得OTN 专家的荣誉称号,也是全球第一批ACE称号获得者,他十数年潜心学习钻研Oracle技术,致力于数据库高可用、灾难恢复、升级迁移和数据复制等方向设计和实现解决方案
在我每天接触到的技术的人群中,有很多人会询问我关于学习Oracle的方法,希望在Oracle 领域取得建树,或者成为国际技术顾问。我想说做任何事情没有绝对正确的方法,可能因人而异。但的确存在一些适用于大部分人的方法使我们更有效地学习和提升。接下来我将会通过我的职业生涯及一些经历来分享我个人的学习方法。希望对大家有所帮助。
1初闻Oracle
我20岁的时候,在我的祖国委内瑞拉的一所学校教电子相关的课程。在一次课上,我跟一个学生有以下的对话内容。
我的学生:Joel,你听说过一种叫Oracle的技术吗?
我:没有,那是什么?
我的学生:这是一个很棒的数据库软件,我的公司总部位于法国巴黎,现在急需大量的高级DBA来管理重要的数据库,如果你有兴趣的话,我可以推荐你过去。
我:我现在还不知道Oracle是什么,但我觉得如果像巴黎这样一个发达城市,需要Oracle相关的技术人员,那么Oracle 技术应该会在以后会有很好的发展前景。
那天我回家在网上搜索了一些关于Oracle技术相关的内容,连续两个小时的搜索,我就对Oracle产生了强烈的兴趣,并决定,Oracle 技术将会成为我今后技术生涯的主要方向。
2眼界与规划
在我了解了Oracle的那一刻,我就决定了我要学习Oracle。但是选择一个方向,不能因为一时心血来潮或者短暂的兴趣,一定要有长远的打算,要在这个领域做出些成就。
我认为规划和眼界是很重要的。对于任何一个人,无论你在数学,化学或者象棋等各方面表现出极强的天赋,若没有眼界,对自己的人生没有合理的规划,无论是学习Oracle还是其他的知识,都不能获得成功。
3选择适合自己的路
那天晚上我买了一些书,首先从介绍Oracle是什么和Oracle区别于其他数据库的一些特征开始学习。我发现,Oracle其实是一个很广泛的领域,包含很多方面的知识。那么在学习的过程中,就不能因贪多而浅尝辄止,你必须要选择适合你的方向,然后深入学习。在做任何决定之前,一定要思考清楚,现实中有很多学习Oracle的人,因一时兴起做了选择,但由于对未来没有明确的规划,最终不能在这条路上坚持下来。
在学习Oracle的时候,选择合适的资料书是很重要的。找到适合自己的书,然后深入研究,一定会有收获。现在的社会,并不缺少技术类的书籍,我记得在我上学的时候一本技术书还不到50美元,并不贵,但却很少有人买,更少有人看。
后来随着我对 Oracle学习的深入,看了很多的书,除了学习知识以外,我也会比较这些书的不同,分析作者的思路,我慢慢发现,对于一个作者来说,要写一本好书是非常难的。他们不仅需要选择有价值的内容,还要花很多的精力思考如何合理组织这些内容,让读者有最佳的体验。每一个作者的努力付出并不是出于商业的目的,事实上也赚不了钱,而是一种技术的分享。所以在此我建议大家,当你选择了一本好的资料书,一定要充分利用它的价值,因为作者为了让你更好地学习,花了很多的心思和精力。
在我们学习成长的道路上,除了自己的努力,我认为把自己融入一种技术的圈子很重要,让你的身边有一些跟你追求同样东西的人,这样的人可以是你的偶像或者一起学习的伙伴,因为“独学而无友,则孤陋而寡闻”。无论我们所学的是什么,总有一些领域的大师,他们在很早之前就走过了我们将要走的路,所以很多我们会面临的困难和挫折,他们都经历过,因此,我们要从他们的教训中获取经验,从他们的经验里获得成长,可以多听取他们的意见建议,从而成长得更快。同时,当我们以行业内某一个大师级别的人为我们的榜样,我们在日常生活和工作中,也会更多地约束自己。另外,很重要的一点是,我们最好能够找到志同道合的学习伙伴,跟我们一起进步。在彼此的分享交流中,能够共同成长。在我刚开始学习Oracle的时候,我有一个朋友曾带我去他所在的公司,以简明的方式带我认识了Oracle在生活中的应用,让我对Oracle技术有了更深刻的认识。虽然他的分享只有短短的一天,但对我后来的职业生涯影响非常大。
自从我决定要在Oracle方面深入研究学习之后,我回到大学校园上了跟Oracle相关的课程。这次回到校园,距离第一次上大学已相隔15年,我不得不承认,大学的教学方式发生了很大的变化。过去那些年虽然已经存在很多的企业版的软件(如EM工具)可以辅助教学,但跟数据库相关的课程的操作都是手动完成的,也就是说我们当时还是敲命令实现的,因此对于一个初学Oracle的人来说,通过上课能够获得很大的能力提升。但现在时代变了,教学方式的改变给学习的人带来了一些方便,但随之而来的弊端也不少。接下来我会详细谈一下当今大学课程的利与弊。
利,主要表现在以下几方面。
(1)当今大学的Oracle相关的课程,会通过与Oracle公司的相关配合和推动,使得课程内容与市场的需求一致,培养市场化的人才。比如说对于Oracle RAC技术,如果你通过官方文档来学习,你会发现要学的内容有很多,也很复杂,但在你大学的Oracle课程当中,会将其中他们认为最重要的框架列出来,然后你按照他们的思路来学习。这些框架的学习能够让你更快地投入到工作当中,掌握最核心的技术点。
(2)能够让你快速地掌握一门技术,比如对于一个完全不懂Oracle 的人,可能只需要5天左右的时间就让你了解Data Guard的技术原理和相关操作。
(3)这些课程为你的Oracle相关认证奠定基础。
(4)在一些国家,修这些课程能够为你的专业表现获得额外加分。
弊,主要表现在以下几方面。
(1)以前的课程练习和授课都是代码完成的,现在的课程很多采用了企业级的一些集成软件(如EM工具),虽然操作起来方便,但不容易清晰地理解其内部原理。如果你想要深入学习原理的话,还需要额外找资料学习。
(2)Oracle的相关课程和认证都是很昂贵的。
我修过很多Oracle的课程,这些课程让我对Oracle技术的认识更深刻,也加快了我在Oracle这条路上的成长。通常情况下,这些课程能教你快速地掌握一门技术,只有在很少数的情况下,才需要为了学习某项特定技术花几个月的时间。因为我上了很多的Oracle相关的课程,这帮助我后来成为拉丁美洲在Oracle领域最卓越的领袖之一。
4树立目标
最快的成长方式就是寻找合适的参照物,然后不断接近它。在我的职业生涯中,我曾有两个偶像,一个是美国的Tom Kyte,另一个是印度的Arup Nanda。我最初了解到Kyte是通过一个技术论坛https://asktom.oracle.com,这是一个分享技术的论坛,我经常会看上面的内容。说到论坛,这也是我认为学习中比较重要的一个环节,我接下来会详细谈我的一些体会。
我内心一直渴望成为他们那样的人。于是我不断研读他们写的书、文章、博客等,这些对我的指导作用很大。我很看中目标的重要性,如果你想在某个领域有所建树,就多向领域内的专家看齐,了解他们的学习方法、思维模式以及处事风格,这样经过潜移默化的影响,你自己也会变得越来越像他们。
论坛是获取和传播知识的一个很基本但很有效的平台。在论坛上,每天有成千上万的人提问题,也有成千上万的人准备回答问题,你可以通过论坛的交流积累一定的专业知识,然后在分享中不断深入和广泛地学习,这能够帮助你快速在论坛成名。我是从13年前开始接触论坛的,尤其是Oracle论坛,刚开始短暂的接触就让我爱上了这种学习方式。因为每天有好多人问各种各样的问题,这迫使我不断地去钻研和深入学习,这在很大程度上巩固了我自己的知识储备。同时当我跟别人交流的时候,思想碰撞,又能够去发现新的知识点,通过这种方式开阔了我的视野,让我勇于探索和创新。我完全投入论坛的时间大概有一年半。在这期间,我积极参与讨论和互动,渐渐成为全球Oracle论坛上回答问题最多的人之一。为此,2003年,Oracle给我颁发了“OTN 专家”的荣誉称号,我是拉丁美洲第一个在Oracle领域被OTN授予专家称号的人,后来也成为全球第一批的ACE。
我觉得写文章是一个人分享知识的有效途径,我曾在读同事的技术文章的短短几分钟的时间都能够学到很多的技术要点。在我学习Oracle生涯中,我会选择行业内一些有名作家的作品去读,然后尝试着学着他们的方式去写。期间我最大的感悟就是,当你为着出版文章的目的去学习新的知识,探索新的领域的时候,你会充满动力,比往常更加深入地研究,因为你心里清楚地知道,你所要表达的内容是要给公众,给千千万万的读者看的。因为不希望出错,所以写作过程也是提高技术、增加学习严谨度的重要途径。
像我之前提到的,我有两个偶像,Tom Kyte和 Arup Nanda,他们曾被认为是Oracle行业内最伟大的作家。幸运的是,在过去的5年里,我在世界各地传播Oracle技术和各类交流活动的时候,都曾与Tom共事。受到他们两人的影响,我在积累了一定的知识之后,开始学着写一些文章,最初主要是发表在“OTN 西班牙频道”和“OTN 葡萄牙频道”,我是这两个频道的主要作者,现在借助OTN平台,我已经在全球范围内发表技术文章。
现在各类技术峰会和在线研讨会变得越来越流行,通过各类会议的交流和分享,可以扩展自己的知识面、增加行业见识。有些会议是免费的,当然也有收费的。根据我这些年的经验,大部分的演讲者会在发言的前45分钟里将自己对某个领域或者某个技术点的认识和研究成果尽量细致地展示,甚至会包含稍夸大的成分去渲染,以此来达到吸引听众的目的。而后面的45分钟,则会描述一些自己的职业生涯的经历,表达一种职业的情怀。但无论哪一部分内容,因为他们丰富的经验和深入的研究,总会让作为听众的你获益匪浅。所以我比较推荐大家多参加一些技术研讨会。
几年前我就开始在这类会议中发表演讲,目前为止我已经在30多个国家做过技术演讲,无论是作为演讲者还是作为听众,在这类会议中我总能学到很多的东西借此丰富自己。
前面向大家推荐了一些我个人认为有价值的学习方法和途径,接下来我会谈一谈关于Oracle 技术认证的事情。对于学一门技术到底要不要考相关认证,这个话题一直都是智者见智,并没有绝对正确的观点。我只是分享一下我个人的一些看法。
我印象深刻的一次经历,有个业务需要持有Oracle 证书就可以接,并且薪酬是250000美元。从能力上讲,我觉得我可能并不比考了认证的人差,但仅仅因为没有证书,我就有些怀疑和犹豫,不知道自己是否配得去接这个业务机会。
我认为考技术认证是非常值得并且有必要的事情。说到费用,各地可能存在差异,但我觉得比起考认证的益处,这远不足以阻拦我们。这不仅是对你所学知识的肯定,也在很大程度上反映出你在某方面的能力。以下是考技术认证的几个优点。
(1)通过认证可以检验你是否掌握了Oracle希望你掌握的东西,而这些都是Oracle领域最核心最有价值的内容,也是你从一个学习的角色转为从事Oracle技术的工作人员所必须具备的能力,因此,从某种意义上说,通过认证能检验你是否真的准备好了跨入Oracle领域。
(2)在你认证备考的过程中,会得到很多的资料,这些资料的价值远不止是让你通过认证。对于学技术的你来说,这些资料一生都是有用的,值得你不断研究和深入探索。
(3)认证让你的简历更吸引眼球。事实上,写一大堆你能做什么,你做了什么,可能还不如几个很出名的证书更有意义。
(4)拿Oracle的认证来说,OCM的认证不仅需要掌握很多的技术原理,同时还需要大量的实践,备考过程更是充满压力和挑战。在这样的环境中,不仅仅让你的技术得到提升,也会锻炼你的耐力、毅力,让你为今后学习路上的各种困难做好准备。
我习惯将OracleACED或者OCM Maximum Availability, Cloud12c/11g作为我主要的头衔,因为这对我来说,不仅仅是一种认证,而是代表着我一路走来的付出与收获。
迄今为止,我从事Oracle行业已经17年了,期间我参加过各类会议、商务活动等。我个人很喜欢旅行,因为兴趣和工作的缘故,我目前走过了85个国家,这并不是一件容易的事情。我想我坚持下来的理由就是,我热爱我所做的,所以我能够完全将自己的生活和工作融为一体,在工作中收获快乐,丰富人生。我自豪地认为,从最初踏入Oracle领域到现在,我一直做正确的事和正确的决定。因此今天把我的经历分享给你,不是告诉你我有多厉害,而是希望你通过我的经历去思考自己的人生,选择自己所爱的方向,然后坚定不移地走下去。愿你有一个丰富而充实的人生!
节选自《Oracle性能优化与诊断案例精选第三章》