本期名人堂我们邀请到了oracle经验丰富的张华福先生,他为我们分享了未来DBA的生存状态,更多的介绍学习数据库应掌握的技能。
hwayw:
您先自我介绍一下?分享以下您的职业经历?您目前的从事的工作?
ZALBB:
张华福,PUB上ID为ZALBB。一直从事与ORACLE数据库相关的工作,早期在软件公司作开发,曾参与电信97工程,INTERGRAPH的GFRAMME项目开发,香港永隆银行营业存储管理报表系统。目前在一家销售企业的IT部当DBA。
hwayw:
您一直都是在从事oracle数据库方面的工作,对于ORACLE的应用您更是具有丰富的经验,ORACLE在大型数据库的应用中主要有哪些应用呢?ORACLE作为大型数据库在市场上有哪些应用领域?
ZALBB:
可以这么说,ORACLE在各行各业的企业信息化建设中,都应用得上:我服务过和了解过的这些行业,包括:金融、保险、通信、物流、制造、医疗、销售, 都在用ORACLE数据库; 2010年,ORACLE数据库在数据库市场占有率达48.1%的,接近整个市场的一半;再看ORACLE所基于的系统平台,小到个人PC上使用的WINDOWS NT,大到IBM的大型机Z/OS,传统的SOLIARS,HP UNIX,以及当下发展势头迅猛的LINUX等平台,可以说,只要在用的系统,都有相对应ORACLE数据库软件供安装使用,从这几点上看,ORACLE数据库的应用范围/领域是相当的广范;当然,需要说明的是,很多企业,不只使用一种数据库,除了ORACLE,DB2/SQL SERVER/MYSQL等也都在用。作为关系数据库市场上的领头羊,ORACLE除了基本的数据管理功能外,还融合了上下文本管理,JAVA虚拟机,XML数据库,interMedia 多媒体组件,Spatial 地理空间数据管理
等等,ORACLE自身这些强大的功能组件,说明了ORACLE在技术上一直孜孜不倦地创新,使其应用愈加广泛。
hwayw:
SQL优化对提高数据库性能有很大的帮助,在您工作的中,有什么好的SQL优化例子可以与大家分享?以及对于SQL优化我们更应该注意什么?
ZALBB:
关于SQL的优化方法和案例,今年7月,PUB在深圳举行ORACLE数据库沙龙讲座时,我作了演讲,过后也发了演讲的PPT,基本的思路和案例里面都提到了,大家需要的可到PUB下载。若有不明的,可以
在站内发贴或短信和我讨论。对于SQL效率的关注点,建议重点从这几项指标去考量:
1 语句各步骤的 运行耗时,
2 语句总的 一致读的个数,
3 实际运行过程中,各步骤读取/生成的ROWS。前两项大家都熟悉了,第3项,可用来考量各表(数据集)间的关联关系恰当/优化与否。不过这一项,需要对语句作10046事件,或者在语句里加
HINT:/*+ gather_plan_statistics*/ 来跟踪获取。 再谈谈SQL优化时,我常用的观察方法:10046+ HINT。采集了语句中所涉及到的表的统计信息,先用EXPLAIN PLAN, DBMS_XPLAN来获取其执行计划,若觉得语句的执行计划有异常,再使用10046跟踪获取语句的执行过程,按照上面提到的3点,考量语句是否达到优;否,可以根据10046查看到的情况,使用合适的HINT 来改变执行计划,再跟踪观察比较,后思考总结。这是个循序渐进的过程,需要不断的学习积累。
hwayw:
在您的工作中,您觉得数据库的架构对整套系统的作用占多少比重?我们如何来评估一个数据库的架构是否合理?同时您用得多的备份和恢复的技术或者方法是哪种呢?
ZALBB:
从事系统设计,开发的DBA都知道,系统数据库架构是从实际业务需求出发,经过需求分析确认后,根据业务流程,设计出符合业务运行的系统结构。这是一项劳心劳力的工作,不仅需要对当前业务需求的充分了解,还要酌情考虑日后可能出现的新的业务需求,可以这么说,数据库的架构一旦定型,业务的功能范围及业务流程基本确定了。因此,架构的与否,对整套系统的高效,流畅地运行,以及日后新需求,新业务的扩展,起着关键的作用;而且,实际生产应用中,日常的数据抽取,分类,加工,汇总等工作的效率,也都与数据库架构的设计有关,从这点上讲,架构的设计,应当占到系统从需求提出到投入生产整个过程建设的20%以上的比重。评估一个数据库架构是否合理,可以从这几点去思考:
1 是否满足业务需求,达到当初设计的要求。
2 架构是否简洁,通过补充或扩展,能否满足业务扩展的需求?
3 效率/性能符合预期,没有锁堵塞,死锁。
4 历史数据能够统一切割转移,不影响系统的运行。
这些年来,我主要从事ORACLE DBA工作,所以,ORACLE的备份工作,使用其自带的备份工具:RMAN。事实上,这些年对RMAN的使用,我认为RMAN是一款非常的备份工具,以往担心备份策略不完善,或不方便恢复等操作,用上RMAN,迎刃而解;还可以这样说,你能想到的,需要的这个功能,或者你没意识的,实际上对你作管理/备份/恢复有帮助的,ORACLE的RMAN都替你想好,设计好,只是在使用上,你没应用上罢了。随着ORACLE数据库版本的不断升级,RMAN的功能也亦加丰富和完善,更加便于使用。
前段时间,去帮一个在制造业工作的朋友恢复数据,经过一番忙碌,来到了RECOVER DATABASE这一步,结果在读到第4个日志时,RMAN报找不到之后的日志恢复,此前他们曾表示,已经备份了所有的日志。反复查找,仍旧找不到,后去查看备份/恢复策略,结果才发现,根本没设定:过段时间,不管前面备份如何,操作系统自动删除前几天的日志。看了心里凉拨,这如何收手。所以我坚持认为,对于一个专职DBA,如果不会使用RMAN作备份管理,那这是个不合格的DBA。
hwayw:
现在有很多人都在说Oracle数据库现在越来越稳定,功能越来越先进,越来越自动,Oracle的应用操作会越来越简单,于是断言DBA这个行业将要逐渐消亡,请问您对此有何看法?DBA的前景如何?
ZALBB:
这个问题,我分两部分解答:我同意你前半段的说法,ORACLE数据库功能是越来强大,越来越自动化,但这不代表对ORACLE的操作/管理会越来越简单,事实上,ORACLE博大精深,小到简单的SQL查询修改,大到ORACLE数据库多种功能的应用调优,都需要花许多精力去学习思考。在我看来,熟练地用好ORACLE数据库,做到能应付解决各种数据库难题,这已经是件不容易的事,需要反复地学习研究,实践,思考,总结;并且,随着ORACLE功能的不断丰富和强化,你得去了解补充掌握这些新知识,去阅读,思考,测试等等摸索工作,这不是随便找个IT人员,拿上一本<<21天熟练掌握XXX>> 看上半天,便 可以解决。作为保存企业生产系统核心数据的数据库,数据的安全和精细化的运维管理,需要专业的DBA专职负责!2 ,他们所顾虑的,DBA这个行业要消亡,在我看来,实际是这个行业的市场度越来越成熟,这方面的人才越来越多,以往看似黑匣子的数据库,现已经被大家所熟知,DBA不再是“香饽饽”,这是市场的客观规律,一方面,我们要强化自己的技能,不仅仅只掌握数据库的应用;同时,对操作系统,网络,存储等也要学习,做到一技多能,与时俱进;另一方面,要对自身的岗位有个清楚的意识,IT部 在企业生产中,是服务部门,DBA 不应当只停留在系统数据库的管理上,需要了解你所从事行业的业务知识,积极主动地发挥你的技能,应用到业务生产中,在创造价值的同时,也是体现自身价值。一句话,掉队的不是技能和行业,而是自身的思想,工作的积极能动性。
hwayw:
目前,有些人是觉得DBA能得高新才学习数据库,有些是真正的喜欢数据库才学习数据库,您对兴趣驱动型的知识学习和市场驱动型的知识学习,怎么评价?您觉得自己属于哪种类型?对将要进入这个行业的年轻人有什么寄予?
ZALBB:
早期我还没意识到,现在回想这些年来从事DBA的工作经历,应该算兴趣型的;尤其SQL调优这一块,有时一些作开发同事会抛一些SQL过来,让我帮忙调优,每次调优出较好的效果时,那种感受,就如中学时期,证明出一些几何难题般,开心;对于ORACLE每次推出的新版本,我都喜欢去研究其新特性,看看其在性能,管理上有哪些改善?搭建个测试环境,拿新老版本的来作比较,以此学习和感受新版本的新功能,这也是件愉悦的事情。关于市场驱动型的,我没体会那是怎样的一个心态,不好评价;对于计划将来从事DBA职业的新人们,我有几点建议,
1 学好英文,学会如何提问,善用GOOGLE。
2 学习过程中有耐心,沉得住气,戒浮躁,日常勤动手,多思考,多对比总结。
3 如果你觉得读英文文档时,晦涩难懂,不妨用中文关键字去搜索一下,先大概了解一下基本意思,再去揣摩对比英文。
4 ITPUB的ORACLE数据库版块上有许多的文章,有时间多来学习观摩。
嘉宾介绍:
社区ID:ZALBB
张华福,PUB上ID为ZALBB。一直从事与ORACLE数据库相关的工作,早期在软件公司作开发,曾参与电信97工程,INTERGRAPH的GFRAMME项目开发,香港永隆银行营业存储管理报表系统。目前在一家销售企业的IT部当DBA。
更多往期回顾:http://www.itpub.net/thread-1480316-1-1.html
《ITPUB名人堂》第6期采访张华福先生圆满结束
分享好友
分享这个小栈给你的朋友们,一起进步吧。
订阅须知
• 所有用户可根据关注领域订阅专区或所有专区
• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询
• 专区发布评论属默认订阅所评论专区(除付费小栈外)