[firebase-br] shrink database

Mário Reis mariodosreyx em gmail.com
Seg Jan 14 08:54:37 -03 2019


Prezados amigos,
Perdoem por me imiscuir na V/ conversa, mas fiz o mesmo.
No inicio ainda a medo, porque me deu bastante trabalho separa-los, criei
duas databases, separando completamente uma só com blobs de imagens e
texto(cópias de contratos), por exemplo, e os ganhos foram absolutos.
Agora faço sempre assim e recomendo.
Abraço

Com os meus melhores cumprimentos
Mário Agostinho Reis
919262146

Esta mensagem contém informação de natureza confidencial e é
exclusivamente dirigida ao(s) destinatário(s) indicado(s). Se, por engano,
receber este email agradecemos que não o copie nem o reenvie e que nos
notifique do ocorrido através do email de resposta.


Eduardo Jedliczka <edujed em gmail.com> escreveu no dia quinta, 10/01/2019
à(s) 16:31:

> Não seria muito mais simples realizar o parsing dos arquivos XML e gravar
> em tabelas do tipo pai-> [chave-> valor] ?
>
> Ainda teria o benefício de permitir o uso de índices para localizar/filtrar
> os valores.
>
> Outra forma seria implementar (embora não exista nativamente no FB) um
> DICTIONARY (ter uma tabela de palavras e substituí-las antes de gravar
> CLOB).
>
> ==========================
> Eduardo Jedliczka
> Curitiba - Pr
> ==========================
>
>
> Em sáb, 15 de dez de 2018 às 14:44, Eder <edercotta em gmail.com> escreveu:
>
> > Boa tarde Gladiston  Santana,
> >
> > Obrigado pela colaboração.
> >
> > A base de dados onde armazenamos os arquivos .XML já é separada no volume
> > principal.
> >
> > O que tem me preocupado é o crescimento desproporcional ao tamanho em
> disco
> > dos arquivos .XML.
> >
> > Pretendo fazer alguns testes alterando o tamanho da página para 8K.
> >
> > Abraços!
> >
> > Em sex, 14 de dez de 2018 às 11:28, Gladiston Santana <
> > gladiston em vidy.com.br>
> > escreveu:
> >
> > > Uma sugestão, se seus dados sistêmicos estão no mesmo database fisico
> com
> > > os blobs, e esses blobs são raramente utilizados - ou estão mais para
> > serem
> > > arquivados -, talvez você possa analisar a separação em databases
> fisicos
> > > distintos.
> > > Aqui, eu separei uma tabela de imagens do restante dos dados, ficando
> um
> > > database físico só para as imagens.
> > > Fiz isso porque as imagens não tinham tanta movimentação, tava mais
> para
> > > arquivamento mesmo, contudo exercia grande impacto no tamanho do
> > database e
> > > consequentemente no backup.
> > > Já que me faltava uma jóia do infinito para mudar a realidade, então
> fiz
> > > profunda meditação zen e conclui que seria melhor separar os databases
> > para
> > > resolver o tempo de backup, pois o tempo de backup era sofrível. Eu sou
> > > meio paranóico com isso!
> > > Depois de algum tempo, percebi que separa-los foi uma boa ideia porque
> o
> > > backup dessas imagens pode ser diaria ou semanal enquanto os dados que
> > são
> > > mais vitais são resolvidos em intervalo de horas.
> > > Mais tarde, repeti a mesma técnica e tirei dos dados vitais o que seria
> > > banco de dados de ceps e cnpj´s que também se tornaram externos.
> > > Para não ter que fazer meu programa se conectar a 3 ou 4 databases
> > > diferentes, eu criei uma procedure no banco principal que faz a
> > > chamada/consulta nos outros usando:
> > > [for] execute statement ... on external
> > > e apesar de não ser performático, pois cada chamada perde o tempo de 1s
> > > para fazer a conexão externa, mas resolve o incomodo de mudar meu
> > programa
> > > para manter conexões simultaneas a databases distintos - eu até poderia
> > ter
> > > feito isso, mas não estava disposto.
> > > Também o banco de imagens tem um tamanho de página mais adequada para o
> > > tamanho de blob, pois anteriormente minhas páginas eram de 16k, então
> > > guardar pequenas figuras que eram menores que 4k desperdiçava outros
> 12k
> > em
> > > disco.
> > > Enfim, foi muito boa a mudança e talvez você possa analisar se isso
> seria
> > > bom para você também.
> > >
> > > []´s
> > >
> > > Em qui, 13 de dez de 2018 às 13:27, Eder <edercotta em gmail.com>
> escreveu:
> > >
> > > > Obrigado pela resposta.
> > > >
> > > > No caso mencionado anteriormente a tabela é exclusiva para BLOB.
> > > >
> > > > Utilizamos o campo BLOB para armazenar arquivos .XML de NFs.  O
> > detalhe é
> > > > que a tabela possui dois campos BLOBs, XML de envio e retorno.
> > > >
> > > > Fiz alguns testes para identificar o impacto desta tabela no tamanho
> do
> > > > banco.
> > > >
> > > > O tamanho físico do banco era de 16GB.
> > > > Page Size configurado com valor 4096.
> > > >
> > > > O Database Analyst mostrou que o size da tabela é 748mb.
> > > >
> > > > Fiz BACKUP e RESTORE no banco, reduziu de 16GB para 13GB em disco. O
> > > > Database
> > > > Analyst mostrou que o size da tabela caiu para 723mb.
> > > >
> > > > Para entender o quanto essa tabela representa em disco, executei o
> > DROP,
> > > > realizei BACKUP e RESTORE no banco. O tamanho do banco reduziu de
> 13GB
> > > para
> > > > 2GB.
> > > >
> > > > Conclusão: a tabela está ocupando cerca de 11GB em disco.
> > > >
> > > > Se puder me apontar uma direção para reduzir o tamanho em disco,
> > > > agradeço muito.
> > > >
> > > > Abraços!
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > Para consultar mensagens antigas:
> > > http://www.firebase.com.br/pesquisa_lista.html
> > >
> >
> >
> > --
> >
> > *Eder Pelinçari*
> > Software engineer / Project Manager
> > "Se você esperar pelas condições perfeitas, nunca vai fazer nada."
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas:
> > http://www.firebase.com.br/pesquisa_lista.html
> >
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>



Mais detalhes sobre a lista de discussão lista