MDX - COMO USAR
Moderador: Moderadores
- rubens
- Colaborador

- Mensagens: 1520
- Registrado em: 16 Ago 2003 09:05
- Localização: Nova Xavantina - MT
Na minha instalação do clipper não encontrei o arquivo dbfmdx.obj para linkar junto com o programa entao to usando a lib dbfmdx.lib... Quanto a questao de criar os indices.. é porque quando forem usados com o MDX nao atualizarao os ntx... entao quando for atualizar o retaguarda que é em NTX vou precisar recriar ou reindexar os ntx...
"Eu e minha casa servimos ao Senhor e você
"
Então aqui vai um!mas não vejo nenhum comentario a respeito de velocidades
Mandei indexar um DBF de 734.300 registros por uma chave de tamanho 67 e o resultado foi o seguinte:
NTX = 140 segundos
CDX = 98 segundos
Código: Selecionar todos
use corca new excl
?time()
index on descend(anome+bplac+strzero(corca,5,0)+dtos(cdata)) to corca
?time()
use
request dbfcdx
rddsetdefault("dbfcdx")
use corca new excl
?time()
index on descend(anome+bplac+strzero(corca,5,0)+dtos(cdata)) tag corca to corca
?time()Quanto a velocidade, é só rodar o demo da SIX. Ele dá uma boa idéia da diferença.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Então vamos lá. Mandei criar o NTX, CDX e MDX, agora com um arquivo um pouco maior (1.228.019 registros), mas com a mesma estrutura do anterior, e deu o seguinte:
a) O tal MDX, além de demorar mais que o NTX, gera um arquivo índice quase 3 vezes maior! Em relação ao CDX, então, dá 20 vezes!! Será que fiz algo errado?
b) a relação NTX / CDX piorou. O tamanho do arquivo, então, interfere na performance da RDD??
Código: Selecionar todos
RDD Segundos Arquivo (em bytes)
NTX 267 67.171.328
CDX 219 9.027.584
MDX 281 185.182.208b) a relação NTX / CDX piorou. O tamanho do arquivo, então, interfere na performance da RDD??
Código: Selecionar todos
use corca new excl
?time()
index on descend(anome+bplac+strzero(corca,5,0)+dtos(cdata)) to corca
?time()
use
request dbfcdx
rddsetdefault("dbfcdx")
use corca new excl
?time()
index on descend(anome+bplac+strzero(corca,5,0)+dtos(cdata)) tag corca to corca
?time()
use
request dbfmdx
rddsetdefault("dbfmdx")
use corca new excl
?time()
index on descend(anome+bplac+strzero(corca,5,0)+dtos(cdata)) tag corca to corca
?time()
quitSem dúvida. Uma vez que o CDX é compactado, o acesso aos dados é mais rápido, apesar do overhead causado pela descompactação.b) a relação NTX / CDX piorou. O tamanho do arquivo, então, interfere na performance da RDD??
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Ah, sim. Agora entendi. Mas acho normal que isso aconteça. Não existe algoritmo perfeito. E a partir de certo volume, o CDX pode enfrentar alguma dificuldade pra manter o "ritmo". Ele perde força, mas ainda assim, é e continuará sendo mais rápido.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- clodoaldomonteiro
- Usuário Nível 4

- Mensagens: 821
- Registrado em: 30 Dez 2006 13:17
- Localização: Teresina-PI
- Contato:
Olá amigos!
Compilei o programa citado acima com o clipper 5.2 e o blinker7 usando um arquivo com 70000 registros e deu o seguinte resultado:
RDD Segundos Tamanho
------------------------------------
NTX 5 12.295.168
MDX 23 62.621.696
NSX 2 437.248
... não consegui colocar o DBFCDX no teste, dava um erro na linha que abre o arquivo.
Seria certo dizer que o NSX é muito melhor que os outros, pois ele é 28 vezes menor que o NTX e 143 vezes menor que o MDX?
E se quiser usar DBF mais NTX no delphi é só usar o componente halcyom para abrir as tabelas.
Compilei o programa citado acima com o clipper 5.2 e o blinker7 usando um arquivo com 70000 registros e deu o seguinte resultado:
RDD Segundos Tamanho
------------------------------------
NTX 5 12.295.168
MDX 23 62.621.696
NSX 2 437.248
... não consegui colocar o DBFCDX no teste, dava um erro na linha que abre o arquivo.
Seria certo dizer que o NSX é muito melhor que os outros, pois ele é 28 vezes menor que o NTX e 143 vezes menor que o MDX?
E se quiser usar DBF mais NTX no delphi é só usar o componente halcyom para abrir as tabelas.
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Está certo isso? Pela relação tempo/tamanho, NTX e NSX estão pau a pau, com uma ligeira vantagem pro NTX. Estranho. O NSX deveria ser o diabo com diarréia.RDD Segundos Tamanho
------------------------------------
NTX 5 12.295.168
MDX 23 62.621.696
NSX 2 437.248
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- clodoaldomonteiro
- Usuário Nível 4

- Mensagens: 821
- Registrado em: 30 Dez 2006 13:17
- Localização: Teresina-PI
- Contato:
Vou explicar melhor
RDD Segundos Tamanho
------------------------------------
NTX ___5 ____12.295.168
MDX___23____ 62.621.696
NSX___2 ____ 437.248
O NSX é o mais rápido com 2 segundos e em segundo ficou o NTX com 5 segundos.
RDD Segundos Tamanho
------------------------------------
NTX ___5 ____12.295.168
MDX___23____ 62.621.696
NSX___2 ____ 437.248
O NSX é o mais rápido com 2 segundos e em segundo ficou o NTX com 5 segundos.
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br

