Session 308: The Oracle DBA Determining Their Role and Your Needs
Tom Canty, Senior DBA
www.servercare.com
888-918-6309
Introduction
Oracle databases and software are extremely robust but also complex. Total Cost of Ownership (TCO) is high, in part because many skills are needed for a successful implementation. Database Administration is one such skill, but does that mean you need to hire a DBA? We will explore this question, as well as exactly what a DBA is.
ServerCare, Inc. Oracle DBA: Determining Role and Needs 2
Introduction (continued)
We will talk about what a DBA is, why one may or may not be needed, and how to determine what is appropriate for an environment. Audience will also learn what other skills and roles may be needed in an Oracle environment, and how a DBA fits in We will explore other options to fill the needs This presentation is intended for everyone except DBAs, but particularly for IS managers Speakers background
ServerCare, Inc. Oracle DBA: Determining Role and Needs 3
Agenda
Overview and Glossary Do I need database administration? What is database administration? What is a DBA, characteristics of a good DBA, what isnt a DBA, types of DBAs, common DBA career paths Other skills and roles needed for Oracle, how a DBA fits in, and when you need a DBA How do I tell what I need in my environment? What options and alternatives are there? Conclusion
ServerCare, Inc. Oracle DBA: Determining Role and Needs 4
Glossary of Terms
Database: The collection of files and their internal structures that contain data. Database Administration: Short and long-term management of a database to maximize performance and minimize downtime DBA: Database Administrator Instance: The memory (cache) and processes that access a database. Can be >1 per database (OPS) Oracle: The company and the software SQL & PL/SQL: Languages for Oracle databases
ServerCare, Inc. Oracle DBA: Determining Role and Needs 5
Roles and Relationships
Development
Data Admin Modeler Architect DBO Developer Application Admin Application DBA
Production
DBA
Dev DBA Web
Sysadmin
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
Do I need Database Administration?
YES!!!
Do I need a DBA?
Not necessarily
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
Typical Conversation
CIO: Do we need a DBA?
IT Mgr: Yes!
CIO: Why? IT Mgr: We just do.
CIO: What does a DBA do?
IT Mgr: I dont really know -- but I know we need one!
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
Why Thats Not So Funny
All too common management does not understand the DBA job function & limits. How can you ever fill the position? DBAs sometimes cover too much. Makes them critical, makes you dependent On the other side, too little coverage only becomes apparent when its too late Zero administration = outage at some point So what do I need? Stick around
ServerCare, Inc. Oracle DBA: Determining Role and Needs 9
Examples of Database Administration
DB software install, upgrade, configuration Define physical layout, manage objects Monitor, tune, troubleshoot Security, roles, profiles (not O/S) Manage growth, purging/archiving Backups and recovery (w/Sysadmin) Problem prevention Liaise with Oracle, users, and management
ServerCare, Inc. Oracle DBA: Determining Role and Needs 10
What is a DBA?
Fireman, Policeman, Surgeon, Shepherd Frequently first point of contact for database problems Expected to provide expert advice and guidance in technology, esp. to developers Needs to work with management and engineering to build optimal configurations Emergency support during a crisis
ServerCare, Inc. Oracle DBA: Determining Role and Needs 11
Characteristics of a Good DBA
Knowledgeable, but knows own limitations Responsive 24x7; answers phone & pager Really enjoys the work; no grouches! Can multitask (juggle) effectively Can work with little sleep; some nocturnal Can shoot from the hip, yet follows plans Communicates and documents well Natural problem solver, detail oriented Has the gift (comes with the ego)
ServerCare, Inc. Oracle DBA: Determining Role and Needs 12
What isnt a DBA? (but sometimes useful)
Application Developer (but experience a +) Project Manager Unix/NT/Web administrator/programmer Functional/business specialist Report writer Application support Data modeler (but must read ERDs) However, DBAs are frequently tasked with or assist with many of the above.
ServerCare, Inc. Oracle DBA: Determining Role and Needs 13
Roles and Relationships
Development
Data Admin Modeler Architect Application DBA
Production
DBO
Developer
Application Admin
DBA
Dev DBA
Web
Sysadmin
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
14
Types of Pure DBAs
Database Operator (DBO) Junior DBA Development DBA Production DBA Application DBA Enterprise DBA
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
15
Other Database Skills
Data(base) Architect Data Administrator Application Administrator Developer Database Manager Database Designer Data Modeler
ServerCare, Inc. Oracle DBA: Determining Role and Needs 16
Non-database skills
System Administrator (Sysadmin) Network Administrator WebMaster (Web) Application Administrator Other types of Developers Management/Project Management
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
17
Common DBA Career Paths
Developer Application DBA
Data(base) Architect
Junior DBA
Development DBA
Data Administrator
DB Operator
Production DBA
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
18
When do I Need a DBA?
A DBA is not the only skill required for an Oracle shop. Different skills are needed at different times in the product lifecycle, including DBAs. In many cases, the skills that are available are enough to supplant the need for a DBA, or allow the bulk of DBA tasks to be outsourced.
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
19
7 "D's" of Database Construction
Determine What/why; strategize; business case & buy-in Define Analysis; logical model; define data & processes Design Physical model; application definition; proofs of concept Develop Code development; physical design complete Document Documentation; concurrent with development Deploy Implementation strategy; test application and rollout; plan production Do! Production; maintenance, monitoring, tuning There is actually an 8th "D" - Death. All applications will stop being used at some point.
ServerCare, Inc. Oracle DBA: Determining Role and Needs 20
When do I Need a DBA?
Develop Determine Define Design Document Architect Data Admin Modeler Designer Sysadmin Dev DBA Developer App DBA Prod DBA Optional or only lightly involved Heavily involved App Admin DBO Deploy Do!
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
21
What do I Need?
Now that we have defined roles and timelines, you need to determine your exact needs. This presentation will help you understand your needs and your options, but only you can know what will work best for your situation. By carefully analyzing your current and future environment, you can plan for your needs.
ServerCare, Inc.
Oracle DBA: Determining Role and Needs
22
Determining Your Needs
Specify your environments.
Development? Test? Production?
Estimate complexity and size
Number of tables & relationships Total Storage Mb, Gb, Tb
Number of databases/instances
Heterogeneous systems
Specify downtime tolerance
99.999% = 5 minutes per year
High availability (8x5, 24x7, 24x365) Redundancy/distribution; standby databases; clusters
ServerCare, Inc. Oracle DBA: Determining Role and Needs 23
Determining Your Needs
Now determine what skills already exist Are in-house skills are willing to take on additional roles?
Create responsibilities that are challenging but not overwhelming
What DBA tools do you have?
Tools do not replace a DBA!
Last, what are you willing to spend?
Critical systems need $$$s!
ServerCare, Inc. Oracle DBA: Determining Role and Needs 24
Understanding Your Options
The classic idea is that if you need help, hire someone. However, the Oracle market is very hot, and finding experienced people that are willing to take normal jobs is nearly impossible. Even junior people take what knowledge they can and jump ship. Contractors are available, but expensive. Outsourcing some or all of your needs can be attractive.
ServerCare, Inc. Oracle DBA: Determining Role and Needs 25
DBA Options
Hire an employee
Can really learn applications and business Difficult to find experience, high overhead, high turnover, many laws and regulations
Hire a contractor
Usually experienced, hit the ground running Very expensive, may just want new training
Part-time DBA
Also usually experienced, can control costs Hard to find, not always there when needed
ServerCare, Inc. Oracle DBA: Determining Role and Needs 26
DBA Options (cont.)
Distribute workload to other employees
Great opportunity for interested employees Possible disgruntlement, learning curve, talent
DBA Tools
Can automate many tasks, alarming
Must be set up, limited, still need human
Mentor or have Senior people train Junior
Excellent long-term benefits, some safety net
Could be expensive short-term, turnover risk
ServerCare, Inc. Oracle DBA: Determining Role and Needs 27
DBA Options (cont.)
Outsource (complete or partial)
May be least expensive, can complement above, greatest flexibility, no learn and leave, accountability, no overhead (costs known) Ensure outsourcing isnt just a side business
Mix-n-match above
Gets best of the above; works well with
outsourcing in particular Might get some of the worst of the above too!
ServerCare, Inc. Oracle DBA: Determining Role and Needs 28
Putting It All Together
In massive or highly critical environments, onsite DBA(s) are a must, but many tasks can be offloaded to others to save $$$/time In moderate environments, large single instance systems, or multiple small platforms, a mix-nmatch approach may be best Small environments have the most options but least $$$. Outsourcing a good choice Current market favors hiring, but changing New concept: part-time permanent
ServerCare, Inc. Oracle DBA: Determining Role and Needs 29
Conclusion
Understanding what a DBA does and can do, for your specific environment, is key to determining your needs Then know your own needs and when youll need them. Get outside help if you need to Realize that the 9-to-5, onsite employee is a thing of the past - is your business still 9to-5? Does is happen in just one place? e-Businesses need 24x7 for limited $$$
ServerCare, Inc. Oracle DBA: Determining Role and Needs 30
Where to Get More Information
Other sessions here at IOUG-A Live! The internet, of course Consulting companies (depending on specialization) Get someone in just to look over things, if nothing else. A good contractor will be willing to do a quick once-over Call or email me at ServerCare:
[email protected]ServerCare, Inc. Oracle DBA: Determining Role and Needs 31
888-918-6309
www.servercare.com
Session 308: The Oracle DBA Determining Their Role and Your Needs
Tom Canty, Senior DBA
THANK YOU!
Please fill out evaluations!