Re: [GENERAL] Proper relational database?

2016-04-27 Thread Guyren Howe
On Apr 23, 2016, at 19:43 , David Bennett  wrote:
> ow...@postgresql.org] On Behalf Of Eric Schwarzenbach
> 
 If I had a few $million to spend in a philanthropical manner, I would
 hire some of the best PG devs to develop a proper relational database
>> server.
 Probably a query language that expressed the relational algebra in a
 scheme-like syntax, and the storage model would be properly
 relational (eg no duplicate rows).
> 
> If there were someone to pay the bills, would you work on it?

Yes, to the extent that my skills were useful (I'm good at logic, but I've 
always gravitated to higher-level languages, so if it was C, I'd write 
documentation or something).

 It's an enormous tragedy that all the development effort that has
 gone into NoSQL database has pretty much all gotten it wrong: by all
 means throw out SQL, but not the relational model with it. They're
 all just rehashing the debate over hierarchical storage from the 70s.
 Comp Sci courses should feature a history class.
 
 It's a bit odd to me that someone isn't working on such a thing.
> 
> Several people are, but without the few $million…

I hear you. I started this discussion because much as I utterly adore what the 
miracle workers behind Postgres have managed to create from the sow's ear that 
is SQL, I'm always aware of just how much better the world could be. And data 
storage is so central to everything that happens. Now is the time, with this 
NoSQL movement afoot, to provide something that breaks from SQL in the *right* 
way.

I would love to be able to choose an eventually-consistent store that syncs 
with minimal effort with a local store in a handheld app, or any of these great 
storage options that the NoSQL folks are doing, but giving up relations is 
*such* a high price to pay, particularly when I know that it just isn't 
necessary.

If someone was working on such a thing in a language that is less tedious than 
C (Go or Scheme or Haskell or Clojure, anyone?), I would happily contribute.

My ideal data store is something like a top-level relational engine with 
pluggable stores, pluggable synchronization etc options, pluggable languages. 
Pretty much the philosophy that has driven Postgres from the beginning. If such 
a thing could be produced and became popular, it would almost add measurably to 
GDP, I think, such could be its impact if done right.

Anyway, I hope everyone has found this as interesting a discussion as I have. 
I'll dig more deeply into Andl and watch its progress. And if anyone here knows 
of a non-SQL relational database project worth noting, please do so here.



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


Re: [GENERAL] Proper relational database?

2016-04-27 Thread David Bennett
> ow...@postgresql.org] On Behalf Of Eric Schwarzenbach

> >> If I had a few $million to spend in a philanthropical manner, I would
> >> hire some of the best PG devs to develop a proper relational database
> server.
> >> Probably a query language that expressed the relational algebra in a
> >> scheme-like syntax, and the storage model would be properly
> >> relational (eg no duplicate rows).

If there were someone to pay the bills, would you work on it?

> >> It's an enormous tragedy that all the development effort that has
> >> gone into NoSQL database has pretty much all gotten it wrong: by all
> >> means throw out SQL, but not the relational model with it. They're
> >> all just rehashing the debate over hierarchical storage from the 70s.
> >> Comp Sci courses should feature a history class.
> >>
> >> It's a bit odd to me that someone isn't working on such a thing.

Several people are, but without the few $million...

> > Well when IBM were first developing relational databases there were
> > two different teams.  One in California which produced System-R which
> > became what we now know as DB2 and spawned SQL, and the other in
> > Peterlee in the UK which was called PRTV (the Peterlee Relational Test
> > Vehicle).  PRTV rather died but bits of it survived.  

And many of the people who worked on it are still around.

> > According to the Wikipedia page it did have a language (ISBL) but from
> > what I recall (and it was nearly 40 years ago) there were a series of
> > PL/1 function calls we used rather than encoding the request as a
> > string as SQL systems require.

Ditto. Including Hugh Darwen.

> One of the people involved in that was Hugh Darwen, who is one of the authors
> of The Third Manifesto, which is an attempt to define what a properly
> relational language and system should look like. So you could say the
> experience of ISBL vs SQL has been folded into that effort.

See http://www.thethirdmanifesto.com/. 

Hugh worked for some years for IBM on the SQL Committee, but eventually left 
over a major disagreement in direction. TTM is based on the work he's done 
since (with Chris Date). Andl derives from that.

I would say that very little of PRTV/ISBL experience was added to SQL once it 
had been standardised, even with Hugh doing his best.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org








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


Re: [GENERAL] Proper relational database?

2016-04-27 Thread David Bennett
> From: Thomas Munro [mailto:thomas.mu...@enterprisedb.com]
 
> FWIW standard SQL may not allow it but Postgres does, and it's even possible
> to exclude duplicates by using an expression that references the whole row.

Thank you. I didn't know that.

I'll use it if I can verify it works right. It's not that important -- Andl can 
emulate it quite easily.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org








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


Re: [GENERAL] Proper relational database?

2016-04-23 Thread Joshua D. Drake

On 04/23/2016 08:09 AM, Geoff Winkless wrote:

On 23 April 2016 at 07:08, Manuel Gómez  wrote:

but its semantics can be rather wonky.  Witness:

postgres=# select 1;
  ?column?
--
 1
(1 row)

postgres=# select 1 union select 1;
  ?column?
--
 1
(1 row)



Exactly what you would expect. Use UNION ALL to get two rows.


Exactly, a simple reading the docs will explain this:

http://www.postgresql.org/docs/9.5/static/queries-union.html


JD

--
Command Prompt, Inc.  http://the.postgres.company/
+1-503-667-4564
PostgreSQL Centered full stack support, consulting and development.
Everyone appreciates your honesty, until you are honest with them.


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


Re: [GENERAL] Proper relational database?

