Hi,
I posted this earlier to general but got zero response. So, I'm
directing it to a more specific group.
I'm wondering about alternative interfaces to a PostgreSQL data base
backend. Interfaces other than the SQL loanguage. I know one can map
many things to SQL, but let me think outside the box for just a
moment:
- Sending a parse tree in XML for processing by the optimizer. This circumvents the SQL language and avoids the kinds
of syntactic ideosyncrasies of SQL (e.g., where you put commas.) This is fairly trivial, but of course the question
is,would it be worth it?
- Sending an execution plan in XML directly to the executor. This now circumvents the SQL parser and optimizer. I
knowthis is in a way against the relational doxology and I don't take that light-heartedly. However, isn't it true
thatmost optimizers cannot deal very well with more than 6 joins? I may be wrong, but I find myself spending quite
abit of time fighting with the Oracle or PostgreSQL optimizer to convince it to choose the plan that I want. There
isso much magic to it with hints and the way you write SQL (where in relational theory the expressions are
equivalent,they make huge difference in what plan is being generated.) So, it appears to me almost easier to just
senda plan directly and have the system execute that plan.
- These direct interfaces could be a nice way to experiment with new strategies without having to implement it on all
three layers (SQL language, optimizer, and executor.)
You noticed I sneaked in XML as the interface, and that would be
neat because with XSLT it's so easy to manipulate. But I'm also
thinking about a Prolog binding or constraint logic programming
binding, that might be better optimizeable if it goes through a
more direct path than SQL.
I'd appreciate comments on this, even if you think it is a
worthless idea (of course would be grateful about hearing why.)
thanks,
-Gunther
--
Gunther Schadow, M.D., Ph.D. gschadow@regenstrief.org
Medical Information Scientist Regenstrief Institute for Health Care
Adjunct Assistant Professor Indiana University School of Medicine
tel:1(317)630-7960 http://aurora.regenstrief.org
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?
http://archives.postgresql.org