[Monetdb-developers] about MAL optimize

Stefan Manegold Stefan.Manegold at cwi.nl
Wed Aug 11 10:29:06 CEST 2010


On Wed, Aug 11, 2010 at 04:23:42PM +0800, kun ren wrote:
> I read sql_optimizer setting in monetdb5.conf ,and default setting is:
> sql_optimizer=default_pipe
> default_pipe=inline,remap,evaluate,costModel,coercions,emptySet,aliases,mitosis,mergetable,deadcode,commonTerms,joinPath,reorder,deadcode,reduce,garbageCollector,dataflow,history,multiplex
> 
> so there are many optimizer,but why when i debug MonetDB,and dump the mal of
> my  sql statement,but i can't find the optimizer mal ,and  don't enter the
> optimizer? like there are no optimizer,

if you prefix your SQL query with EXPLAIN to see the MAL plan, you get the
optimizer MAL plan, i.e., all optimizers have already been called and done
their work.

Stefan

> 
> 2010/8/11 Stefan Manegold <Stefan.Manegold at cwi.nl>
> 
> > Yes, if you write MAL "by hand" (or have some program create it) that does
> > explicitly call a MAL optimizer, that MAL optimizer is indeed used to
> > optimize the MAL code according to its very purpose.
> >
> > Stefan
> >
> > On Wed, Aug 11, 2010 at 03:49:47PM +0800, kun ren wrote:
> > > It is only used by SQL? and how to designation the optimiser?but when I
> > > write MAL,for example,
> > > i:=0;
> > > b:= "done";
> > > barrier go:= true;
> > > c:=i+1;
> > > d:="step";
> > > v:=d;
> > > io.print(v);
> > > i:=c;
> > > redo go:= i<2;
> > > exit go;
> > > io.print(b);
> > > optimizer.aliasRemoval();
> > >
> > > the last optimizer.aliasRemoval() is used for optimizing?
> > >
> > > 2010/8/11 Fabian Groffen <Fabian.Groffen at cwi.nl>
> > >
> > > >  On 11-08-2010 15:25:15 +0800, kun ren wrote:
> > > > >    Recently,I am intersting in MAL optimize,and have read the manual
> > of
> > > > the
> > > > > MAL optimize, but it is so long, Possible if we want to use mal
> > optimize
> > > > ,we
> > > > > must  degignation the optimize  consideration,  such as alias
> > removal,
> > > > > constant expression,join path optimizer;And then I dedug the
> > MonetDB,but
> > > > > default it don't use any optimize.so what do you think about the mal
> > > > > optimize?
> > > >
> > > > It is only used when you use SQL.  The sql_optimizer setting in
> > > > monetdb5.conf controls which optimisers are run, which by default are
> > > > quite a few.
> > > >
> > > >
> > > >
> > ------------------------------------------------------------------------------
> > > > This SF.net email is sponsored by
> > > >
> > > > Make an app they can't live without
> > > > Enter the BlackBerry Developer Challenge
> > > > http://p.sf.net/sfu/RIM-dev2dev
> > > > _______________________________________________
> > > > Monetdb-developers mailing list
> > > > Monetdb-developers at lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/monetdb-developers
> > > >
> >
> > >
> > ------------------------------------------------------------------------------
> > > This SF.net email is sponsored by
> > >
> > > Make an app they can't live without
> > > Enter the BlackBerry Developer Challenge
> > > http://p.sf.net/sfu/RIM-dev2dev
> >
> > > _______________________________________________
> > > Monetdb-developers mailing list
> > > Monetdb-developers at lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/monetdb-developers
> >
> >
> > --
> > | Dr. Stefan Manegold | mailto:Stefan.Manegold at cwi.nl |
> > | CWI,  P.O.Box 94079 | http://www.cwi.nl/~manegold/  |
> > | 1090 GB Amsterdam   | Tel.: +31 (20) 592-4212       |
> > | The Netherlands     | Fax : +31 (20) 592-4199       |
> >

-- 
| Dr. Stefan Manegold | mailto:Stefan.Manegold at cwi.nl |
| CWI,  P.O.Box 94079 | http://www.cwi.nl/~manegold/  |
| 1090 GB Amsterdam   | Tel.: +31 (20) 592-4212       |
| The Netherlands     | Fax : +31 (20) 592-4199       |




More information about the developers-list mailing list