Re: Sensible and NonsenSQL Aspects of the NoSQL Hoopla
Date: Mon, 02 Sep 2013 07:33:39 -0700
Message-ID: <l027k6$mb8$1_at_speranza.aioe.org>
On 01/09/2013 11:38 PM, karl.scheurer_at_o2online.de wrote:
> Am Sonntag, 1. September 2013 19:49:48 UTC+2 schrieb Eric:
>
>> >
>> > In what way is the relational model insufficiently complete?
>> >
> In my line of work the most frustating limit of the relational model
> is the omission of the order of tuples. Sorting part of SQL and not
> part of Codd's relational model. Even if sorting is entered through
> the back door it remains a tool to beautify the output and cannot be
> exploited while querying, since relations are unordered sets.
Ordering depends on domain-specific operators, eg., the various complete orderings of integers depend on the integer arithmetic operators.
Omission is the essential technique of abstraction. You are suggesting that ordering is somehow essential. Well, you, anybody and everybody who think that are free to try to devise an abstraction that is 'ordering-complete'. Codd abstracted out domains which makes his abstraction more universal. How would you order the domain of the colours of the rainbow or would you just exclude rainbow colours from the things that Codd's relations can manipulate?
Beyond that, introducing ordering even for only a limited number of domains would need to show that the proof mechanisms of FOL would remain as sound or complete as they are without such introduction, otherwise the usual optimization techniques couldn't be proved. Eg., would two relations with the same tuples but different ordering be logically equivalent? If they were not equivalent, just how would their values indicate that? What new operators would be needed and what would replace the sixteen potential operators of a two-valued truth system? Or, if they are equivalent/equal, what purpose would be served by introducing ordering operators to the algebra?
Beyond that, why should SQL with ordering be compared to the RM when SQL without ordering isn't even comparable?
(Many criticisms of the RM seem to have a motive of less abstraction and therefore less generality. What does an HTML frame have to do with relations? The various resulting practices, OO dbms'es, XML syntax, etc etc, all introduce additional mechanisms which usually verge into the physical, eg., physical representations of values rather than the values themselves. It seems that the majority of people can't always separate one from the other, and never will. The majority crowd can always make more noise. Codd himself strayed away from the simplest abstraction when he suggested nulls and therefore a relation's name that can stand for different predicates at the same time. I wonder if that was because he couldn't hear himself think for all the noise.) Received on Mon Sep 02 2013 - 16:33:39 CEST