2016-04-23 Thread Geoff Winkless
On 23 April 2016 at 07:08, Manuel Gómez  wrote:
> but its semantics can be rather wonky.  Witness:
>
> postgres=# select 1;
>  ?column?
> --
> 1
> (1 row)
>
> postgres=# select 1 union select 1;
>  ?column?
> --
> 1
> (1 row)


Exactly what you would expect. Use UNION ALL to get two rows.

> postgres=# select;
> --
> (1 row)
>
> postgres=# select union select;
> --
> (2 rows)

SELECT with no values is selecting a NULL, and two NULLs do not
equate, so you would expect two rows.

> postgres=# select 1 intersect select 1;
>  ?column?
> --
> 1
> (1 row)
>
> postgres=# select intersect select;
> --
> (2 rows)

See above.

Geoff


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


Re: [GENERAL] Proper relational database?

2016-04-23 Thread david
> From: Thomas Munro [mailto:thomas.mu...@enterprisedb.com]
 
> FWIW standard SQL may not allow it but Postgres does, and it's even possible
> to exclude duplicates by using an expression that references the whole row.

Thank you. I didn't know that.

I'll use it if I can verify it works right. It's not that important -- Andl can 
emulate it quite easily.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org









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


Re: [GENERAL] Proper relational database?

2016-04-23 Thread david
> This is a relevant project: https://github.com/agentm/project-m36

Thanks -- I didn't know about that one. I'll add it to my list.

It's quite unlike other implementations. I have some reading to do.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org







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


Re: [GENERAL] Proper relational database?

2016-04-23 Thread david
> ow...@postgresql.org] On Behalf Of Guyren Howe
> Sent: Saturday, 23 April 2016 4:04 AM
> To: Raymond Brinzer <ray.brin...@gmail.com>
> Subject: Re: [GENERAL] Proper relational database?
> 
> On Apr 22, 2016, at 10:45 , Raymond Brinzer <ray.brin...@gmail.com> wrote:

> 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.

Andl has no nulls. I have read Codd's later work, but IMHO the consequences
of multi-valued logic do not justify that conclusion.

The standard storage engines used for SQL can handle tables with no nulls
perfectly well.

> 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.

I would venture a guess that advanced query planners already take into
account whether columns have nulls or not. Whatever can be done for a 'pure'
RA can already be done as a special case for SQL, and probably has been.

> Major gains from a proper relational store would be:
> 
> - a better language, easier to parse, read and generate. Perhaps multiple
> equivalent query languages;

Check. Andl is that, and I know several others.

> - other storage models (distributed and eventually consistent, say);
> - simpler (in implementation and use);

Not sure whether this is a reasonable consequence.
> 
> 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.

Andl does that. It provides 3 native servers: Thrift, Web API and REST.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org







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


Re: [GENERAL] Proper relational database?

2016-04-23 Thread Kevin Grittner
On Sat, Apr 23, 2016 at 1:53 AM, Guyren Howe  wrote:
> On Apr 22, 2016, at 18:56 ,   wrote:

> Why schema-on-demand? Can you explain what you mean by that?
>
> Something that is attractive, for beginners or perhaps when prototyping is
> that you don't have to declare a table. You can just insert tuples into a
> predicate whose name you provide and they go in and you've defined a
> relation just by using it.

test=# \d
No relations found.
test=# select * into people from (values (1,'Fred'), (2, 'Bob')) x(id, name);
SELECT 2
test=# select * from people;
 id | name
+--
  1 | Fred
  2 | Bob
(2 rows)

test=# \d
 List of relations
 Schema |  Name  | Type  |  Owner
++---+-
 public | people | table | kgrittn
(1 row)

-- 
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


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


Re: [GENERAL] Proper relational database?

2016-04-23 Thread Guyren Howe
On Apr 22, 2016, at 18:56 ,   wrote:
> 
> Why schema-on-demand? Can you explain what you mean by that?

Something that is attractive, for beginners or perhaps when prototyping is that 
you don't have to declare a table. You can just insert tuples into a predicate 
whose name you provide and they go in and you've defined a relation just by 
using it.

Much of my point in raising this discussion is that there are features that the 
NoSQL folks are implementing that are useful in some cases. Things they are 
doing like eventually consistent distributed stores are really required at 
sufficient scale, but there are other great ideas. SQL's storage model is not 
the only way, nor should it be. We shouldn't have to abandon the relational 
model to get such features, but we *do* have to abandon SQL to get them. And 
good riddance.

I would like to have relational stores providing such features before some 
monstrosity like Mongo or CouchDB becomes so entrenched we'll never be rid of 
it.

Re: [GENERAL] Proper relational database?

2016-04-23 Thread Manuel Gómez
On Sat, Apr 23, 2016 at 12:05 AM, Thomas Munro
 wrote:
> FWIW standard SQL may not allow it but Postgres does, and it's even
> possible to exclude duplicates by using an expression that references
> the whole row.

Indeed, but its semantics can be rather wonky.  Witness:

postgres=# select 1;
 ?column?
--
1
(1 row)

postgres=# select 1 union select 1;
 ?column?
--
1
(1 row)

postgres=# select;
--
(1 row)

postgres=# select union select;
--
(2 rows)

postgres=# select 1 intersect select 1;
 ?column?
--
1
(1 row)

postgres=# select intersect select;
--
(2 rows)


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread david
> So, let's just flat-out ask.
> 
> Dear Important People:  would the PostgreSQL project consider supporting
> other query languages? Or creating a plug-in mechanism for them, so that
> alternative interface languages could be added without changing the base
> code?

I very much doubt it. The use case has to be established first.

As it happens, the existing PL extension capability provides enough to get an 
alternative query language (such as Andl) to work. That's why I chose Postgres.

