dbTalk Databases Forums  

Re: Relational v OO dbs

comp.databases comp.databases


Discuss Re: Relational v OO dbs in the comp.databases forum.



Reply
 
Thread Tools Display Modes
  #21  
Old   
Paul G. Brown
 
Posts: n/a

Default Re: Relational v OO dbs - 06-28-2003 , 03:03 PM






Marcus Baker <marcus (AT) lastcraft (DOT) com> wrote


Quote:
Applications don't live as long as corporate data. It's a lot easier for
us to shift to a new technology on the next project than it is to move
SQL based systems. Even allowing for this though, why is the DB
community still using SQL? If it so poorly represents the (developing)
relational theory, why haven't you dumped it for SQL++ (or whatever)?
Are Pascal and Date still going to be lamenting the non-relational
databases from Oracle/Sybase/IBM in ten years time? Are we, sorry you,
at the end of the database road already?
Yes, the stagnation of database languages is an embuggerance. Partly its
because the 'ties and suspenders' crowd are very reluctant to move their
corporate assets from proven -- albeit sub-optimal -- technology to something
'newer' with arguable (though not proven) advantages. Partly its because
we've all been sold on the importance of standards, so anyone who tries to
push a SQL++ into the market is going to get the crap beaten out of them.

My own opinion (que the monkeys) is that the best we can hope for is to
make best use of the tools available. NULLs a problem? Well, don't
use 'em. Can SQL tables have duplicate rows? Sure: so you should always
define primary keys. Integrity is important? Absolutely: normalize, and
use declarative constraints, and don't give in to bozos who want
to enforce integrity at the application level. SQL's critics are frequently
right, but the pragmatic answer is not to wait for language changes but
to use a safe subset of the language.

Also: want to take advantage of relational domains? Then use the
CREATE TYPE/FUNCTION/AGGREGATE features of your favorite product. Want to
introduce non-database information into the query name-space? Then use
the external data infrastructure. Programming in Java against a modern
DBMS? Have a look at the way SQL-J is implemented and use those
facilities.

What OO languages did was to enforce good programming practice --
coupling and cohesion -- as part of the language syntax. You could
always program that way with 3GLs like 'C', but it wasn't absolutely
enforced by the language design, so programmers against deadlines took
convenient shortcuts. An improved DBMS language would take a similar
tack: eliminate bad practices by making them syntactically impossible.

SQL is and will remain 'inter-galactic data speak'. OO is the dominant
programming language paradigm.. I'm a Lisp/Quel bigot. Look where they
ended up.

KR

P "twit-filter ignorant crap" b


Reply With Quote
  #22  
Old   
Bob Badour
 
Posts: n/a

Default Re: Relational v OO dbs - 06-28-2003 , 04:19 PM






"daveb" <davebestOBVIOUS (AT) usa (DOT) net> wrote

Quote:
"Marcus Baker" <marcus (AT) lastcraft (DOT) com> wrote in message
news:3EFDD780.9090709 (AT) lastcraft (DOT) com...
Hi.

Bob Badour wrote:
snipped the lot

I would be quite happy to carry on a polite debate (I said I was playing
devil's advocate). I am not happy to have some pompous idiot throwing
abuse around. If you expect me to respond please repost with the
following points in mind...

1) _Read_ my post, do _read-into_ my post. In most of your responses you
claim a position for me which I do not adopt, and definitely did not
adopt in my post.
2) Usenet is so much more than a point scoring mechanism or a forum for
personal grudges.
3) Knowledge is bliss. Ignorance is an attitude.
4) Try to assume that most people come to their craft with large and
different experiences. If the judgements on this group differ, then both
protagonists have a problem until both understand each other's position.
Once that happens the problem is resolved. Most people are able to
change their minds (which is anyway more fun).

You are doing your little bit to kill any sort of value to this group
for anyone except yourself. Please chill.

yours, Marcus.
--
Marcus Baker, marcus (AT) lastcraft (DOT) com, nokia (AT) appo (DOT) demon.co.uk

Interesting. I read both posts carefully, and cannot see the reason for
this reply. It looks to me like Bob responded to your "devils-advocate"
position with pointed observations and well reasoned questions about the
application of object-orientation to database management. Having myself
recently built a quite sophisticated O/R layer and grappled first-hand with
the many issues that have arisen, I find that many of his points ring true
to me, so I was looking forward to a reasoned rebuttal to these points,
which might help inform my own work.
I think part of the problem was Marcus' introduction of the whole 'we'
and 'you' thing. It seems strange to me to state explicitly in one
message that the first and second person correspond to viewpoints or
to arguments and not to persons, and then in the next message to take
personal insult from the use of the first and second person in the
reply.

