Chinaunix首页 | 论坛 | 博客
  • 博客访问: 396416
  • 博文数量: 58
  • 博客积分: 2096
  • 博客等级: 大尉
  • 技术积分: 608
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-29 16:09
个人简介

专注于数据库技术研究和实践,目前就职于互联网金融企业,提供Oracle数据库技术支持和维护。 联系电话:18616803656

文章分类

全部博文(58)

文章存档

2020年(1)

2019年(4)

2018年(1)

2017年(3)

2015年(4)

2014年(7)

2012年(1)

2011年(27)

2010年(8)

2009年(2)

我的朋友

分类: Oracle

2011-04-15 16:48:52

Over the last few years I have been interviewed for, and have interviewed several dozen candidates for, Oracle-related positions. The positions ranged from entry-level developer to senior-level DBA. Many of the interviews were for DBA-level positions. In this period I learned that it is very difficult to hire, or be hired, as a DBA unless you know exactly who or what you are looking for when you use the title "DBA." This section will attempt to clear up the misconceptions about the Oracle DBA position, specify the levels within the DBA position, and give some idea of how to interview and be interviewed for Oracle DBA positions.
To be a full-charge DBA, a candidate must be knowledgeable in all of these areas:
.Design
.Installation
.Configuration management
.Security
.Monitoring and tuning
.Backup and recovery
.Troubleshooting
.Vendor interface
Desirable Personality Traits of a DBA Many times, managers concentrate on echnical qualities and overlook personality. Virtually every category shown in the preceding list means a DBA will have to interface with other personnel, be they vendors, users, developers, or managers. This means the DBA should possess the following personal traits:
.Self-confidence
.Curiosity
.Tenacity
.Tact
.Self-motivation
.Detail-orientation
Of all of these, a recent survey showed tenacity to be the most important. Why are these traits important? I have had several subordinates who lacked self-confidence; they constantly asked my opinion on every decision, major or minor, and showed no initiative. As a novice DBA under a full-charge DBA, this may be all right, but if the person is the full-charge DBA, then who is he or she going to depend on to help make decisions if he or she has no self-confidence? Interview questions, therefore, should include problems confronted and how they were solved. The answers should demonstrate self-confidence. One thing to remember is that not knowing an answer is not bad, but not to know where to find an answer is.
The Oracle database system is constantly changing. Not all of these changes are documented. Therefore, curiosity is a requirement to be a good DBA. If DBAs aren't curious, they are passive, and wait for things to be told them. A curious DBA will install the latest version and immediately begin searching out the differences and improvements and how they can be applied to make his or her job better (read easier).
Curious DBAs will have multiple reference publications they purchased with their own money and will have read them. One of my interview questions involves what references the candidate has and uses. Needless to say, if he or she responds by citing only the documentation set, and he or she hasn't even read that, then that candidate's stock loses value rapidly. Curiosity will also drive qualified DBAs to understand the Oracle data dictionary and any utilities or packages provided by Oracle. Many of my interview questions deal with these Oracle internals. Lack of knowledge about the data dictionary tables and views and the Oracleprovided utilities and packages is unforgivable in a full-charge DBA.
Troubleshooting requires a bulldog-like tenacity, getting a hold and not letting go until the problem is solved.
Many DBAs will give up on a problem that would have been solved with the next solution they tried. As a sysop for the CompuServe ORAUSER forum, I see questions daily that could have been solved by the people asking them, if they were tenacious and curious. I use troubleshooting questions from my own experience and from those of others from the DBAPipeline on the and the metalink.oracle.com support forums.
A self-starting employee is important for any position, doubly so for a DBA. A DBA must be able to wade in and make things happen, not just wait for things to happen. Self-starting DBAs obtain or develop their own scripts to monitor such items as table sizes, tablespace usage, SGA usage?in short, all of the items that can get them in trouble if ignored. Interview questions dealing with level of experience in PL/SQL, SQL, and SQL*Plus will show how many scripts the DBA candidate has developed. Some operations in PL/SQL and SQL*Plus are generally only used by DBAs, so questions concerning specific techniques will expose those who have written their own scripts and those who haven't.
Dealing with developers and managers, not to mention users, requires tact. A tactless DBA will make nothing but enemies for your department. Tact has been called the ability to tell someone to go to Hades and have them anxious to make the trip. Many times, developers, managers, and users will make TEAMFLY
Team-Fly?
unreasonable requests; the DBA must have tact to field and deflect these requests without burning bridges.
How a person acts during the interview process will show his or her level of tact.
The final trait, being detail-oriented, is very important. DBAs who are detail-oriented don't have to be told to cross-check details. It also means they actively document quirks in the installation "just in case." The indications of a detail-oriented person are such things as bringing a Daytimer or scheduler to the interview, showing up ahead of time, and asking questions that indicate the candidate has researched the company he or she is interviewing with. This detail orientation will show up in the candidate's knowledge of the Oracle internals and an understanding of the relationships between the views, tables, and dynamic performance tables. Usually, a detail-oriented person will take the time to research the database on his or her own.
Knowledge Required of a DBA A good DBA candidate will know all of the areas discussed in the preceding subsection, "Selecting a Proper DBA." DBAs must be familiar with design so that when new tables or indexes are proposed by designers they will know how they should fit into the general schema.
Knowledge of a modeling tool such as Designer2000 or ERWin (Platinum Technologies) is a requirement.
DBAs should be able to read an ERD diagram with one eye closed, and be able to fight their way through a UML diagram.
The DBA must be familiar with installation and update on the platform that your system is running against.
Each platform has its own quirks and idiosyncrasies. A DBA experienced on Windows NT will have difficulty performing an installation on UNIX or DEC VMS. Updates can wreak havoc with production machines if they are done incorrectly. DBA candidates should be able to answer specific questions concerning installation and upgrade of Oracle systems on your platform. During the interview process, they should exhibit the curiosity to ask about your platform and any modifications to the standard installation that exist upon it.
Configuration management involves database sizing, file placement, and specification of storage media. A full-charge DBA will be familiar with system topics such as RAID levels, disk sharing, disk shadowing, solid state disks, optical storage, and their application to the Oracle database environment. On UNIX, they should also be familiar with the cost and benefits associated with use of raw devices and when raw device usage is mandatory.
Understanding Oracle security options is vital to the DBA job. A demonstrated knowledge of system and object-level privileges, roles, and profiles is required for any DBA. Understanding how the operating system security options interface with the Oracle options is also important. Additional requirements such as use of Secure Oracle and implementation of SQLNET are also considerations.
One of the critical aspects of the DBA's job is the monitoring and tuning of the database and any applications. Monitoring and tuning requires a detailed understanding of the Oracle data dictionary, the tkprof, and plan utilities, as well as an undestanding of how both the cost-based and rule-based optimizers function. Detailed understanding of what can and can't be done via indexing, use of hints, and SQL statement tuning is vital to a DBA. A DBA candidate should demonstrate knowledge of the following:
?DBA_ views, ALL_ views, and USER_ views
?SYS-owned "$" tables
?dynamic performance tables (V$)
All of these are a part of the Oracle data dictionary. In addition, the DBA candidate should have knowledge of the DBMS_* series of packages and how they can be used to facilitate tuning and script development, and the UTL*.SQL series of utility scripts and their usage in tuning and monitoring.
A DBA candidate must understand all of the backup and recovery options. Use of the import and export utilities and of cold and hot backups are all vital topics that a DBA must understand. Answers to interview questions concerning types of database backups used and how the utilities can be implemented must show level of knowledge in this area. Additional topics to cover in this phase of the interview are recovery scenarios involving partial recovery at the table, tablespace, and database levels.
Troubleshooting is a binary ability. Usually people will either have the knack or they won't. Troubleshooting requires an analytical approach, where the problem is laid out in discrete parts and each is attacked in a methodological fashion until the problem is solved. Troubleshooting also involves being unafraid to admit when you don't know something but having the tenacity to say, "I can look it up." Interview questions on troubleshooting must come from real life and should involve multiple steps and critical thinking to solve. To test their troubleshooting ability, candidates should be asked the most difficult problem they have encountered and how they solved it.
A final bit of knowledge required of a DBA is the ability to communicate clearly, either orally or via written materials. Since a major portion of a DBA job will involve interaction with others on multiple levels within a company environment, DBAs must be able to speak, think, and write clearly and concisely. A review of their resumes with particular attention to any publishing credits will help to determine their abilities in this regard. Presentations at user groups, local or national, magazine articles or articles in local user group publications all show the ability to communicate.
At a professional level, look for experience writing documentation or procedures. Most candidates with advanced degrees such as a master's or Ph.D. will have to have written and communicated to gain that level of education. Ask them to bring their dissertations or examples of their writing to the interview.
Candidates should be expected to bring examples of this type of experience to the interview. The ability to speak clearly, to take and give instructions, and to understand complaints is vital. As technically qualified as a candidate may be, if he or she cannot communicate, he or she will not succeed.
What Level of DBA Do You Need? DBAs range from DBBS level (database baby sitters) to full-charge DBAs. What level do you need? If you place a full-charge, fire-breathing DBA in a job where all he or she has to do is monitor an older version of Oracle and ensure backups are taken, the DBA will soon tire of the job and leave?not to mention that his or her salary requirements will be significantly higher than for more junior people. On the other hand, if you hire a dyed-in-the-wool, don't-want-to-grow DBBS for a position where initiative, drive, tenacity, and troubleshooting skills are critical, you are asking for trouble. Be sure that you get the right candidate for the job. I would rather hire a technically inexperienced DBA who showed all of the personality traits discussed earlier than a DBBS who could rewrite Oracle?if someone told him or her to, that is.
A database baby -sitter usually has a good-looking resume that is full of projects and jobs involving Oracle.
However, most of these jobs will have involved third-party applications that were preinstalled and only required monitoring. If they can't answer in-depth questions concerning the DBA_ views or the V$ tables, chances are they are DBBS- rather than DBA-level candidates. Another key indicator is a lack of knowledge about the Oracle utilities, such as import, export, and the tuning tools tkprof and explain plan. A final indicator is lack of knowledge concerning the DBA task-related DBMS_* packages.
If all you need is someone to monitor a third-party database application via a preconfigured monitoring tool, and to take action when the tool tells him or her after a problem has happened, then hire a DBBS.
Otherwise, you will waste a DBA and no one will be happy if you get an overqualified person into a lowlevel job.
If you do need a full-charge DBA, don't hire a DBBS unless he or she shows the curiosity and tenacity to use deep-end learning to pull him- or herself up to the level of a full DBA. Deep-end learning is the analogy for throwing someone into the deep end of the pool to teach him or her to swim. Usually, there won't be time to send such a person to the multitude of classes required to give him or her full knowledge, so he or she will have to learn on the fly. Get the person involved with the Oracle forums and user groups, and John Wiley & Sons-Oracle Administration and Management purchase whatever references he or she requires. I suggest a full paper copy of the Oracle manuals that is the DBA's alone. An online reference such as the Oracle Administrator product from RevealNet is also a good idea, as it will provide battle-tested solutions to many problems. The Oracle documentation on CDROM makes a very convenient and portable way to carry the entire document set, as long as the DBA has a laptop. But, at least to me, nothing replaces a paper manual for ease of use (besides, you can use it even during a power outage?by candlelight!).
Developing Questions for Interviews Interview questions should be diligently researched, and the expected answers listed. Where open-ended questions are used, the interviewer should have the level of knowledge required to judge the answers' correctness. The questions should be broken into categories, and each should be assigned a point value based on either a scale from, say, 0?, or according to difficulty.
At the conclusion of the interview, technical ability evaluation should be based on the results from these points. Your interview questions should be reviewed by technically competent personnel for accuracy and applicability. Some sample interview questions are included in the downloads for this book at , in the books section, under this title, in Acrobat Reader format.
Prequalification of Candidates In the past, candidates had two sources for Oracle knowledge:
experience and/or Oracle Corporation training classes. Experience speaks for itself and can be judged as to depth and level. Training was only as good as what the candidate put into it. What I mean by this is that the candidates could either gain much from Oracle training, if they took with them to class the will to learn and curiosity, or they could take nothing away from the class, if they practiced passive learning. Since Oracle training is not graded, everyone receives masters certification regardless of participation. Now,
many vendors offer Oracle classes. Indeed, with the plethora of classes available, it is difficult, if not impossible, to judge the quality of training a candidate may have received. One item that will assist hiring managers is the Oracle Certification Exams offered by Sylvan Prometric Learning Systems (the Oracle Certified Professional, OCP, program). These exams test candidates' knowledge in all areas of the DBA skill set. The tests were created by battle-tested DBAs and Oracle Corporation. To pass, a candidate will, in almost all cases, have to have had actual experience as an Oracle DBA and knowledge from multiple Oracle references. While obtaining an Oracle certification from these exams is no guarantee that a candidate is fully qualified, it can be used as an acid test to separate the wheat from the chaff.
Always check a candidate's references. Speak to previous employers if possible, and find out about a candidate's past work history. Many people will interview wonderfully but can't function in the job.
Appearance A candidate who doesn't take the time put the right foot forward by presenting a proper appearance probably doesn't have the wherewithal to perform adequately in the job. Clean, appropriate clothing and proper grooming show that the candidate is willing to make the effort to please the employer.
Candidates who are sloppy in appearance and manner will bring this to the job and to their interactions with other parts of the company.
There is no magic formula for determining whether a candidate can perform adequately; nor is there any way to ensure an employer will always properly evaluate a candidate's abilities. However, if proper preparation is done by both the employer and candidate, then successful hiring or acquisition of a proper position can be less a matter of chance.
阅读(939) | 评论(0) | 转发(0) |
0

上一篇:xhost 用法

下一篇:手动创建ASM

给主人留下些什么吧!~~