Making it a 'native' would be not so hard if there is real demand.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org







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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Thomas Munro
On Sat, Apr 23, 2016 at 2:04 PM,   wrote:
>> Why is starting at a low level important?  A database is truly relational to
>> the extent that it implements the relational model. If you don't want the
>> database to allow tables without keys, or to allow null values, don't let
>> people create them. If the underlying machinery allows them, that seems like
>> a mere performance issue; worrying about that from the outset seems like a
>> perfect example of premature optimization. If PostgreSQL's performance is
>> acceptable now, why wouldn't it be acceptable with a different interface
>> language?
>
> Agreed.
>
>> There are other aspects of what would make a truly relational database, of
>> course. Codd's 0th rule, for instance, that the "system must be able to
>> manage data bases entirely through its relational capabilities" to me says
>> that there should be no data definition language, except as syntactic sugar
>> for relational operations. So you'd create users (thousands in one command,
>> if you liked) by adding tuples to a base relation.
>
> Yes, maybe, but that makes it not part of the language. You can't apply rule 
> 0 to things like creating a type or operator in a language.
>
>> But which things are important? I think a good many of the things one might
>> would be lower-hanging fruit than that. Just having a clean query language
>> would alleviate a lot of (my) discomfort.
>
> Andl is that.
>
>> > I don't know if Postgres exposes the lower-level stuff to plugins or
>> > not — it would be nice if this could be an alternative query language
>> > for Postgres itself,
>>
>> Well, the parser doesn't, but as best I can tell it's also somewhat loosely
>> coupled from the system. It doesn't do table access, for instance.  It builds
>> and returns a parse tree.  There's no reason you couldn't parse a different
>> language and return a tree of the same type.  Or you could just translate
>> your input language into SQL, and pass it along to the existing parser.
>
> I looked into that, and it's too hard as a starting place. There is too much 
> of the tree and the subsequent query planning that is hooked into specific 
> features of SQL. Instead, Andl generates a small subset of SQL. Once each 
> query has been generated and parsed, the prepared statements can be cached 
> and you get most of the benefits.
>
>> > but the assumptions about the two worlds (SQL vs a properly relational
>> > store) are probably too different.
>
>> 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.
>
> Absolutely not. SQL is a (nearly) full implementation of the relational 
> algebra, plus other non-relational stuff.  The only thing it really can't 
> handle is a table with no columns! (I have to fake that)

FWIW standard SQL may not allow it but Postgres does, and it's even
possible to exclude duplicates by using an expression that references
the whole row.

postgres=# select;
┌──┐
├──┤
└──┘
(1 row)
postgres=# create table dum ();
CREATE TABLE
postgres=# select * from dum;
┌──┐
├──┤
└──┘
(0 rows)
postgres=# create unique index dum_unique on dum((dum));
CREATE INDEX
postgres=# insert into dum select;
INSERT 0 1
postgres=# select * from dum;
┌──┐
├──┤
└──┘
(1 row)
postgres=# insert into dum select;
ERROR:  duplicate key value violates unique constraint "dum_unique"
DETAIL:  Key ((dum.*))=(()) already exists.

-- 
Thomas Munro
http://www.enterprisedb.com


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread david
> On Fri, Apr 22, 2016 at 10:45 PM, John R Pierce  wrote:
> > a table with no columns would have no primary key...  doesn't that
> > violate one of the fundamental tenets of the relational model ?
> 
> Not as I understand it.  A relation must have at least one candidate key.
> That will be the set of all the fields, if no proper subset qualifies.
> Calling one key "primary" is merely convention, so far as I am aware (talking
> relational theory, here, not how databases regard primary keys).

This is a 'soft' requirement. If there is no other key, then the set of all 
attributes is the key.

> In a table with no columns, the only candidate key is the set of all fields,
> which is the empty set.  If you want to call that the primary key, it
> shouldn't be a problem.  The tuples (all 0 of them) are guaranteed to be
> unique.

The relation with no attributes may have a tuple, which itself has no 
attributes. Thus there are two such relations, one empty and one of degree one. 
They can be referred to as DUM and DEE, or as false and true. See 
http://c2.com/cgi/wiki?TableDum for example.

Many experienced users of SQL are aware of situations where they are useful. In 
Andl they are automatically available as literals.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org







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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Raymond Brinzer
On Fri, Apr 22, 2016 at 10:45 PM, John R Pierce  wrote:
> a table with no columns would have no primary key...  doesn't that violate
> one of the fundamental tenets of the relational model ?

Not as I understand it.  A relation must have at least one candidate
key.  That will be the set of all the fields, if no proper subset
qualifies. Calling one key "primary" is merely convention, so far as I
am aware (talking relational theory, here, not how databases regard
primary keys).

In a table with no columns, the only candidate key is the set of all
fields, which is the empty set.  If you want to call that the primary
key, it shouldn't be a problem.  The tuples (all 0 of them) are
guaranteed to be unique.

-- 
Ray Brinzer


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread John R Pierce

On 4/22/2016 7:04 PM, da...@andl.org wrote:

Absolutely not. SQL is a (nearly) full implementation of the relational 
algebra, plus other non-relational stuff. The only thing it really can't handle 
is a table with no columns! (I have to fake that)



a table with no columns would have no primary key...  doesn't that 
violate one of the fundamental tenets of the relational model ?




--
john r pierce, recycling bits in santa cruz



Re: [GENERAL] Proper relational database?

2016-04-22 Thread david
> Why is starting at a low level important?  A database is truly relational to
> the extent that it implements the relational model. If you don't want the
> database to allow tables without keys, or to allow null values, don't let
> people create them. If the underlying machinery allows them, that seems like
> a mere performance issue; worrying about that from the outset seems like a
> perfect example of premature optimization. If PostgreSQL's performance is
> acceptable now, why wouldn't it be acceptable with a different interface
> language?

