Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread kun ren
what I think is right? 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.as a who

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread kun ren
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 Bes

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread Stefan Manegold
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 combinin

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread kun ren
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

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread Stefan Manegold
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,

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread kun ren
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 ar

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread Stefan Manegold
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 t

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread kun ren
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?

Re: [Monetdb-developers] about MAL optimize

2010-08-11 Thread Fabian Groffen
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,jo