Chiappa, mais uma vez obrigado pelas suas respostas detalhadas. 

Eu havia visto no google o EasySoft e o DataDirect, mas você já me deu mais 
duas alternativas para pesquisar.

Tentei utilizar as recomendações da Oracle para otimizar o acesso (modificar o 
fetch buffer size, ativar cache, desativar resultsets, etc) mas nenhuma mudança 
no desempenho foi notada.

Analisando as ações do usuário no aplicativo, vi que a demora é proveniente de 
um fetch gigantesco de quase 50 anos de dados, em que o mesmo realizava uma 
"poda" na hora de gerar um relatório. A poda que ele estava executando era 
apenas na geração dos relatório, o que fazia o aplicativo sempre fazer o fetch 
inteiro da massa de dados.
Encontrei dentro do próprio aplicativo uma forma de fazer essa poda na entrada 
dos dados, reduzindo o tamanho do fetch, e melhorando o desempenho em uns 95%.

Nesta situação acredito que nenhuma novo driver ODBC ajudaria. Era o velho 
problema entre a cadeira e o computador.

--- Em oracle_br@yahoogrupos.com.br, "J. Laurindo Chiappa" <jlchiappa@...> 
escreveu
>
>   Alan, veja lá : alternativas até Existem (como os drivers da EasySoft, que 
> inclusive contam com bastante material de tuning, vide 
> http://www.easysoft.com/products/data_access/odbc_oracle_driver/performance_tuning_guide.html),
>  Simba em http://www.simba.com/connectors (na verdade data adaptors que entre 
> outras coisas incluem acesso via odbc), OpenLink em 
> http://www.openlinksw.com/ , dataDirect em 
> http://www.datadirect.com/index.html , mas NENHUM desses é freeware, embora 
> TODOS tenham afaik algum tipo de demo/trial... E inclusive eu pessoalmente 
> DESCONHEÇO, aliás, alternativa freeware de drivers ODBC que esteja madura e 
> production-ready - vamos ver se quem usa mais esse negócio tem info mais 
> recente, mas a princípio eu ACHO que vai ser difícil alternativas freeware 
> confiáveis...
>   
>   Porém, pelo que vc descreve, pode ser na verdade NÃO um problema genérico 
> do driver ODBC Oracle em si, mas sim :
> 
>    a) má-programação : por exemplo, no manual "Oracle® Database 
> Administrator's Reference 11g Release 2 (11.2)" o apêndice E - Using Oracle 
> ODBC Drive  dá TODA a lista de best practices e Recomendações a seguir no uso 
> do driver ODBC Oracle, principalmente sobre resultsets (que influenciam 
> DIRETAMENTE a performance em queries) e listando questões sobre itens 
> internos como os DATATYPES que o driver suporta .... ORA, se a aplicação Não 
> Respeita as práticas recomendadas Tranquilamente pode ser que esteja, 
> digamos, ocorrendo conversões implícitas ou havendo não-uso de bindings, , o 
> que é um gasto Significativo de CPU e ** PODE ** levar ao não-uso de índices 
> : aí não tem jeito, é performance caída POR DESIGN .... No máximo, se a 
> aplicação foi originalmente feita para, digamos, SQL SERVER, *** TALVEZ *** o 
> driver ODBC para Oracle da m$soft forneça datatypes/métodos de acesso/etc 
> mais próximos do que foi programado na Aplicação, mas isso é DIFÍCIL : tenta 
> aí mas eu duvido que seja o caso...
>     E é claro, vc também Pode atacar a questão do outro lado, ie : se por 
> qquer prática esquisita/fora das recomendações da Oracle o SQL enviado para o 
> banco seja de má qualidade, inviabilizando índice ou forçando parse constante 
> ou seja o que for, Também há a possibilidade de vc o influenciar via HINTs, 
> SQL profiles, índices de função, views, etc : lógico que tuning de SQL é algo 
> que DEPENDE FORTEMENTE do Fornecedor, mas opções internas de database do tipo 
> existem...
>     
>   ou
> 
>    b) configuração do ODBC driver : no mesmo manual acima citado e nas notas 
> linkadas no documento "Master Note For The Oracle ODBC Driver" (Doc ID 
> 741033.1) no Suporte Oracle, a Oracle dá umas recomendações de config : tente 
> as implementar...
>    
>    ou 
>    
>    c) bug no driver e/ou no Oracle Client : como todo software a camada de 
> acesso ao banco PODE ter issues, então eu Recomendaria para vc checar e obter 
> com o Suporte Oracle a versão MAIS ATUAL do Oracle Client que seja compatível 
> com o seu database Oracle (vc para variar Não Diz a versão dele, nem o SO, 
> nada, mas seja qual for) , ** E ** também os patches mais recentes do Oracle 
> Client... O pacote do Client já traz o driver Oracle ODBC além do software 
> Oracle Client em si...
>    
>   []s
>   
>     Chiappa
> 
> --- Em oracle_br@yahoogrupos.com.br, "alanrolemberg" <alanrolemberg@> escreveu
> >
> > Renato,
> > 
> > Eu também consigo através de aplicativos voltados exclusivamente ao 
> > Database Oracle. Neste meu caso específico, o aplicativo se conecta apenas 
> > por Drivers ODBC (pois mais de um banco de dados é suportado pelo 
> > aplicativo).
> > 
> > O Driver ODBC que vem no Oracle Client fica extremamente lento na hora de 
> > lidar com quantidades grandes de dados, e estou procurando alguma 
> > alternativa a ele.
> > 
> > --- Em oracle_br@yahoogrupos.com.br, "Renato F. O. Silva" <fos.renato@> 
> > escreveu
> > >
> > > Alan, no meu caso conecto terminais Windows XP num servidor 11gR2 em 
> > > Oracle Linux através do Oracle Instant Client e não ocorre essa lentidão 
> > > relatada por ti.
> > >
> >
>


Responder a