Agreed.

> There are other aspects of what would make a truly relational database, of
> course. Codd's 0th rule, for instance, that the "system must be able to
> manage data bases entirely through its relational capabilities" to me says
> that there should be no data definition language, except as syntactic sugar
> for relational operations. So you'd create users (thousands in one command,
> if you liked) by adding tuples to a base relation.

Yes, maybe, but that makes it not part of the language. You can't apply rule 0 
to things like creating a type or operator in a language.

> But which things are important? I think a good many of the things one might
> would be lower-hanging fruit than that. Just having a clean query language
> would alleviate a lot of (my) discomfort.

Andl is that.

> > I don't know if Postgres exposes the lower-level stuff to plugins or
> > not — it would be nice if this could be an alternative query language
> > for Postgres itself,
> 
> Well, the parser doesn't, but as best I can tell it's also somewhat loosely
> coupled from the system. It doesn't do table access, for instance.  It builds
> and returns a parse tree.  There's no reason you couldn't parse a different
> language and return a tree of the same type.  Or you could just translate
> your input language into SQL, and pass it along to the existing parser.

I looked into that, and it's too hard as a starting place. There is too much of 
the tree and the subsequent query planning that is hooked into specific 
features of SQL. Instead, Andl generates a small subset of SQL. Once each query 
has been generated and parsed, the prepared statements can be cached and you 
get most of the benefits.

> > but the assumptions about the two worlds (SQL vs a properly relational
> > store) are probably too different.

> 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.

Absolutely not. SQL is a (nearly) full implementation of the relational 
algebra, plus other non-relational stuff. The only thing it really can't handle 
is a table with no columns! (I have to fake that)

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org






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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread david
Eventual consistency is not part of the language, so outside the scope of Andl.

 

Easy distribution depends on a standardised language. SQL is a definite fail. 
There is only one Andl and it works identically on all platforms. That should 
help.

 

Why schema-on-demand? Can you explain what you mean by that?

 

Regards

David M Bennett FACS

  _  

Andl - A New Database Language - andl.org

 

 

From: pgsql-general-ow...@postgresql.org 
[mailto:pgsql-general-ow...@postgresql.org] On Behalf Of Guyren Howe
Sent: Saturday, 23 April 2016 5:54 AM
To: PostgreSQL General <pgsql-general@postgresql.org>
Subject: Re: [GENERAL] Proper relational database?

 

The SQL language is terrible but we can live with it.

 

But the answer to "Are there any relational data stores that offer eventual 
consistency, easy distribution, schema-on-demand or any such things a large 
modern application can use?" appears to be no. And that's just awful.

 

On Apr 22, 2016, at 12:40 , David G. Johnston <david.g.johns...@gmail.com 
<mailto:david.g.johns...@gmail.com> > wrote:

 

On Fri, Apr 22, 2016 at 12:25 PM, Raymond Brinzer <ray.brin...@gmail.com 
<mailto:ray.brin...@gmail.com> > wrote:

So, let's just flat-out ask.

Dear Important People:  would the PostgreSQL project consider
supporting other query languages? Or creating a plug-in mechanism for
them, so that alternative interface languages could be added without
changing the base code?

 

​

If by important you mean possessing a commit-bit then I don't count...but for 
me, such a project would have to gain significant adoption as a fork of the 
PostgreSQL code base before it would ever be considered for take-over by the 
mainline project.

​

​David J.​

 

 



Re: [GENERAL] Proper relational database?

2016-04-22 Thread david
Andl is a "proper relational database" language.

Andl is an original implementation of the language D described in The Third 
Manifesto. http://www.dcs.warwick.ac.uk/~hugh/TTM/. 

I have a working implementation of Andl on Postgres. See 
http://www.andl.org/2016/04/postgres-meet-andl/. This version is not ready for 
release, but there is a download that supports Sqlite, Thrift and REST.

The syntax of Andl is quite different from Tutorial D, or SQL. It does what SQL 
does, including any relational query you can think of, and a few you haven't! 
Check out the web site for some code samples.

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org

> -Original Message-
> From: pgsql-general-ow...@postgresql.org [mailto:pgsql-general-
> ow...@postgresql.org] On Behalf Of Paul Jungwirth
> Sent: Saturday, 23 April 2016 5:38 AM
> To: pgsql-general@postgresql.org
> Subject: Re: [GENERAL] Proper relational database?
> 
> On 04/21/2016 01:36 PM, Guyren Howe wrote:
> > Anyone familiar with the issue would have to say that the tech world
>  > would be a significantly better place if IBM had developed a real  >
> relational database with an elegant query language
> 
> I'm surprised no one yet has mentioned Tutorial D by C. J. Date. His book
> _Database in Depth_ is pretty much an extended argument for how superior it
> is to SQL. RelDB is apparently an open source implementation of it, and D4 is
> a commercial one. That's about all I know in terms of practically using it
> for something. But Date & Tutorial D seems like a good place to start if SQL
> isn't relational enough for you. The book I mentioned is short and easy to
> read.
> 
> Paul
> 
> 
> 
> 
> 
> 
> 
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make
> changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general



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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Manuel Gómez
On Fri, Apr 22, 2016 at 3:07 PM, Paul Jungwirth
 wrote:
> I'm surprised no one yet has mentioned Tutorial D by C. J. Date. His book
> _Database in Depth_ is pretty much an extended argument for how superior it
> is to SQL. RelDB is apparently an open source implementation of it, and D4
> is a commercial one. That's about all I know in terms of practically using
> it for something. But Date & Tutorial D seems like a good place to start if
> SQL isn't relational enough for you. The book I mentioned is short and easy
> to read.

