[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Picking the Tools -- Marrying processing models to data model s
On Tue, 22 May 2001, Uche Ogbuji wrote: > Have you considered that it might be DBMSes taking a backward step? That > the effort to add OO as a buzzword is lean on technical merits? > > I've spent some time with object-relational features in DB2, Oracle and > Postgres, and I've perused as much of SQL-99 as I could without succumbing > to the resulting headache. The object features do add some more > expressivity, but not enough, IMO, to justify the set-back in performance > and model transparency. There doesn't have to be a setback in performance, it depends on what you're doing, as in most things. You still use joins in an ORDBMS (object-relational, like Postgres). The main additions that ORDBMSes have over RDBMSes are: 1) You can create compound types. Eg, define a "coordinate" as a triple of integers, so you can refer to fields of coordinate type rather than having to have three fields of integer type called "x,y,z". Then you can define methods on them for linear distance between two of them, etc. This doesn't affect the underlying database at all, really; it just allows you to put your vector library in the database engine and refer to it in select statements and the like, and share it between the different client implementations. 2) Table inheritance. You have a People type, then Student and Staff types that inherit from that. Create actual tables of Student and Staff records, but not of People (it's abstract). The benefits are twofold: Student and Staff automatically get the common fields from a single declared place, so you can add new fields to both by just adding to People, and you can write "SELECT * FROM People" as shorthand for "SELECT * FROM Student UNION SELECT * from Staff". > Unfortunately, in my experience, as OO boomed, much of this orthodoxy was > tossed out. Not I routinely see programmer teams do their functional > analysis and then throw the result over the wall for DBAs to sort out. > "If you have to normalize this and that, don't worry, just write a few > stored procs to set it all up the way we need it". Where I work, I design relational database schemas and code side by side, but paying attention to the fact that this is an interface; I try to minimise the assumptions each side makes about the other... ABS -- Alaric B. Snell http://www.alaric-snell.com/ http://RFC.net/ http://www.warhead.org.uk/ Any sufficiently advanced technology can be emulated in software
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|