A importância de um DBA prestando serviços de suporte no Protheus
Muitas empresas por questão de economia ou falta de conhecimento dos gestores / diretoria, acreditam que basta adquirir o ERP que todos os seus problemas serão resolvidos.
Um ERP não tem utilidade alguma sem o banco de dados. O mesmo pode se dizer que um banco de dados sozinho sem uma ferramenta que processe as informações que esta armazenada nele, também não tem muita utilidade.
O banco até funciona sem o ERP mas o ERP sem o banco não funciona.
O Protheus assim como outros ERP processam / inclui / exclui muitos dados e isso acaba por deixar o banco de dados lento, funcionando incorretamente e o mais comum que vejo, é muita volta para extrair um dado muito simples. Devido a sua arquitetura o Protheus não consegue utilizar plenamente todos os recursos do banco de dados. Por mais que o DBA tente, sempre vai ficar alguma coisa que o Protheus não consegue fazer mas, o Dba consegue chegar muito próximo disso.
A maioria das consultorias estão preocupadas em apontar as OS dos seus consultores, custe o que custar. Em uma atualização de release ou virada de versão, pouca análise no banco de dados é feita.
Exemplo, muitas vezes o Protheus após uma atualização de release ou troca de versão, o Protheus como qualquer outro ERP adiciona colunas e insere muitos dados em tabelas de grande volume e consulta de dados. Mas... sera que o banco aguenta ?.
Para ilustrar melhor o que quero dizer, vou explicar melhor como o Protheus trabalha com o banco de dados.
Um ERP não tem utilidade alguma sem o banco de dados. O mesmo pode se dizer que um banco de dados sozinho sem uma ferramenta que processe as informações que esta armazenada nele, também não tem muita utilidade.
O banco até funciona sem o ERP mas o ERP sem o banco não funciona.
O Protheus assim como outros ERP processam / inclui / exclui muitos dados e isso acaba por deixar o banco de dados lento, funcionando incorretamente e o mais comum que vejo, é muita volta para extrair um dado muito simples. Devido a sua arquitetura o Protheus não consegue utilizar plenamente todos os recursos do banco de dados. Por mais que o DBA tente, sempre vai ficar alguma coisa que o Protheus não consegue fazer mas, o Dba consegue chegar muito próximo disso.
A maioria das consultorias estão preocupadas em apontar as OS dos seus consultores, custe o que custar. Em uma atualização de release ou virada de versão, pouca análise no banco de dados é feita.
Exemplo, muitas vezes o Protheus após uma atualização de release ou troca de versão, o Protheus como qualquer outro ERP adiciona colunas e insere muitos dados em tabelas de grande volume e consulta de dados. Mas... sera que o banco aguenta ?.
Para ilustrar melhor o que quero dizer, vou explicar melhor como o Protheus trabalha com o banco de dados.
Top Connect
O top connect tem a finalidade de fazer a ligação entre o Protheus e o banco de dados. Ele serve como interpretador de comandos SQL com diversos bancos de dados.
Um comando executado no ORACLE deveria em tese funcionar em um SQL, sem a necessidade de alterar a syntax do comando SQL.
Na prática isso não se sustenta muito mas se for utilizar o Protheus puro sem muita customização pesada, ele funciona perfeitamente.
CHAR X VARCHAR2
Por algum motivo que eu sinceramente desconheço, o Protheus trabalha utilizando o valor total da definição de uma coluna. Exemplo :
Se eu tenho um cadastro de clientes onde existem duas colunas, NOME CHAR(50), ENDERECO CHAR(30), o campo por ser CHAR, utilizando ou não os 50 caracteres, para o banco de dados o total é de 50. Então se um nome possui somente 1 caractere para o banco é 50. Imagine então se em uma atualização do Protheus, um desses compatibilizadores criar 10 novas colunas com o campo CHAR ?.
Agora imagine se o espaço livre em disco do banco for muito pequeno ?. Provavelmente a operação não sera concluída e o seu ERP juntamente do banco de dados irão parar.
Mas... tem alguma forma de eu transformar um CHAR em VARCHAR2 para economizar espaço no meu banco de dados ?.
A resposta para isso é NÃO !!!!.
O Protheus trabalha com o ADVPL que é um clipper melhorado.
As buscas de um dado no Protheus é feita por DBSEEK. Não tem um WHERE no código. "em alguns tem", mas o Protheus foi construido para trabalhar de uma forma que os campos são CONCATENADOS e ai é que entra o Top connect. O Top connect ira interpretar este DBSEEK em um WHERE na linguagem SQL.
Exemplificando...
SA1->(dbSetOrder(5)) equivale por exemplo á A1_FILIAL + A1_CODIGO + A1_LOJA.
Pode ser que o código da loja possua 1 aé 6 caracteres. Para o Protheus não se perder, ele deixa o A1_CODIGO sempre com 6 digitos. Mesmo deixando a coluna como VARCHAR2, o Protheus iria deixar espaços em branco até completar 6 digitos.
Mas... aonde entra o DBA ?
Na análise, no levantamento de requisitos, na verificação de índices, na desfragmentação das tabelas, na consulta mais otimizada de um select, etc.
Inserir registros loucamente em um banco de dados é rápido e simples, o problema é extrair estas informações de lá.
O DBA, deve ser um profissional capacitado para participar dessas alterações de versões para que não haja nenhum tipo de problema.
Consultar um DBA é um dever da consultoria contratada e uma forma inteligente do cliente se precaver de possíveis consultorias oportunistas.
Algumas respostas que muitos não sabem.
Sera que meu BACKUP esta funcionando ?.
Se eu atualizar o Protheus, quanto isso vai me custar de armazenamento ?
Porque aquele relatório demora tanto ?.
Um DBA decente com pouco conhecimento, tem a obrigação de dar o resultado destas perguntas. Mas não se engane. Não existe uma fórmula mágica que o DBA implanta na empresa e tudo vai sair funcionando as mil maravilhas. Quem dizer isso não é um bom profissional e esta te enganando.
Por isso pense bem antes de fazer certas economias. Consulte sempre um DBA.
O DBA, deve ser um profissional capacitado para participar dessas alterações de versões para que não haja nenhum tipo de problema.
Consultar um DBA é um dever da consultoria contratada e uma forma inteligente do cliente se precaver de possíveis consultorias oportunistas.
Algumas respostas que muitos não sabem.
Sera que meu BACKUP esta funcionando ?.
Se eu atualizar o Protheus, quanto isso vai me custar de armazenamento ?
Porque aquele relatório demora tanto ?.
Um DBA decente com pouco conhecimento, tem a obrigação de dar o resultado destas perguntas. Mas não se engane. Não existe uma fórmula mágica que o DBA implanta na empresa e tudo vai sair funcionando as mil maravilhas. Quem dizer isso não é um bom profissional e esta te enganando.
Por isso pense bem antes de fazer certas economias. Consulte sempre um DBA.
Nenhum comentário:
Postar um comentário