This is a relevant project: https://github.com/agentm/project-m36


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread David G. Johnston
On Fri, Apr 22, 2016 at 12:54 PM, Guyren Howe  wrote:

> The SQL language is terrible but we can live with it.
>

​If anything, and especially something as pervasive and esoteric as SQL,
makes you question your desire to live please get help.​


> But the answer to "Are there any relational data stores that offer
> eventual consistency, easy distribution, schema-on-demand or any such
> things a large modern application can use?" appears to be no. And that's
> just awful.
>
>
​The axiom "a bird in hand is worth two in the bush" comes to mind here.
This applies even if the bird-in-hand is ugly and the glimpses of the ones
in the bush indicates they are beautiful.

David J.


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Joshua D. Drake

On 04/22/2016 12:25 PM, Raymond Brinzer wrote:

So, let's just flat-out ask.

Dear Important People:  would the PostgreSQL project consider
supporting other query languages? Or creating a plug-in mechanism for
them, so that alternative interface languages could be added without
changing the base code?


Probably not considering our mission.

JD


--
Command Prompt, Inc.  http://the.postgres.company/
+1-503-667-4564
PostgreSQL Centered full stack support, consulting and development.
Everyone appreciates your honesty, until you are honest with them.


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Guyren Howe
The SQL language is terrible but we can live with it.

But the answer to "Are there any relational data stores that offer eventual 
consistency, easy distribution, schema-on-demand or any such things a large 
modern application can use?" appears to be no. And that's just awful.

> On Apr 22, 2016, at 12:40 , David G. Johnston  
> wrote:
> 
> On Fri, Apr 22, 2016 at 12:25 PM, Raymond Brinzer  > wrote:
> So, let's just flat-out ask.
> 
> Dear Important People:  would the PostgreSQL project consider
> supporting other query languages? Or creating a plug-in mechanism for
> them, so that alternative interface languages could be added without
> changing the base code?
> 
> ​If by important you mean possessing a commit-bit then I don't count...but 
> for me, such a project would have to gain significant adoption as a fork of 
> the PostgreSQL code base before it would ever be considered for take-over by 
> the mainline project.
> ​
> ​David J.​
> 



Re: [GENERAL] Proper relational database?

2016-04-22 Thread David G. Johnston
On Fri, Apr 22, 2016 at 12:25 PM, Raymond Brinzer 
wrote:

> So, let's just flat-out ask.
>
> Dear Important People:  would the PostgreSQL project consider
> supporting other query languages? Or creating a plug-in mechanism for
> them, so that alternative interface languages could be added without
> changing the base code?
>

​
If by important you mean possessing a commit-bit then I don't count...but
for me, such a project would have to gain significant adoption as a fork of
the PostgreSQL code base before it would ever be considered for take-over
by the mainline project.
​
​David J.​


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Paul Jungwirth

On 04/21/2016 01:36 PM, Guyren Howe wrote:

Anyone familiar with the issue would have to say that the tech world

> would be a significantly better place if IBM had developed a real
> relational database with an elegant query language

I'm surprised no one yet has mentioned Tutorial D by C. J. Date. His 
book _Database in Depth_ is pretty much an extended argument for how 
superior it is to SQL. RelDB is apparently an open source implementation 
of it, and D4 is a commercial one. That's about all I know in terms of 
practically using it for something. But Date & Tutorial D seems like a 
good place to start if SQL isn't relational enough for you. The book I 
mentioned is short and easy to read.


Paul







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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Raymond Brinzer
So, let's just flat-out ask.

Dear Important People:  would the PostgreSQL project consider
supporting other query languages? Or creating a plug-in mechanism for
them, so that alternative interface languages could be added without
changing the base code?


On Thu, Apr 21, 2016 at 4:36 PM, Guyren Howe  wrote:
> Anyone familiar with the issue would have to say that the tech world would be 
> a significantly better place if IBM had developed a real relational database 
> with an elegant query language rather than the awful camel of a thing that is 
> SQL.
>
> If I had a few $million to spend in a philanthropical manner, I would hire 
> some of the best PG devs to develop a proper relational database server. 
> Probably a query language that expressed the relational algebra in a 
> scheme-like syntax, and the storage model would be properly relational (eg no 
> duplicate rows).
>
> It's an enormous tragedy that all the development effort that has gone into 
> NoSQL database has pretty much all gotten it wrong: by all means throw out 
> SQL, but not the relational model with it. They're all just rehashing the 
> debate over hierarchical storage from the 70s. Comp Sci courses should 
> feature a history class.
>
> It's a bit odd to me that someone isn't working on such a thing.
>
> Just curious what folks here have to say…
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general



-- 
Ray Brinzer


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Guyren Howe
On Apr 22, 2016, at 10:45 , Raymond Brinzer  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@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Eric Schwarzenbach

On 04/22/2016 06:21 AM, David Goodenough wrote:

On Thursday 21 April 2016 13:36:54 Guyren Howe wrote:

Anyone familiar with the issue would have to say that the tech world would
be a significantly better place if IBM had developed a real relational
database with an elegant query language rather than the awful camel of a
thing that is SQL.

If I had a few $million to spend in a philanthropical manner, I would hire
some of the best PG devs to develop a proper relational database server.
Probably a query language that expressed the relational algebra in a
scheme-like syntax, and the storage model would be properly relational (eg
no duplicate rows).

It's an enormous tragedy that all the development effort that has gone into
NoSQL database has pretty much all gotten it wrong: by all means throw out
SQL, but not the relational model with it. They're all just rehashing the
debate over hierarchical storage from the 70s. Comp Sci courses should
feature a history class.

It's a bit odd to me that someone isn't working on such a thing.

