MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

3 participantes

    Reduzir Tamanho do Banco melhorar desempenho

    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 128
    Registrado : 04/12/2009

    Reduzir Tamanho do Banco melhorar desempenho Empty Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  sergiosdl 4/8/2021, 20:42

    Salve Amigos

    Access 2003

    Possuo um banco de dados de escola, onde trabalha continuamente 4 usuarios, porem quando os alunos estao estudando pode chegar ate 38 usuarios conectados.
    O banco possui um tamanho de 480 mb
    quando os alunos estao conectando no banco ele esta ficando um pouco lento.
    Pensei em fazer o seguinte para melhorar o desempenho e eventualmente melhorar a segurança tambem
    dividir o arquivo deo banco de dados no servidor em 3
    1-didatico
    2-financeiro
    3-cadastros

    entendo que desta maneira o usuario quando abrir o sistema na estacao de trabalho eventualmente so se conectara em 1 arquivo do banco ou em 2
    conforme a operacao que o usuario for fazer podera se conectar nos 3 arquivos, porem os alunos por exemplo só se conectarao em 2 arquivos.

    Gostaria de saber dos mestres se eu teria ganho nesta operação, pois ela sera bem trabalhosa e nao consegui fazer os testes para saber o resultado

    Abraços

    Mylton gosta desta mensagem

    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2053
    Registrado : 13/12/2016

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  Alexandre Fim 4/8/2021, 20:50

    Olá Sérgio,

    O sistema está dividido entre Back-End e Front-End?
    O Front-End de cada máquina está vinculado ao Back-End?

    Não seria muito viável utilizar Access onde existe a possibilidade de 38 usuarios conectados. As chances de ele se corromper são grandes.

    O Access não é multi tarefa (multi-thread), ou seja, ele responde 1 a 1 quando é feita uma requisição (Consultas, Instrução SQL e etc.) e neste intervalo, ele "congela" o processamento no banco de dados,até o retorno do resultado, diferente dos bancos de dados SQL Server, Oracle, MySQL, que são multi-thread e que respondem aos usuários simultâneamente suas requisições.

    Para minimizar o problema, seria mais viável trabalhar com objetos Não Acoplados à tabela, utilizando conexão ADO e realizando os bloqueios corretos de registro (Lock Optimistic, Lock Pessimistic e etc.) através de recordset's.

    É necessário analisar como foi desenvolvido o sistema para entender melhor tua necessidade, pois o modo Não Acoplado seria mais trabalhoso, e neste caso, utilizaria outra linguagem e outro banco de dados, como por exemplo VB.Net ou C# e banco de dados SQL Server.

    Att,

    Fim


    .................................................................................
    Reduzir Tamanho do Banco melhorar desempenho Setinf11
    Sistemas e Tecnologia Ltda
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 128
    Registrado : 04/12/2009

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  sergiosdl 7/8/2021, 14:22

    bom dia amigo, obrigado pelo retorno

    Olá Sérgio,

    O sistema está dividido entre Back-End e Front-End?
    O Front-End de cada máquina está vinculado ao Back-End?

    Sim, o sistema é divido em back e front e trabalha com tabelas vinculados.

    se eu mudar o banco de dados vou ter que fazer todo o projeto de novo? as consultas funcionarão normalmente?

    Abraços
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2053
    Registrado : 13/12/2016

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  Alexandre Fim 7/8/2021, 17:00

    Bom dia Sérgio,

    É preciso entender como está a modelagem das tabelas, seus índices e respectivas chaves primárias e etc.

    Indices e Chaves Primárias impactam diretamente no desempenho de consultas e subconsultas. Quando não há chave ou índice na tabela, atrapalha o desempenho. Quando há índices demais também atrapalha o desempanho e tem que ter um certo cuidado em criá-los.

    - Verificar o tipo e tamanho dos campos nas tabelas. É muito comum, as vezes na correria, criar campos com 255 caracteres para armazenar a sigla do Estado (UF), Sexo (1 caracter apenas), Tipo de Pessoa (Fisica ou Juridica - F ou J), ocupando espaço desnecessário.

    - Verificar se não existe redundância dos dados, ou seja, a mesma informação armazenada em mais de 1 tabela.

    - O uso excessivo de funções agregadas como DLookup, DCount, DSum, etc. pode reduzir bastante o desempenho de consultas que envolvam tabelas vinculadas.

    - Realizar rotina de Compactar/Reparar de tempos em tempos, mas quando não há usuários logados no sistema. Isso reduz o tamanho do banco de dados. O Access cresce deliberadamente mesmo que você exclua registros.

    Como vc mencionou anteriormente, voce pode separar em outros bancos de dados de acordo com sua categoria (Didático, Financeiro, Cadastro), mas é necessário criar rotinas para eles "se conversarem" quando necessário.
    Ex.: Financeiro precisa dos dados de Cadastro para emissão de boletos.

    OBS: É possivel (e necessário) utilizar outros SGDB mais seguros e confiáveis (SQL Server, MySQL, PostgreSQL e etc.), mas ai é um outro assunto que requer cuidados quando se trata de estrutura de servidores e licenças de uso.

    Espero ter ajudado.

    É isso!

    []'s

    FIM






    .................................................................................
    Reduzir Tamanho do Banco melhorar desempenho Setinf11
    Sistemas e Tecnologia Ltda
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 128
    Registrado : 04/12/2009

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  sergiosdl 9/8/2021, 12:44

    Bom dia Amigo, obrigado pelo retorno
    .
    O banco encontra-se bem enxuto, entendo que está bem organizado os indices.
    As funcoes de busca em tabela quando utilizadas usam o SPLIT para dar uma unica busca, conforme publicado pelo nosso Amigo Avelino

    Minha dúvida seria que eu fosse usar um outro banco de dados, como por exemplo o mysql, se eu teria que fazer o front and de novo? ou melhor, se funcionariam os comandos:
    -consultas: exclusão, seleção, adicionar, editar
    -As operaços de registro em formulario: Edição, adição, exclusão
    -e outros que realizo bastante pelo VBA.

    Logicamente o que gostaria que fosse, é :
    1-importo os dados do banco para dentro do mysql
    2-talvez criaria um obdc para vincular com mysql meu front
    3-vinculasse minhas tabelas no mysql
    4-tudo funcionasse sem eu precisar mexer no meu front

    Abraços
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2053
    Registrado : 13/12/2016

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  Alexandre Fim 9/8/2021, 13:36

    Bom dia,



    Minha dúvida seria que eu fosse usar um outro banco de dados, como por exemplo o mysql, se eu teria que fazer o front and de novo? ou melhor, se funcionariam os comandos:
    -consultas: exclusão, seleção, adicionar, editar
    -As operaços de registro em formulario: Edição, adição, exclusão
    -e outros que realizo bastante pelo VBA.


    Não há necessidade de refazer os front-End's.
    Voce vai apenas importar as tabelas do Access para o MySQL, e em seguida, fazer o vínculo através de um ODBC que vc precisa baixar e instalar em todas as máquinas.

    Todas as rotinas irão rodar dentro do Access, então, nada muda.

    []'s


    FIM


    .................................................................................
    Reduzir Tamanho do Banco melhorar desempenho Setinf11
    Sistemas e Tecnologia Ltda
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 128
    Registrado : 04/12/2009

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  sergiosdl 9/8/2021, 15:00

    que otimo meu amigo

    nao sabia que era tao fácil
    realmente obrigado
    ANTONILDO CORDEIRO
    ANTONILDO CORDEIRO
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 25
    Registrado : 02/04/2019

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  ANTONILDO CORDEIRO 9/8/2021, 15:20

    Bom dia!!
    Meu amigo!!
    Uma sugestao é vc atualizar o Access para versao 2016 os arquivos sao mais estaveis e caso tem falhas o Access corrige com falicidade e velocidade os arquivos corrompidos. vc vi usar agora a extensao *.accdb e o tamanho do arquivo do BANCO diminui muito.
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 128
    Registrado : 04/12/2009

    Reduzir Tamanho do Banco melhorar desempenho Empty Re: Reduzir Tamanho do Banco melhorar desempenho

    Mensagem  sergiosdl 9/8/2021, 16:41

    Amigo obrigado pelo retorno

    No passado tentei fazer esta atualização, porem tinham varios comandos que foram desenhados em cima da arquitetura 2003, logo nao funcionaram no 2016.
    Percebi então que o projeto seria muito grande para fazer esta alteração
    O sistema funciona desde 2009 e é bem completo, logo alterar este projeto despenderia muito tempo

    Abraços

      Data/hora atual: 26/1/2022, 22:32