[Monetdb-developers] about MAL optimize

kun ren renkun.nwpu at gmail.com
Wed Aug 11 11:21:06 CEST 2010


Thanks very much, you means the ideas and intension of MAL optimizers
contain three parts: 1. programming language/compiler optimization 2.
databose query optimization 3. some optimization only for column-oriented
database but not for row-oriented database,such as
mitosis,mergtable,dataflow etc
Best regards!

2010/8/11 Stefan Manegold <Stefan.Manegold at cwi.nl>

> The ideas / intension of some MAL optimizers, such as alias removal, dead
> code elimination, (to some extend) join ordering, etc.  are generic and
> traditional, both in database query optimization and progarmming language /
> compiler optimization.  The genral optimizer design and architecture
> combining (to some extend) both database query optimization and progarmming
> language / compiler optimization, as well as some of the optimizers (e.g.,
> mitosis, mergtable, dataflow, etc.), and obviously the very implementation
> of all MAL optimizers, is very unique to MonetDB5/SQL and MAL.
>
> Stefan
>
> On Wed, Aug 11, 2010 at 04:38:01PM +0800, kun ren wrote:
> > Thanks,professor Stefan Manegold,when I use explain,I get the optimizer
> MAL
> > plan.
> >  I have another question, so we know that many classic optimizer for
> > row-oriented database,and can I say the MAL optimizer is unique for
> > column-oriented database such as MonetDB? or some of MAL optimizer is
> unique
> > for column-oriented?
> > Best regards!
> >
> > 2010/8/11 Stefan Manegold <Stefan.Manegold at cwi.nl>
> >
> > > 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       |
> > >
>
> --
>  | 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       |
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.monetdb.org/pipermail/developers-list/attachments/20100811/008ee90d/attachment.html>


More information about the developers-list mailing list