Olá 1- Trazer todos os registros para o cliente é suicídio. O que você deve fazer sempre é trazer apenas o necessário. Utilize telas de pesquisa e filtro para isso.
2- Independente do componente que você usar, você tem de pensar em como usar ele. Aí está a grande diferença. Uma aplicação desenvolvida com IBO - componente nativo de acesso ao FB - pode ser mais lenta que uma usando DBXpress, se mal programada. O DataSnap (ClientDataSet + DataSetProvider) permitem uma maior flexibilidade pra você, no caso de pensar em mudar de banco futuramente. E para por ae (no quesito "acesso a banco"). Como você irá utilizá-lo é que fará a diferença. Olha, o PacketRecord e FetchOnDemand são mais ou menos o seguinte: O Provider executa a pesquisa e manda para o CDS a quantidade de registros informados. Você pode configurar para trazer sozinho, ou a cada vez que você mandar. O problema está que, caso você utilize servidor de aplicação, servidores stateless não estariam aptos a fazer esse controle para você. Existe uma "gambiarra" para isso no Help do Delphi... Mas ainda assim, eu não uso. Ainda não vi necessidade. Talvez num futuro próximo quem sabe. Eu só não sei como o Provider faz esse pré-filtro de quantidade de registros. Alguém poderia nos explicar? Partido da idéia de que ele faz um select, ele poderia fazer algo assim: "Select First 10 skip 0 * from tabela" Mas como ele, o provider, saberia como fazer o mesmo select no Oracle, no SQLServer ou ainda, no Piradox??? Ou pior ainda, falei besteira? Francisco Thiago de Almeida Enter&Plug Informática Divisão: Desenvolvimento e Banco de dados MSN: [EMAIL PROTECTED] Skype: enterplug_thiago ----- Original Message ----- From: "dprogrammer" <[EMAIL PROTECTED]> To: <delphi-br@yahoogrupos.com.br> Sent: Saturday, May 28, 2005 3:22 PM Subject: [delphi-br] ClientDataSet, algum problema em adotá-lo ? HI, estou nos estudos do ClientDataSet, sempre trabalhei com BDE e os TTables da vida. só que agora pretendo mudar comecei a mudar um programa que tenho para utilizar DBExpress e ClientDataSet estou com algumas dúvidas, não gostaria de ter que mudar tudo novamente depois 1 - Sei que o ClientDataSet trás os dados para a máquina cliente. O que acontece no caso de uma tabela ter por exemplo 2.000.000 de registros, a perfomance vai cair ? Terei que contornar essa situação só trazendo os dados que interessam, tipo de determinada faixa de data ? 2 - Qual a forma ideal, se é que existe, de se desenvolver um sistema Cliente/Servidor que atenda bancos robustos com grandes volumes de dados e que também atenda o programa que roda em uma máquina apenas ? (tipo a forma de se trabalhar, se existe outra forma além de usar ClientdataSet) resumindo, como está apto a trabalhar de forma eficiente no modelo Cliente/Servidor. tava vendo aqui na net sobre as propriedades PacketRecords e FetchOnDemand. isso tem a ver como se trabalhar com grandes volumes de dados ? essa é uma das materia que tou lendo http://www.distribucon.com/papers/midasintro/dl210.htm foi aonde econtrei o lande de trabalhar com milhões de registros, fala do remoteserver, etc. toda dica sobre esse assunto é bem vinda. tou tentando entender essa materia, mas o meu ingreis tecnico é limitado, hehehe e também de sites aonde eu possa aprofundar meus estudos desde já agradeço Intel + Paulo Alexsandro - Maceió/Alagoas Programador - Delphi/NS Basic http://dprogrammer.cjb.net - Exemplos, Dicas, Etc. Particpante da Casa da Mãe Joana http://www.cdmj.com.br Fórum da Casa da mãe Joana, onde você pode tudo... Se limpar os pés antes de entrar [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos ____________________________________________________ Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis! http://mail.yahoo.com.br -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html