[firebase-br] Duvida com 2 bancos interligados.
Sandro Souza
escovadordebits em gmail.com
Seg Jan 18 11:17:48 -03 2010
Bom dia/tarde Douglas.
Grande Douglas, porque você não utiliza o NBackup para gerar backups
incrementais (diferenciais)?
O primeiro backup seria o completo (nível 0) e os demais seriam apenas
incrementais/diferenciais, contendo apenas as diferenças ocorridas desde
o momento do último backup do nível anterior, fazendo com que você gaste
muito menos tempo e espaço em disco.
Em uma empresa, eu desenvolvi uma ferramenta (em Delphi) que automatizou
esse processo de backups, podendo atuar em mais de um banco de dados,
cada um com o seu próprio conjunto de backups incrementais/diferenciais.
Inicialmente, ao cadastrar um novo banco de dados nessa ferramenta, ela
já gerava um backup completo do banco (nível 0), e após isso, gerava os
backups incrementais de acordo com cada período, ficando da seguinte forma:
O nível 1 era utilizado para os backups incrementais anuais, contendo
apenas a diferença do banco em relação ao backup completo.
O nível 2 era utilizado para os backups incrementais mensais, contendo
apenas a diferença do banco em relação ao último backup anual (nível 1).
O nível 3 era utilizado para os backups incrementais diários, contendo
apenas a diferença do banco em relação ao último backup mensal (nível 2).
O nível 4 era utilizado para os backups incrementais horários, contendo
apenas a diferença do banco em relação ao último backup diário (nível 3).
Dessa forma, o tempo gasto e o tamanho desses backups eram muito
pequenos, principalmente se compararmos ao tempo e espaço em disco
gastos em um backup completo.
Essa ferramenta também permitia a restauração do banco de dados para
qualquer momento desejado, desde que fosse posterior ao momento inicial
do backup inicial.
Na operação de restauração de banco, a ferramenta utiliza o próprio
NBackup, informando a sequência correta de arquivos de backup a serem
utilizados na restauração, para que o banco fique como estava exatamente
naquele momento selecionado.
Na mesma linha de comando em que o NBackup é executado, era informado
primeiramente o backup principal/completo (nível 0), depois o backup
incremental do ano desejado (nível 1), depois o backup incremental do
mês desejado (nível 2), depois o backup incremental do dia desejado
(nível 3), e finalmente o backup incremental da hora desejada (nível 4).
O Nbackup restaura o backup principal (o primeiro informado) e vai
aplicando as diferenças dos outros backups informados, na sequência em
que foram informados.
Dessa forma, você poderia restaurar qualquer um dos bancos cadastrados,
a qualquer hora desejada (após o momento do primeiro backup, é claro).
Espero que isso sirva de inspiração para idéias melhores, e que lhe seja
útil de alguma forma.
Espero ter ajudado mais que atrapalhado. :D
Douglas Silva escreveu:
> Pessoal,
>
> Eu tenho uma base de dados (1 banco) de 8gb. Ela embute 40 tabelas de dados mais 5 tabelas só de arquivos. Estas tabelas de arquivos contem blobs de tudo qto é tipo: pdf, xls, doc, jpg, bmp, png, gif, exe, zip, etc, enfim, qualquer tipo, sem restricao. Sao digamos arquivos relativos a documentos. Exemplo: um cliente pode ter logo ou um arquivo excel q é relacionado a ele. Um produto pode ter um desenho CAD, uma foto ou um arquivo excel com as medidas.
>
> Tudo tem funcionado muito bem nestes 2 anos. Muito rapido, eficiente e simples pra quem usa. Mas o banco cresceu e estou tendo dificuldade para fazer os backups. Gosto de manter backups a cada 60min (24 arquivos), 24h (365 arquivos), semanal (4 arquivos), mensal (12 arquivos). Obviamente está impraticavel.
>
> Eu estava pensando em dividir o banco em 2: dados & arquivos. Isto me deixaria 2 bancos: um banco com 100mb (dados) e ou outro com 7.9gb (files). No entanto na hora de dividir os dois, fico sem consistencia check na tabela de arquivos, uma vez que a Foreign Key tem q ser do mesmo banco. Exemplo: pra gravar um arquivo na tabela CLIENTES_FILES, o codigo do cliente (CLIENTE_ID) precisa ser checado na tabela CLIENTES.
>
> Alguem ja passou por isto? Alguma dica?
>
> Douglas.
> ______________________________________________
> 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://firebase.com.br/pesquisa
>
>
Mais detalhes sobre a lista de discussão lista