I suppose either Marcus was not able to dissociate himself from those
parts of the Devil's Advocate's argument with which he disagrees, or
he was presenting his own personally held beliefs more often than not.

Have you read Pascal's _Practical Issues..._ book? He does a good job
of exploring the issues and mapping out those areas with sound
principled solutions vs. those areas requiring arbitrary decisions.


Reply With Quote
  #23  
Old   
Marcus Baker
 
Posts: n/a

Default Re: Relational v OO dbs - 06-28-2003 , 09:32 PM



daveb wrote:
Quote:
"Marcus Baker" <marcus (AT) lastcraft (DOT) com> wrote in message
news:3EFDD780.9090709 (AT) lastcraft (DOT) com...


Interesting. I read both posts carefully, and cannot see the reason for
this reply. It looks to me like Bob responded to your "devils-advocate"
position with pointed observations and well reasoned questions about the
application of object-orientation to database management.
I was quite happily draughting reply, but the further I read down the
post the worse it got...

"Your assertion about the relative difficulty is nothing more than
absurd handwaving and complete non sequitur."

"All the absurd non sequitur you have been spouting?"

"How did he measure this 30%? Cockburn pulls a
number out of his ass, and you folks all parade around waving it
about."

"Another number you pulled from your ass. Or did you pull it from
Cockburn's ass again?"

"In other words, your post articulates opinions that you formed in
ignorance and that you accept on faith."

With these kind of pointed observations and well reasoned questions I
dumped the reply. I do not see why I should ever grace it with one. This
is only the direct rudeness, there was more implied. A Devil's advocate
position is not an invitation for insults.

If my obviously angered response is an overreaction then I apologise
both to Bob and yourself, but I still think Bob should get out more.

Quote:
--
David Best
yours, Marcus.
--
Marcus Baker, marcus (AT) lastcraft (DOT) com, nokia (AT) appo (DOT) demon.co.uk



Reply With Quote
  #24  
Old   
Alfredo Novoa
 
Posts: n/a

Default Re: Relational v OO dbs - 06-30-2003 , 07:06 AM



Marcus Baker <marcus (AT) lastcraft (DOT) com> wrote



Quote:
I'd like to play devil's advocate here, not least because I have my feet
now firmly planted in the OO camp, almost always talking to DBMSs via. a
persistence layer these days.
Does the persistence layer you use maps classes to tables?

Quote:
OO is now the norm in software development, and there is no doubt that
the langauges have evolved alongside it.
It is the norm in data presentation application development, but
Information System develolpment is not only application development.
You also have to develop a database, and OO has very little to say
about business database development.

For lots of applications you only have to drag and drop components in
Visual Basic like forms, and to connect the components to the
database.

Quote:
Applications don't live as long as corporate data. It's a lot easier for
us to shift to a new technology on the next project than it is to move
SQL based systems.
Applications don't live as long as SQL databases.

Quote:
If you take market share then 90% (my guestimate) of developers using OO
are using Java like model for persistence classes.
Define what is OO. VB claims to be OO, and Delphi definitely is OO and
you can develop Delphi, VB and C# forms without using the network and
application based data management approaches.

Quote:
That's really a challenge for the library writers and language writers.
Hardly insurmountable. I have used a Java persistence layer with PHP for
example, and Python can talk to all sorts of things. Also cross language
mapping tools were appearing even before .NET came along.
Most of such tools are based on what Date calls the First Great
Blunder.

They are only pieces of trash.

Quote:
If you are using persistence layers, it's because you are doing a
complex domain object application.
Then you are probably doing application based data management using
the network approach.

Quote:
mismatch a long way a way from the business end of the app. Persistence
libraries ready made, even average ones, can save 30% development time
(Cockburn - various times).
But application based data management and the network approach can
increase about 500%-1000% or even more the development time, and it is
even worse in the maintenance part. The final result is a huge
increase of development time.

Quote:
OO is a little more recent, but it's value is definitely in the
multi-billion dollar range.
OO is older than the relational model, and what is called OO data
management isn't anything but application based data management and
the network approach.

DBMSs replaced application based data management, and The Relational
Model replaced the network data management approach.



Regards
Alfredo


Reply With Quote
  #25  
Old   
David Penney
 
Posts: n/a

Default Re: Relational v OO dbs - 07-05-2003 , 02:02 PM



I am starting to see development going oo<->xml<->relational rather than
oo<->object relational<->relational. We have a particularly easy to use and
effective visual xml-relational mapping capability. Our job is to take care
of not only the technoogy & technique mismatch but also the design & rates
of change mismatches.

