Re: What makes a Postgres DBA? - Mailing list pgsql-general
From | Merlin Moncure |
---|---|
Subject | Re: What makes a Postgres DBA? |
Date | |
Msg-id | b42b73150711041704k3763a9f3j1131748a00196af9@mail.gmail.com Whole thread Raw |
In response to | What makes a Postgres DBA? (Kevin Hunter <hunteke@earlham.edu>) |
Responses |
Re: What makes a Postgres DBA?
(Greg Williamson <Gregory.Williamson@digitalglobe.com>)
|
List | pgsql-general |
On 11/4/07, Kevin Hunter <hunteke@earlham.edu> wrote: > Following up on a recent thread > (http://archives.postgresql.org/pgsql-general/2007-11/msg00064.php) ... > > Next question and one that I'm not sure how to phrase: how does one > become a Postgres-savvy* DBA? Just by working with it as a developer > and then moving "up the ranks"? (i.e working with larger, more active > setups/datasets?) There's the training options listed on > http://www.postgresql.org/about/eventarchive, but I'm personally > skeptical at just how much one can retain from a 1-to-5 day course. I would suggest that in order for someone to get that most coveted of titles 'PostgreSQL DBA' on should: Administration: * Understand tradeoffs of autovacuum and scheduled vacuum (increasingly, this question will morph into autovacuum configuration and monitoring) * Understand backups: when to use pitr, pg_dump * Basic configuration: shared_buffers, etc etc * Be able to do task specific tuning: understand difference between oltp and olap environments * Be versatile with psql shell (most of the best DBAs use psql almost exclusively) * No how to troubleshoot and deal with locking problems and runaway queries * Should be able to setup postgresql manually without using packages * Be able to implement a replication technology (Slony) * Understand some of the specific challenges involved in dealing with large databases, which I define as over 10 times the memory in the server. * Understand the challenges involved with 24/7 environments * Understand the differences in low and high security environments and how to set up for both Development * Should be very comfortable with pl/sql, pl/plpgsql (pl/perl or alternative is bonus) * Understand triggers, views, functions, rules, constraints, domains and type and be able to give examples of when they should be used (or not) * Understand good normalization strategies * Be able to discuss pros and cons of surrogate keys * Understand MVCC * C language experience * Strong familiarity with bash or perl (preferably both) Personal * A DBA often anchors a development team. 'Works well with others' is a cliché, but still applies. * At least superficially familiar with the technologies that interface with the database * Be cool and calm under pressure * Be established on the appropriate mailing lists and use good etiquette * Understand that developers are out to get your database merlin
pgsql-general by date: