A DBAs true value is not only to maintain database order but also to provide technical
advantages to the company. Join James Koopmann as he breaks out of the cubical shell
with a mission to 'make an impact.'
Let's face it, database administration does not come with a cut
and dry job description. It is often up to the DBA to determine what will and will
not make an impact on the companies for which they work. The true value DBAs
can give is not only to maintain database order but also to provide technical
advantages to the company. Come along with me and let's see if we can break out
of our cubical shell and provide some added benefit.
Yea, Yea, Yea, We've Heard It Before
Database systems are large, complex and above all are
mission critical. Wow, what a mouthful! If this is truly the case, as I believe
it is, then why does management not put the time and effort into understanding
the vast industry insight that makes up the skill set of every DBA? If they
think for one moment, that maintaining order in the ever-increasing sea of data
is not conducive to any other insights in this highly technical age of data
storage, retrieval, and manipulation then we are all in for a big surprise.
While these statements are very harsh on management it is should pose itself as
a wake up call to the technical staff that continually has a harder time
bridging the gap and conveying the knowledge they so desperately wish to have
Performance, Performance, Performance
I know many DBAs who's only concern is performance. They
spend so much time, and take such pride in the fact that they can save five
seconds of a nightly batch job that they lose sight of other areas in the
company that need their immediate assistance. The saving of five seconds off a
nightly batch job cannot be compared to a handful of developers that are
struggling with their ability to answer simple SQL questions or one person's
question on the relationship between two tables in a database.
Time to Solve a Problem
A major pet peeve of mine is when DBAs continually try to
find problems where none exist. Please, if there is not a problem do not waste
your time trying to solve one. Yes, I know that there are investigative things
that you as a DBA are bound by law to perform but realistically it is time you
get on with your life and script something. You should automate the tasks that
find problems at very high levels and then, and only then, should you start the
deep dive that will get you lost for days into the abyss of pleasure. Your
automated scans should be high level monitoring of major areas such as storage,
CPU, memory, workload fluctuations and response times. My personal favorite
area to monitor is individual personal complaint. If I do not get any
complaints, I do not have any problems and therefore nothing needs to be solved
as far as database performance and usage go. Seems simple, it is.
You Are the Support Line
Take a moment and think about how long you just sit in a
corner of your cubical and play database monitoring and tuning expert. A DBA
must get out in the field and provide solutions to a variety of needs. There is
a vast smorgasbord of designers, developers, users, management, and the dogs
next door that need our help with everything from analysis to zesty SQL that
performs under every condition. Do not leave your user, which is everyone, out
to dry. Trust me when I say this, even if your database is performing at peak
performance levels, there is someone somewhere that is having problems. More
than likely, they are just too upset or shy to come visit you. It is your purpose
in life to search out these individuals and provide solutions that offer timely
Take Ownership of Your Database
There is mass confusion as to what DBAs are supposed to be
doing. Not only do companies not recognize the need, they do not recognize what
they should be asking of their DBA. Just because there is a database involved,
people think that it requires a DBA, after all, a DBAs first name is DATABASE.
This in itself gives DBAs great control of vital corporate information. As a
DBA, you hold the keys to what is done and when it is done in the database. You
are responsible for validating everything that is implemented and your job is
on the line when things go south. You are responsible for who owns what pieces
of data and who is able to see what pieces of data. You are responsible for
determining when the best time for application changes to hit the production
database is. You should be involved in the scheduling of when changes happen
and when they will be ready. All eyes focus on you when something goes wrong. Let's
start protecting our company's vast amounts of data.
Security is a hot topic today that begs for DBAs to take
control. Do you as a DBA fully understand every method of connection to the
database, all the users who are defined within your system and to what
permissions they have access? Do you have mobile users? Do you have web access?
You, as a DBA need to know all of the potential pitfalls and potential problems
you may encounter when it comes to security. Can you trust all of your
developers to be cautious and not mess with the production system or have you
sufficiently locked down the accounts they use. There have been occasions when
I didn't trust even myself to just "tool" around with a production system and
you definitely should not trust anyone else to be completely safe. Data
tampering will most likely happen from within the corporate walls and this
alone should force you to lock down production databases.
Data Should Be Your Middle Name
Let's face it, databases are all about storing data and
accessing it. Your main concern is to provide a mechanism that provides for
safe storage and retrieval of company information. Along with this, is
providing for the security and reliability that information will be there when needed.
Do not get hung up on the way that anyone else does things. If you do, you may
find yourself in a trap. Make sure you validate methods and provide solutions
that work for your company.
Find a New Feature
Don't have enough to do yet? One of the things I like best
is to find a new feature, either in the current release we are using in
production or the next version that is on the horizon. The benefit you can give
to your company is to research new features, determine what works, and then how
to implement, if that new feature is going to bring easier administration,
lower cost of ownership, improved performance, or just make people happier. I
can pretty much date myself, but I can remember working for a shop way back
when, and implementing SQL*NET. What an immediate impact this had on the
company I was working for, even though they had been working with Oracle for a
while and the previous DBA never knew or thought of turning on this feature.
Take a chance and find something that will make a difference in the way others
work. Just don't forget to tell someone the new feature is available and follow
up on usage to safeguard your new baby as it grows. Make sure you are able to
sell you new feature to management. Come up with a method to determine the
savings that will be experienced using a new feature or piece of technology.
This savings can range from actual monetary savings to having a more productive
Take Time for Yourself and Your Company Will Benefit
If you are not taking two to three hours a day to develop
and maintain your advantage in the industry, you are not only hurting yourself,
you are killing the company for which you are working. Just think, if you were
asked to go to a meeting where you were put on the line to provide insight into
the progress of your particular platform along side of any new technology.
Would you be ready and able to talk intelligently? If you are under the gun
every day, day in and day out, trying to fight fires and are constantly being
pulled in all directions, you need to find a way to hide yourself for at least
one hour initially. You need to find a way to convince your management that the
future is just as important as the current day's disaster. If you cannot seem
to get quiet time around the office, have your management ok it for you to
attend a user group or vendor technical sessions. These are typically only a
day and most are just a few hours. This allows you to get up to speed quickly
on new technology without having to search the net for it or continually being
interrupted during your enrichment hour.
Are You Stuck
If you are unable to foster change within your company, by
all means, do it outside your company. If there is one thing that I have
learned, it is that there are lot more companies than the one I am working for
and, along with myself, there are hundreds of people that need assistance in
solving problems. Go out there and hit newsgroups, magazines, conferences,
local user groups or wherever you find database issues; contribute to the cause
and complexity of providing solutions to the mass of data management issues
that surround us. The worst thing that can happen is that you will have fun,
gain knowledge and begin a few relationships that are always important to
anyone truly concerned with making an impact.
See All Articles by Columnist James Koopmann