They see this as more open and easier to change.
What is your interest?
Regards,
David Penney
www.metamatrix.com

"JohnB" <jdbeaufoy (AT) hotmail (DOT) com> wrote

Quote:
These last 10 years or so has seen a rapid rise in the popularity of
OO development environments. Can we expect to see a similar trend
towards OO databases aswell, or atleast the middleground of
object-relational dbs? Surely if a database that supports all of the
existing R DB requirements that can also support references (as
something like Matisse is trying to achieve) is a good thing? If our
tools to model the GUI and middle tier all promote OO, why is there a
mismatch when we read and write to a database - it seems like a
complexity that doesn't need to be there?

Is there any hint of the big players (dear I say it eg. Microsofts) of
this world making a genuine shift into this area, or is there some
reason they are not interested? Wise people, what does the future
hold?



Reply With Quote
  #26  
Old   
Bob Badour
 
Posts: n/a

Default Re: Relational v OO dbs - 07-05-2003 , 02:24 PM



Other than "Oh boy! There seems to be a lot of hype and interest in XML
these days! I bet we can make a quick buck!", what exactly is the
justification for your product? It does not seem to provide any useful
function that isn't better handled some other way.

"David Penney" <anon (AT) noaddress (DOT) com> wrote

Quote:
I am starting to see development going oo<->xml<->relational rather than
oo<->object relational<->relational. We have a particularly easy to use
and
effective visual xml-relational mapping capability. Our job is to take
care
of not only the technoogy & technique mismatch but also the design & rates
of change mismatches.

They see this as more open and easier to change.
What is your interest?
Regards,
David Penney
www.metamatrix.com

"JohnB" <jdbeaufoy (AT) hotmail (DOT) com> wrote in message
news:9f5f6c96.0306231331.4dda9a12 (AT) posting (DOT) google.com...
These last 10 years or so has seen a rapid rise in the popularity of
OO development environments. Can we expect to see a similar trend
towards OO databases aswell, or atleast the middleground of
object-relational dbs? Surely if a database that supports all of the
existing R DB requirements that can also support references (as
something like Matisse is trying to achieve) is a good thing? If our
tools to model the GUI and middle tier all promote OO, why is there a
mismatch when we read and write to a database - it seems like a
complexity that doesn't need to be there?

Is there any hint of the big players (dear I say it eg. Microsofts) of
this world making a genuine shift into this area, or is there some
reason they are not interested? Wise people, what does the future
hold?





Reply With Quote
  #27  
Old   
Kazuhiro Nakao
 
Posts: n/a

Default Re: Relational v OO dbs - 07-13-2003 , 07:23 PM



"Abdullah Kauchali" <someone (AT) someplace (DOT) com> wrote

Quote:
.NET has indeed taken some stone-age languages like VB into the object
oriented era, but Microsoft's underlying architectural ethos still remains
one that swears its complete allegiance to the relational database
architecture. By this, I mean Microsoft advocates architecture strategies
(via their blueprints and other MSDN sources) that are significantly "anti-"
to almost all good OO practices:
[snip ...]
2. Their new libraries for Data Access (ADO.NET), although a signficant
departure from its COM-based ancestor ADO, still represents data in "SET"
format. This means, although the ADO.NET api is OO, the way one accesses
data for use in one's own application is *not* OO based - it is still based
on Tables with columns and rows. (They have introduced a concept of a Typed
Dataset, but is still that ... a data + SET). [That's a far-cry from JDBO.
In fact, there is no equivalent of JDO in .NET and it is, from what is
generally understood in Microsoft frameworks, a no-no to embark on a
JDO-similar solution. (Read Roger Session's "COM+ and the battle for the
middle-tier")]
I agree that there is an advancement from ADO to ADO.NET, and the
framework of ADO.NET is OO, but the data is just tables with columns
and rows. You need to build objects from the raw data. In this aspect,
there is no improvement.

However, we, Matisse Software, found that we could change it only with
a single method GetObject() for a DataReader object. The code looks
like:

while ( aDataReader.read() ) {
Person p = (Person) aDataReader.GetObject(0);
}

where you executed a query like:

cmd.CommandText = "SELECT REF(p) FROM Person WHERE ...;"

You're retrieving object directly from ADO.NET. The GetObject method
is the only extension, and the rest remains the same as the standard
ADO.NET.

We could do this very easily because we have this approach:
[Quote from JohnB (who started this thread)]
Quote:
... supports all of the
existing R DB requirements that can also support references (as
something like Matisse is trying to achieve)
Integration of object storage with an object-oriented environment
within the current framework is not that far.

--
Kazuhiro Nakao
Matisse Software, Inc
http://www.matisse.com/


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.