Decoupling in Relational Databases

  • DPhillips-731960 (3/23/2010)


    ...

    To the point, I don't know of an academic school yet with a course that actually teaches RDBMS design with the effect of producing any significant amount of experienced DBA talent as a result. Academic courses spend more time discussing the history and competing views, rather than on actual principled design implementation. And they certainly don't focus on specific vendor implementation best practices.

    ...

    Undergraduate

    Relational databases: theory and practice (M359)

    http://www3.open.ac.uk/study/undergraduate/course/m359.htm

    Postgraduate

    Relational database systems (M876)

    http://www3.open.ac.uk/study/postgraduate/course/m876.htm

    M876 covers relational theory and SQL standards in a way I believe most computing degrees should (both undergraduate and postgraduate). I cannot remember the last project I worked on that did not utilise a RDBMS - that's not down to my poor memory either.

    Just to be clear, there will be other examples from other institutions but I am aware of these because I took M876 as part of my MSc and I have tutored Open University undergraduates (although not in relation to databases).

    Whilst I am happy to recommend the Open University to those I feel it will suit I am not necessarily endorsing it wholesale as, with any important decision, it requires careful consideration. Worth a look though 🙂

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!

  • Gary Varga (3/23/2010)


    DPhillips-731960 (3/23/2010)


    ...

    To the point, I don't know of an academic school yet with a course that actually teaches RDBMS design with the effect of producing any significant amount of experienced DBA talent as a result. [snip]

    ...

    Undergraduate

    Relational databases: theory and practice (M359)

    http://www3.open.ac.uk/study/undergraduate/course/m359.htm

    Postgraduate

    Relational database systems (M876)

    http://www3.open.ac.uk/study/postgraduate/course/m876.htm

    [snip]

    Just to be clear, there will be other examples...[snip]

    Again, being able to design relational tables is only the start of a being a DBA, and still does not quantify as "...any significant amount of experienced DBA talent...". My point was to the fact that many current Dev's rely heavily on front end tools sets to design the DB, without any regard for real data management on a specific RDB platform. It is usually only after they start slamming into performance walls that a system-specific DBA is hired (and/or created by necessity... for necessity is the mother of invention).

  • On the issue of undergraduate course for database development I have some mixed concerns.

    I recall an incident where a developer asked for advice on the design of a table. I noticed his primary key consisted of snips of information from various columns, which were properly constrained for uniqueness. I asked why he did that and his answer was that his college professor told him that primary keys must be related to the data of the row they represent. It was a unique key but I told him the principle was wrong and would lead to complexities later in the design. I illustrated that by changing the value of one column while still maintaining uniqueness. The primary key was now "wrong" and to make it "right" would require not only recalculation, but cascading the update everywhere that key might appear. He got the point and fixed the design.

    If this is illustrative of what people are learning, then we still have a ways to go to educate the educators. Is it commonplace? I don't know.

  • I've also run into this with an industry standard data model.

    The PKs in this model are made up a concatenation of all the "natural" key data. So if you have a table of addresses with a natural key of Street, number, city, state , then the data might look like:

    12333 East Southwest Promanade du Bicyclette No. 1243A

    West Possum Crotch, XX

    Then the PK would be giant varchar and look like this:

    12333EastSouthwestPromanadeduBicycletteNo.1243AWestPossumCrotchXX

    I'm not saying that this is a good natural key at all, but I can dang well tell you it is an awful PK. When West Possum Crotch consolidates with East Possum Crotch and becomes Grand Possum Crotch, all those rows will have to be updated.

    But the guy who came up with this thinks it's a brilliant design and now it's part of a standard and hundreds of shops around the world are adopting it....

  • SQL ServerCentra.com should validate new posts.

    Articles like this waste space and readers' time, and of course should be filtered out.

  • There is a rating on each article, this one has 2 stars, something that should be an indication to you.

  • Shawn.Shi (8/24/2010)


    SQL ServerCentra.com should validate new posts.

    Articles like this waste space and readers' time, and of course should be filtered out.

    I like this site because it has articles on a range of topics at a varied depth of complexity.

    Some people need articles like the one posted. Or maybe the writer gets value by having his thoughts validated or, perhaps more valuably, invalidated.

    This is a community site and I have seen many articles slated for being inappropriate for the site when, just maybe, they were just irrelevant to the poster who complained. I skip over many articles because they do not interest me, I feel I know enough on the topic and sometimes I do not have the time to get to a level of experience where I would get something out of the article. In each case it isn't that the article lacks value just value to me.

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!

  • Shawn.Shi (8/24/2010)


    SQL ServerCentra.com should validate new posts.

    Articles like this waste space and readers' time, and of course should be filtered out.

    I've seen many sites (some quite famous and quite popular and some associated with very well respected magazines) that have "validated new posts" that still allow useless info, bad info, and sometimes dangerous info to go through. I value such bad posts because they actually show me the "pulse of the public".

    And, to be clear, this article was a whole lot better than a lot of articles I've seen over time... "validated or not. 😛

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Shawn.Shi (8/24/2010)


    SQL ServerCentra.com should validate new posts.

    Articles like this waste space and readers' time, and of course should be filtered out.

    Comments like that waste space and readers time, and are of course thoroughly discourteous. Perhaps you would like to explain why your comment should not have been filtered out, and also what is wrong with the article you commented on?

    Tom

Viewing 9 posts - 91 through 98 (of 98 total)

You must be logged in to reply to this topic. Login to reply