Re: Lucid statement of the MV vs RM position?

From: <ralphbecket_at_gmail.com>
Date: 23 Apr 2006 19:02:51 -0700
Message-ID: <1145844171.887624.57170_at_j33g2000cwa.googlegroups.com>


Pickie wrote:
> I didn't say the RM was based on tables. I said 'The method used is
> formal, mathematical, and uses data which is in a tabular form.' When
> the basic concept is rows and columns, I think that's a fair statement.
> Maybe I was wrong to say "The tabular form was inspired by data
> storage structures where data was held in tables of fixed length
> fields."

The latter is the statement I was mainly taking issue with. The RM notion of a table has nothing to do with storage structures or fixed length fields: it has nothing to do with representation at all.

Sorry if I misunderstood you, but together with the earlier statement, "The method used is formal, mathematical, and uses data which is in a tabular form." suggested strongly to me that you were thinking in terms of a representation rather than the abstraction.

> I also didn't say that the RM said anything about how the data was
> stored - I said this
>
> "...we now have three levels. They are
>
> - The presentation layer
> - The logical layer
> - The storage layer
>
> The logical layer is the core part of the Relational Model."
>
> This seems to be exactly what you are saying!

I beg your pardon: it seemed to me that you were saying the presentation and storage layers are also part of the RM. I got this impression from the full introductory sentence, "As the overall Relational model has been refined over the years, we now have three levels."

> I don't think the CS degree results have anything to do with what
> Oracle or IBM or Microsoft do for their design decisions. I just don't
> follow your logic on this one.

My experience is that few people have a good grasp of CS theory and consequently, IMHO, often end up being poor designers. This often causes real problems where great ideas end up with terrible solutions (e.g., great idea: a standardised data exchange format, terrible solution: XML; great idea: representing absent information in a database, terrible solution: NULLs in SQL).

> Does any DBMS optimise dynamically correctly? My Systems Analysis days
> are long past, but it seems to me this would be one of those really
> complex problems that can never be solved.

I would expect Oracle etc. to provide good performance measurement tools and the means to change the representation of a live database as appropriate.

Similarly, I would imagine they would put a great deal of effort into query optimization.

I'm no expert on the technology of the day, but I'm sure other posters here could give you an informed answer.

> Your statement "A good DBMS should allow the DBA to suggest
> optimizations..." seems more than a little anthropomorphic, don't you
> think?

Do you think so? The declarative programming language I work on supports source code pragmas that the compiler can ignore, implement, or use as hints for other optimisations. A pragma, then, is just a suggestion by the programmer for the compiler.

  • Ralph
Received on Mon Apr 24 2006 - 04:02:51 CEST

Original text of this message