[racket] db independence [was: something else]
On Mon, Aug 22, 2011 at 8:57 PM, keydana at gmx.de <keydana at gmx.de> wrote:
> , I start to think I was not too far off perhaps? Because ORMs, and relational-algebra-to-SQL compilers (one thing I find fascinating personally, but ...) would be fine examples of software that'd run into the kind of problems I was talking about.
> One popular (in every respect) example in the Java world would be Hibernate, as not only does its code generation not take into account the specific characteristic of the underlying rdbms, but additionally, by its convenience of use, it creates the illusion, in a way, that treating the DB as a "black box" will bring no disadvantage (or even, is a good thing).
A lost of applications don't push the hardware. For these applications
fairly big abstractions are useful. This includes most of the projects
I've worked on.
A layered approach is probably the best one. At the bottom would be a
common low-level DB interface, ala, JDBC or Ryan's db.plt. A
relational algebra to SQL compiler is also a useful building block
sitting on top of this. One can layer an ORM on top of these and then
drop down to the lower levels as needed.
Cheers,
N.