DBA best practices

Database administration best practice: Balance DBA team skills

IT managers face a daunting task when building a team to support database administration initiatives. That's because the skills that are needed run the gamut from early development of raw databases right through to operations and maintenance of established systems.

According to practitioners, database administration is something of an art, requiring leaders to nurture team members' various skill sets in order to achieve coverage of the data lifecycle from beginning to end.

The basic mantras for the

    Requires Free Membership to View

database administrator (DBA) team are to design, code and build database systems; make sure they run as planned in production; and then keep them running in spite of data growth, program patches, lightning strikes or what have you.

The first step toward creating a highly collaborative and well-balanced data management team is to figure out where the team itself belongs. It could come under the umbrella of development or that of operations.

DBA direction comes from the implicit business needs of the company, said Michelle Malcher, DBA team lead at DRW Holdings, a Chicago-based trading organization. If the business is looking for more production support from the database administration system, the group should probably be categorized under operations.

If there is a need to pursue more new programming projects, then the team needs to work under the aegis of a development group, Malcher said.

"How you start a DBA group depends on [whether] you are anticipating a lot of in-house development or you are more concerned about making sure existing databases are up and running," Malcher said.

Keep in mind, however, that while some team member specialization is natural, it is not a good idea to divide too much of the DBA work into separate categories of development and operations, Malcher added. Depending on the size of the database workload, it may be necessary for DBAs to fill in for team members when others are sick or vacation. Therefore, they should have experience in both operations and development database administration.

With varied skills to pursue, education should be an ongoing effort within DBA ranks, said Malcher, who works to carry that mission forward in another role as president of the Independent Oracle Users Group.

Wide skill sets needed for data management

Louis Davidson, who is data architect with the Christian Broadcast Network (CBN), based in Nashville, Tenn., concurs with the need for a wide skill set.

"Even if they did not write the code, DBAs usually are going to need some understanding of the code. If users or developers make mistakes and lose or corrupt data, the DBA inevitably will lead the charge to recover the data that has been lost or messed up," said Davidson, who has authored three books on SQL Server database topics.

For Brandon Leach, database administrator for Network Health of Medford, Mass., the perspective is a bit different, but the requirement to collaborate is much the same.

"We have a data architect whose job it is to define the schema, and he and I will have conversations about where things should go and how things should be done," Leach said. "My role is making sure that the data is recoverable and available, and that performance is acceptable. I work on who gets access and the relationships between systems."

"Most developers don't really deal with the production side," CBN's Davidson added. "But a DBA has to be able to make the most out of the hardware and to optimize the code."

When to call in help

Efforts to orchestrate development and operations tasks gain new emphasis today as data workloads grow. Database administrator employment is projected to grow 31% in this decade, according to the U.S. Department of Labor, which cites the growth in the amount of data that companies are collecting and new database security measures as contributors to the increasing ranks of DBAs.

A common reason to add outside help is to supplement data staff when the amount of work surpasses the amount of resources available in-house. Sometimes you simply don't have enough people, Davidson said. But adding outsiders to a project or department must be done in a way that does not upset the good chemistry your team may have achieved.

"Not being frightened to use outside help can be a great boon to a team," he said. "The problem is that you have to get good consultants who will work with you as a member of your team, know their place as assistants and don't make the other team members feel like they are being replaced."

Egos may be bruised if team members feel they are capable of doing the work but haven't been given the chance, Davidson said.

Outside help is not without its pitfalls, Network Health's Leach said, but there are some benefits to contracting out some kinds of work. Maintenance, patches and off-hour updates are one area where remote DBAs can take part, allowing Leach and other internal DBAs to focus on important high-availability and server-level performance issues.

"I can farm out tasks. That allows me to sleep at night. But I still get awakened once every couple of weeks," he said, pointing to remote teams' difficulties in resolving all issues. Among the issues that can arise are data model changes and mass data updates that can delay queries.

Like other data professionals, Leach emphasizes that changes to a database program or server configuration incur risks. Any change could cause unexpected after-effects. But nothing stays the same in the data world, and change must be faced.

It is the data team manager's job, however, to articulate a plan, to balance the risk and rewards of program changes, and to see those changes through to completion. Practitioners agreed that leaders must have good communication skills -- and they must work to foster communication among team members.

"Managing DBAs takes a balance of humility and ego. You must establish a good balance of skills and personalities," Davidson said.

This was first published in August 2013

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.