Just curious what folks here have to say…

Well when IBM were first developing relational databases there were two
different teams.  One in California which produced System-R which became
what we now know as DB2 and spawned SQL, and the other in Peterlee in
the UK which was called PRTV (the Peterlee Relational Test Vehicle).  PRTV
rather died but bits of it survived.  In particular it was the first to system
to include a relational optimiser.  You can find some details on the PRTV
page in Wikipedia.

It was written in PL/1, although it also used some modified microcode
and therefore some assembler.

It never appeared as a product, but there was a geographical system
which built on top of it which was if I recall corrected used by the Greater
London Council and Central Region Scotland, which did something of
what postgis does for PostgreSQL.

According to the Wikipedia page it did have a language (ISBL) but from what
I recall (and it was nearly 40 years ago) there were a series of PL/1
function calls we used rather than encoding the request as a string
as SQL systems require.

The IBM centre in Peterlee was closed, and the lab moved to Winchester
where I think it still resides.
One of the people involved in that was Hugh Darwen, who is one of the 
authors of The Third Manifesto, which is an attempt to define what a 
properly relational language and system should look like. So you could 
say the experience of ISBL vs SQL has been folded into that effort.





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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Raymond Brinzer
On Fri, Apr 22, 2016 at 2:05 AM, Guyren Howe  wrote:
> If I had the time and money to put together a team to do this, I would start
> with the lower-level guts of either Postgres or SQLite (or, heck, MySQL) so
> you had a thing that did BTrees and other data structures on disk and
> indexes, and provide access to that from a high level, portable and
> efficient language. Perhaps Scheme.
>
> Then you could write a high-level relational logic engine on top of that, in
> the high level language, perhaps with the odd bit of C or D or Go for
> anything really critical.

Why is starting at a low level important?  A database is truly
relational to the extent that it implements the relational model. If
you don't want the database to allow tables without keys, or to allow
null values, don't let people create them. If the underlying machinery
allows them, that seems like a mere performance issue; worrying about
that from the outset seems like a perfect example of premature
optimization. If PostgreSQL's performance is acceptable now, why
wouldn't it be acceptable with a different interface language?

There are other aspects of what would make a truly relational
database, of course. Codd's 0th rule, for instance, that the "system
must be able to manage data bases entirely through its relational
capabilities" to me says that there should be no data definition
language, except as syntactic sugar for relational operations. So
you'd create users (thousands in one command, if you liked) by adding
tuples to a base relation.

But which things are important? I think a good many of the things one
might would be lower-hanging fruit than that. Just having a clean
query language would alleviate a lot of (my) discomfort.

> I don't know if Postgres exposes the lower-level stuff to plugins or not —
> it would be nice if this could be an alternative query language for Postgres
> itself,

Well, the parser doesn't, but as best I can tell it's also somewhat
loosely coupled from the system. It doesn't do table access, for
instance.  It builds and returns a parse tree.  There's no reason you
couldn't parse a different language and return a tree of the same
type.  Or you could just translate your input language into SQL, and
pass it along to the existing parser.

> but the assumptions about the two worlds (SQL vs a properly
> relational store) are probably too different.

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.

-- 
Ray Brinzer


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread John McKown
On Fri, Apr 22, 2016 at 1:05 AM, Guyren Howe  wrote:

>
> A brief review of it says it would be better than SQL, but then almost
> anything would be. But the syntax looks a bit… baroque. Quell similarly.
>
> If I had the time and money to put together a team to do this, I would
> start with the lower-level guts of either Postgres or SQLite (or, heck,
> MySQL) so you had a thing that did BTrees and other data structures on disk
> and indexes, and provide access to that from a high level, portable and
> efficient language. Perhaps Scheme.
>
> Then you could write a high-level relational logic engine on top of that,
> in the high level language, perhaps with the odd bit of C or D or Go for
> anything really critical.
>
> I don't know if Postgres exposes the lower-level stuff to plugins or not —
> it would be nice if this could be an alternative query language for
> Postgres itself, but the assumptions about the two worlds (SQL vs a
> properly relational store) are probably too different.
>
> As I say, it amazes and somewhat depresses me that someone isn't doing
> this. The NoSQL movement shows that the world is ready for change. Someone
> should be offering folks something better than bloody MongoDB.
>
> And the project could adopt the spirit of the good parts of the NoSQL
> movement. I should be able to have a lightweight, distributed
> schema-on-demand, eventually consistent etc etc *relational* data store.
>
> Please don't get me wrong. I *adore* Postgres. It is for most projects
> hands-down the best data store available. It's just tragic that this
> amazing project is so wedded to the awfulness that is SQL.
>
> I wrote about such issues at a bit more length at
> http://relevantlogic.com/2015/11/04/no-sql-is-fixing-the-wrong-problem.html
>

​I am not a developer, but one thing interesting about SQLite is that it
appears to "compile" the SQL into a virtual machine language (ala Java &
byte code), then execute that. Now, if someone wanted to & had the talent,
it might be interesting to have another language which would compile into
the same VM language and so be executable by the SQLite VM interpreter. I
don't know if PostgreSQL does something similar or not. It may do a SQL to
VM, like Python. Or it may do something else. I need to read the
"internals" documentation on the web site.​


-- 
"He must have a Teflon brain -- nothing sticks to it"
Phyllis Diller

Maranatha! <><
John McKown


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Geoff Winkless
On 22 April 2016 at 07:05, Guyren Howe  wrote:
> As I say, it amazes and somewhat depresses me that someone isn't doing this.
> The NoSQL movement shows that the world is ready for change. Someone should
> be offering folks something better than bloody MongoDB.
>
> Please don't get me wrong. I *adore* Postgres. It is for most projects
> hands-down the best data store available. It's just tragic that this amazing
> project is so wedded to the awfulness that is SQL.

Can I make a counter-argument?

SQL is excellent for beginners and adequate for most users. The basic
syntax of SQL (enough that people can produce useful queries with it)
can be presented and understood by a novice in an afternoon. I would
balk at the idea of trying to present the sort of syntax that appears
on the ANDL website to people who aren't programmers, which (I'd be
tempted to suggest) is a significant proportion of the userbase of
SQL.

The fact that ORMs are horrible and involve far too much work to
maintain isn't the fault of SQL, it's the fault of the people who
believe that they have to have their data fed to them by an ORM,
because of this idea (that has sadly propagated widely) that the
separation of code from the data is somehow helpful (as is probably
obvious I'm yet to be convinced of that!).

The world is not "ready for a change". I think of NoSQL as being like
Kim Kardashian: it gets an awful lot of publicity without providing
much justification for it; it brings a lot of column inches without
giving anything of substance in return and a lot of people talk about
it an awful lot without really knowing much about it at all.

There's a (very) small set of users for whom NoSQL makes a lot of
sense. Most of those are large corporations with huge budgets for
development, or academics who can afford to spend many hours tweaking
and figuring out their optimum storage requirements. The average SQL
user, on the other hand, just wants something that brings consistent
data storage for their database that probably numbers in the tens of
thousands of records at most (and if it scales to tens of millions
then great).

Geoff


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread David Goodenough
On Thursday 21 April 2016 13:36:54 Guyren Howe wrote:
> Anyone familiar with the issue would have to say that the tech world would
> be a significantly better place if IBM had developed a real relational
> database with an elegant query language rather than the awful camel of a
> thing that is SQL.
> 
> If I had a few $million to spend in a philanthropical manner, I would hire
> some of the best PG devs to develop a proper relational database server.
> Probably a query language that expressed the relational algebra in a
> scheme-like syntax, and the storage model would be properly relational (eg
> no duplicate rows).
> 
> It's an enormous tragedy that all the development effort that has gone into
> NoSQL database has pretty much all gotten it wrong: by all means throw out
> SQL, but not the relational model with it. They're all just rehashing the
> debate over hierarchical storage from the 70s. Comp Sci courses should
> feature a history class.
> 
> It's a bit odd to me that someone isn't working on such a thing.
> 
> Just curious what folks here have to say…
Well when IBM were first developing relational databases there were two
different teams.  One in California which produced System-R which became
what we now know as DB2 and spawned SQL, and the other in Peterlee in
the UK which was called PRTV (the Peterlee Relational Test Vehicle).  PRTV
rather died but bits of it survived.  In particular it was the first to system
to include a relational optimiser.  You can find some details on the PRTV
page in Wikipedia.  

It was written in PL/1, although it also used some modified microcode 
and therefore some assembler.  

It never appeared as a product, but there was a geographical system
which built on top of it which was if I recall corrected used by the Greater
London Council and Central Region Scotland, which did something of
what postgis does for PostgreSQL.

According to the Wikipedia page it did have a language (ISBL) but from what
I recall (and it was nearly 40 years ago) there were a series of PL/1 
function calls we used rather than encoding the request as a string
as SQL systems require.

The IBM centre in Peterlee was closed, and the lab moved to Winchester
where I think it still resides.

David


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


Re: [GENERAL] Proper relational database?

2016-04-22 Thread Guyren Howe
On Apr 21, 2016, at 13:56 , John McKown  wrote:
> 
> Just as a curiosity, what do you think of ANDL?
> 
> http://www.andl.org/welcome-to-andl/ 
> 
> The developer has been posting some questions here about interfacing it to 
> PostgreSQL. But he doesn't just want to do a "translate the ANDL language to 
> SQL language"

A brief review of it says it would be better than SQL, but then almost anything 
would be. But the syntax looks a bit… baroque. Quell similarly.

If I had the time and money to put together a team to do this, I would start 
with the lower-level guts of either Postgres or SQLite (or, heck, MySQL) so you 
had a thing that did BTrees and other data structures on disk and indexes, and 
provide access to that from a high level, portable and efficient language. 
Perhaps Scheme.

Then you could write a high-level relational logic engine on top of that, in 
the high level language, perhaps with the odd bit of C or D or Go for anything 
really critical.

I don't know if Postgres exposes the lower-level stuff to plugins or not — it 
would be nice if this could be an alternative query language for Postgres 
itself, but the assumptions about the two worlds (SQL vs a properly relational 
store) are probably too different.

As I say, it amazes and somewhat depresses me that someone isn't doing this. 
The NoSQL movement shows that the world is ready for change. Someone should be 
offering folks something better than bloody MongoDB.

And the project could adopt the spirit of the good parts of the NoSQL movement. 
I should be able to have a lightweight, distributed schema-on-demand, 
eventually consistent etc etc *relational* data store.

Please don't get me wrong. I *adore* Postgres. It is for most projects 
hands-down the best data store available. It's just tragic that this amazing 
project is so wedded to the awfulness that is SQL.

I wrote about such issues at a bit more length at 
http://relevantlogic.com/2015/11/04/no-sql-is-fixing-the-wrong-problem.html 


Re: [GENERAL] Proper relational database?

2016-04-21 Thread Raymond Brinzer
Well, this hits very close to my feelings in several respects.  I
don't often bring this up, because I don't generally feel like "I
loathe SQL" is quite the thing to say in a community called
"PostgreSQL".  :-)  Or, "I really love this project... can we change
its direction entirely?"

But yeah, that's in my heart. And I'm quite in agreement on NoSQL. I
don't think a lot of people realize there *is* a difference between
"relational" and SQL, so the baby goes out with the bathwater.

As it just so happens, I actually hacked a Scheme interpreter into the
PostgreSQL parser, and got it to interpret incoming messages, with
virtually the same idea. I started messing with generating SQL from
S-expressions, with the idea to perhaps call query-building functions
later on.  I started off with Chibi Scheme, and moved to Chicken later
on, mostly because the folks in the Chicken IRC channel are so
helpful.  I was wondering whether PostgreSQL might consider supporting
alternative query languages, similar to the way it supports multiple
languages for stored procedures.  Ideally, it'd be nice to get the
query results as S-expressions also.

On Thu, Apr 21, 2016 at 4:36 PM, Guyren Howe  wrote:
> Anyone familiar with the issue would have to say that the tech world would be 
> a significantly better place if IBM had developed a real relational database 
> with an elegant query language rather than the awful camel of a thing that is 
> SQL.
>
> If I had a few $million to spend in a philanthropical manner, I would hire 
> some of the best PG devs to develop a proper relational database server. 
> Probably a query language that expressed the relational algebra in a 
> scheme-like syntax, and the storage model would be properly relational (eg no 
> duplicate rows).
>
> It's an enormous tragedy that all the development effort that has gone into 
> NoSQL database has pretty much all gotten it wrong: by all means throw out 
> SQL, but not the relational model with it. They're all just rehashing the 
> debate over hierarchical storage from the 70s. Comp Sci courses should 
> feature a history class.
>
> It's a bit odd to me that someone isn't working on such a thing.
>
> Just curious what folks here have to say…
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general



-- 
Ray Brinzer


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


Re: [GENERAL] Proper relational database?

2016-04-21 Thread John McKown
Just as a curiosity, what do you think of ANDL?

http://www.andl.org/welcome-to-andl/

The developer has been posting some questions here about interfacing it to
PostgreSQL. But he doesn't just want to do a "translate the ANDL language
to SQL language"

On Thu, Apr 21, 2016 at 3:36 PM, Guyren Howe  wrote:

> Anyone familiar with the issue would have to say that the tech world would
> be a significantly better place if IBM had developed a real relational
> database with an elegant query language rather than the awful camel of a
> thing that is SQL.
>
> If I had a few $million to spend in a philanthropical manner, I would hire
> some of the best PG devs to develop a proper relational database server.
> Probably a query language that expressed the relational algebra in a
> scheme-like syntax, and the storage model would be properly relational (eg
> no duplicate rows).
>
> It's an enormous tragedy that all the development effort that has gone
> into NoSQL database has pretty much all gotten it wrong: by all means throw
> out SQL, but not the relational model with it. They're all just rehashing
> the debate over hierarchical storage from the 70s. Comp Sci courses should
> feature a history class.
>
> It's a bit odd to me that someone isn't working on such a thing.
>
> Just curious what folks here have to say…
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>



-- 
"He must have a Teflon brain -- nothing sticks to it"
Phyllis Diller

Maranatha! <><
John McKown


Re: [GENERAL] Proper relational database?

2016-04-21 Thread David G. Johnston
On Thu, Apr 21, 2016 at 1:36 PM, Guyren Howe  wrote:

> Anyone familiar with the issue would have to say that the tech world would
> be a significantly better place if IBM had developed a real relational
> database with an elegant query language rather than the awful camel of a
> thing that is SQL.
>
> If I had a few $million to spend in a philanthropical manner, I would hire
> some of the best PG devs to develop a proper relational database server.
> Probably a query language that expressed the relational algebra in a
> scheme-like syntax, and the storage model would be properly relational (eg
> no duplicate rows).
>
> It's an enormous tragedy that all the development effort that has gone
> into NoSQL database has pretty much all gotten it wrong: by all means throw
> out SQL, but not the relational model with it. They're all just rehashing
> the debate over hierarchical storage from the 70s. Comp Sci courses should
> feature a history class.
>
> It's a bit odd to me that someone isn't working on such a thing.
>
> Just curious what folks here have to say…
>

​Transpiling

​Having learned SQL you come to appreciate its warts and inefficiencies -
but I have no doubt that any other attempt at the same goal would have its
own, different, set of complaints.

​My tables don't have duplicates and while extra care need be taken
automatic duplicate removal also has the property of potentially hiding
bugs - whether more or less than non-removal I cannot say.

​David J.


Re: [GENERAL] Proper relational database?

2016-04-21 Thread Peter Geoghegan
On Thu, Apr 21, 2016 at 1:36 PM, Guyren Howe  wrote:
> If I had a few $million to spend in a philanthropical manner, I would hire 
> some of the best PG devs to develop a proper relational database server. 
> Probably a query language that expressed the relational algebra in a 
> scheme-like syntax, and the storage model would be properly relational (eg no 
> duplicate rows).

Have you heard of QUEL?

See https://en.wikipedia.org/wiki/QUEL_query_languages

-- 
Peter Geoghegan


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


[GENERAL] Proper relational database?

2016-04-21 Thread Guyren Howe
Anyone familiar with the issue would have to say that the tech world would be a 
significantly better place if IBM had developed a real relational database with 
an elegant query language rather than the awful camel of a thing that is SQL.

If I had a few $million to spend in a philanthropical manner, I would hire some 
of the best PG devs to develop a proper relational database server. Probably a 
query language that expressed the relational algebra in a scheme-like syntax, 
and the storage model would be properly relational (eg no duplicate rows).

It's an enormous tragedy that all the development effort that has gone into 
NoSQL database has pretty much all gotten it wrong: by all means throw out SQL, 
but not the relational model with it. They're all just rehashing the debate 
over hierarchical storage from the 70s. Comp Sci courses should feature a 
history class.

It's a bit odd to me that someone isn't working on such a thing.

Just curious what folks here have to say…

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