[firebase-br] shrink database

Carlos H. Cantu listas em warmboot.com.br
Qui Dez 13 10:45:56 -03 2018


Em resumo: transações presas por muito tempo impedem a coleta de lixo,
portanto, o lixo vai acumulando e o espaço ocupado por ele só será
reaproveitado após a coleta de lixo ser executada com sucesso.

Blobs podem fragmentar os dados nas páginas do banco. Se esse é o
caso, o recomendado é criar uma tabela só para armazenar os blobs, e
fazer um link de 1 para 1 com a outra tabela relacionada.

PS: Transações ReadCommited + ReadOnly não impedem a coleta de lixo.

PS/2: Por questões de segurança, a lista não permite anexos.


[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br

E> Bom dia a todos,


E> Carlos H. Cantu, poderia citar um exemplo de mau uso do controle
E> transacional que poderia causar o aumento demasiado de tamanho do banco de dados?


E> Gostaria de entender melhor como otimizar o uso de espaço para
E> tabelas com campo BLOB. Não encontrei tópicos falando especificamente do assunto.


E> Tenho casos em que o Database Analyst apontou que o RealFill da
E> tabela está com valor 4. Se aumentar o tamanho da página consigo
E> reduzir o espaço alocado em disco para um banco de dados já populado?


E> Em anexo o resultado da ferramenta Database Analyst.


E> Abraços!




E> Em sáb, 8 de dez de 2018 às 11:00, Carlos H. Cantu
E> <listas em warmboot.com.br> escreveu:

E> O fato do banco não "enxugar" não é um problema, e sim um benefício. É
E>  sempre mais rápido reaproveitar um espaço previamente alocado do que
E>  solicitar ao SO pra alocar mais espaço no disco.

E>  Se o seu banco está aumentando de tamanho demasiadamente, sugiro que
E>  reveja seu controle transacional, pois possivelmente a coleta de lixo
E>  não está conseguindo fazer seu papel satisfatoriamente, impedindo que
E>  o espaço ocupado pelo "lixo" seja reaproveitado como deveria.

E>  []s
E>  Carlos H. Cantu
E>  eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
E> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br

 GB>> Também gostaria que existisse algo nesse sentido, pois o banco nunca reduz
 GB>> o tamanho, apenas aumenta e vai ficando "inchado". Aqui na empresa,
 GB>> acabamos tendo que agendar um procedimento de backup/restore para os
 GB>> clientes maiores, executado no início do dia no servidor a cada X dias
 GB>> (conforme a quantidade de movimentações).

 GB>> Seria interessante não ter que recriar todo o banco, o que considero um
 GB>> procedimento drástico, visto que se acontecer qualquer imprevisto no
 GB>> restore, o cliente fica com um banco incompleto e inutilizável.

 GB>> Em qua, 5 de dez de 2018 20:55, centriscorps em gmail.com <
 GB>> centriscorps em gmail.com escreveu:

 >>> Você consegue reajustar o espaço em disco fazendo o famoso backup e em
 >>> seguida restore.
 >>>
 >>> Renato
 >>>
 >>> Em qua, 5 de dez de 2018 às 18:57, Sofia Bonato de Moraes - EES <
 >>> sbonato em ees.com.br> escreveu:
 >>>
 >>> > Boa tarde pessoal,
 >>> >
 >>> > O Firebird possui algum comando tipo shrink database para reajustar o
 >>> > espaço
 >>> > em disco?
 >>> >
 >>> > Obrigada.
 >>> >
 >>> > ______________________________________________
 >>> > 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
 >>>
 GB>> ______________________________________________
 GB>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
 GB>> Para saber como gerenciar/excluir seu cadastro na lista, use:
 GB>> http://www.firebase.com.br/fb/artigo.php?id=1107
 GB>> Para consultar mensagens antigas:
 GB>> http://www.firebase.com.br/pesquisa_lista.html


E>  ______________________________________________
E>  FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
E>  Para saber como gerenciar/excluir seu cadastro na lista, use:
E> http://www.firebase.com.br/fb/artigo.php?id=1107
E>  Para consultar mensagens antigas:
E> http://www.firebase.com.br/pesquisa_lista.html







Mais detalhes sobre a lista de discussão lista