Search Postgresql Archives

Re: Proper relational database?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Apr 22, 2016, at 10:45 , Raymond Brinzer <ray.brinzer@xxxxxxxxx> wrote:
> 
> Are there relational algebra expressions, or other operations
> necessary to a truly relational database, which cannot be translated
> into SQL?  I'm not aware that there are, but I'd be interested to hear
> of it.  If there were, there's a good chance you wouldn't be able to
> translate them into the parse tree, either.

The fundamental storage model needs to at least be a bit different. In particular, relations can't allow duplicates. You could have nulls (Codd proposed two different forms of null IIRC: a single null value and two different null values), although they should be more principled than the mess they are in SQL.

I am no expert on database optimization, but I understand that it is significantly easier to do query optimization in a properly relational database, as it forms a reasonably simple algebra, which can be optimized much as you would optimize evaluation of a numeric expression.

Major gains from a proper relational store would be:

- a better language, easier to parse, read and generate. Perhaps multiple equivalent query languages;
- other storage models (distributed and eventually consistent, say);
- simpler (in implementation and use);

We may also get some degree of faster and other good things. It also might be implemented in such a way that it can run as a server or more like SQLite.

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux