<P>Nilson,</P>
<P>Existe a possibilidade de implementar estas melhorias que resultou em performance no próprio Class::DBI ? Pois assim, o impacto positivo seria enorme.</P>
<P>Abraços,</P>
<P>Solli M. Honório</P>
<DIV>
<TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#f0f0f0 border=0>
<TBODY>
<TR>
<TD width=70 bgColor=#bde9fd><FONT face="Verdana,Arial,'Trebuchet MS'" size=2><B>De:</B></FONT></TD>
<TD><FONT face="Verdana,Arial,'Trebuchet MS'" size=2>cascavel-pm-bounces+shonorio=terra.com.br@pm.org</FONT></TD></TR></TBODY></TABLE></DIV>
<DIV>
<TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#f0f0f0 border=0>
<TBODY>
<TR>
<TD width=70 bgColor=#bde9fd><FONT face="Verdana,Arial,'Trebuchet MS'" size=2><B>Para:</B></FONT></TD>
<TD><FONT face="Verdana,Arial,'Trebuchet MS'" size=2>"Cascavel Perl Mongers" cascavel-pm@pm.org</FONT></TD></TR></TBODY></TABLE></DIV>
<DIV>
<TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#f0f0f0 border=0>
<TBODY>
<TR>
<TD width=70 bgColor=#bde9fd><FONT face="Verdana,Arial,'Trebuchet MS'" size=2><B>Cópia:</B></FONT></TD>
<TD><FONT face="Verdana,Arial,'Trebuchet MS'" size=2></FONT></TD></TR></TBODY></TABLE></DIV>
<DIV>
<TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#f0f0f0 border=0>
<TBODY>
<TR>
<TD width=70 bgColor=#bde9fd><FONT face="Verdana,Arial,'Trebuchet MS'" size=2><B>Data:</B></FONT></TD>
<TD><FONT face="Verdana,Arial,'Trebuchet MS'" size=2>Tue, 31 Jan 2006 13:39:08 +0000</FONT></TD></TR></TBODY></TABLE></DIV>
<DIV>
<TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#f0f0f0 border=0>
<TBODY>
<TR>
<TD width=70 bgColor=#bde9fd><FONT face="Verdana,Arial,'Trebuchet MS'" size=2><B>Assunto:</B></FONT></TD>
<TD><FONT face="Verdana,Arial,'Trebuchet MS'" size=2>[Cascavel-pm] Prévia de novo módulo</FONT></TD></TR></TBODY></TABLE></DIV>
<DIV>&gt; Pessoal,</DIV>
<DIV>&gt; </DIV>
<DIV>&gt; Sei que tem que muita gente que evita mapeadores objeto-relacional</DIV>
<DIV>&gt; (como o Class::DBI) por questões de performance. Porém, eu acho a</DIV>
<DIV>&gt; idéia muito boa pra ser estragada simplesmente por causa disso e</DIV>
<DIV>&gt; resolvi agir.</DIV>
<DIV>&gt; </DIV>
<DIV>&gt; Não tenho código com qualidade pra CPAN ainda, mas estou com</DIV>
<DIV>&gt; resultados bastante promissores. Abaixo vai o resultado de um</DIV>
<DIV>&gt; benchmark que acabei de rodar comparando o Class::DBI (CDBI),</DIV>
<DIV>&gt; Rose::DB::Object (RDB) e o meu novo módulo (ObjRelMap), só pra vocês</DIV>
<DIV>&gt; sentirem um gostinho do que possivelmente vem por aí. ;-)</DIV>
<DIV>&gt; </DIV>
<DIV>&gt; Rate CDBI RDB ObjRelMap</DIV>
<DIV>&gt; CDBI 21.0/s -- -29% -90%</DIV>
<DIV>&gt; RDB 29.6/s 41% -- -86%</DIV>
<DIV>&gt; ObjRelMap 206/s 884% 596% --</DIV>
<DIV>&gt; </DIV>
<DIV>&gt; Um "drawback" é que atualmente ele só funciona pra MySQL (ou algum</DIV>
<DIV>&gt; outro banco de dados que aceite a sintaxe de MySQL), mas isso é</DIV>
<DIV>&gt; "consertável". Ele possui os recursos mais importantes do Class::DBI</DIV>
<DIV>&gt; (segundo o meu julgamento) e ainda faz auto-joins (coisa que você só</DIV>
<DIV>&gt; consegue com o Class::DBI::Sweet). Atualmente, existem algumas</DIV>
<DIV>&gt; limitações (os auto-joins possivelmente não se comportam muito bem com</DIV>
<DIV>&gt; tabelas com mais de uma chave primária) mas caso exista demanda isso</DIV>
<DIV>&gt; também é "consertável".</DIV>
<DIV>&gt; </DIV>
<DIV>&gt; Bom, é isso. Espero em breve poder soltar alguma coisa na CPAN. ;-)</DIV>
<DIV>&gt; </DIV>
<DIV>&gt; -Nilson Santos F. Jr.</DIV>
<DIV>&gt; </DIV>
<DIV>&gt; -Nilson Santos F. Jr.</DIV>
<DIV>&gt; _______________________________________________</DIV>
<DIV>&gt; Cascavel-pm mailing list</DIV>
<DIV>&gt; Cascavel-pm@pm.org</DIV>
<DIV>&gt; http://mail.pm.org/mailman/listinfo/cascavel-pm</DIV>