Update of /cvsroot/monetdb/MonetDB5/src/optimizer
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv27931

Modified Files:
        opt_replicator.mx 
Log Message:
Some documentation


Index: opt_replicator.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB5/src/optimizer/opt_replicator.mx,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- opt_replicator.mx   29 Feb 2008 13:57:25 -0000      1.26
+++ opt_replicator.mx   29 Feb 2008 14:54:42 -0000      1.27
@@ -16,9 +16,38 @@
 
 @f opt_replicator
 @- The replicator
-The replicator is an optimizer and runtime support
-module to re-use operation results against persistent columns.
-It is developed primarilly for the SQL front-end.
+Query optimization and processing in off-the-shelf database systems is often
+still focus on individual queries. The queries are analysed in isolation
+and ran against a kernel regardless opportunities offered by concurrent or
+previous invocations.
+
+This approach is far from optimal and two directions to improve
+are explored: materialized views and (partial) result-set reuse.
+Materialized views are derived from query logs. They represent
+common sub-queries, whose materializaion and storage improves
+subsequent processing time.
+Re-use of (partial) results is used in those cases where a
+zoomin-in or navigational application is at stake.
+
+The Recycler module extends it with a the middle out approach.
+It exploits the materialize-all-intermediate approach MonetDB
+by deciding to keep hold on them as long as deemed benificial.
+
+The approach taken is to modify the MAL program, such that
+a small group of instructions is replaced by an overloaded
+version. Instructions become subject to the Recycler if
+at least one of its arguments is BAT and all others are
+either constants or variables already known in the Recycler.
+
+Upon execution, the Recycler routines first check for
+an up to date result to be picked up at no cost.
+Otherwise. it evaluates the instruction and calls upon
+policy functions to decide if it is worthwhile to
+keep.
+
+The Recycler is developed primarilly for the SQL front-end,
+where we expect significant improvements for running the
+large SkyServer queries.
 
 The following patterns are the target:
 @verbatim
@@ -30,7 +59,7 @@
 
 @end verbatim
 
-The replicator comes with a few controlling operators
+The Recycler comes with a few controlling operators
 to experiment with its effect in concrete settings.
 @{
 @mal
@@ -40,6 +69,12 @@
 address OPTreplicator
 comment "Replicator code injection";
 
[EMAIL PROTECTED]
+The number of overloaded instructions is kept to a minimum.
+Actually, the Recycler should be a variation of the interpreter
+which inspects the variable table for alternative results.
+[hmm todo]
[EMAIL PROTECTED]
 module replicator;
 
 
@@ -57,7 +92,7 @@
 
 pattern 
replicator.select(b:bat[:any_1,:any_2],low:any_2,hgh:any_2,li:bit,hi:bit):bat[:any_1,:any_2]
 address REPselect
-comment "The overloaded select operator for replicated operations";
+cs well as well omment "The overloaded select operator for replicated 
operations";
 
 pattern replicator.uselect(b:bat[:any_1,:any_2],value:any_2):bat[:any_1,:oid ]
 address REPuselect


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins

Reply via email to