No momento, estamos com alguns problemas de desempenho, já que nosso banco de dados está ficando muito grande. Existem dados armazenados dos últimos 10 anos e não vejo uma razão pela qual os dados com mais de 2 anos tenham que ser armazenados nas mesmas tabelas que os novos dados.
Agora, como não tenho uma experiência muito profunda na administração de bancos de dados, estou procurando as melhores maneiras de arquivar dados antigos.
Informações
Existem cerca de 310'000'000 registros no banco de dados no total.
O banco de dados precisa de 250 GB no disco rígido.
- A versão do servidor é o SQL Server 2008 com nível de compatibilidade SQL Server 2005 (90), mas estamos planejando atualizar para o SQL Server 2012 em breve
Eu pensei em duas possibilidades:
Novo banco de dados
Crie um banco de dados semelhante ao do servidor de produção e insira todos os dados antigos no novo banco de dados.
- Desvantagem: como os servidores vinculados não são permitidos em nosso ambiente, seria difícil associar os dados antigos, se necessário
Esquema de histórico
Crie um novo esquema fe [hist] com as mesmas tabelas que no banco de dados de produção. Insira todos os dados antigos nessas novas tabelas no novo esquema.
- Vantagem: união fácil, se dados antigos forem necessários no futuro
- Você prefere uma das soluções em detrimento da outra?
- Por quê?
- Existem melhores possibilidades?
- Existem ferramentas existentes com as quais essa tarefa é facilmente possível?
- Quaisquer outros pensamentos?
desde já, obrigado
Editar
Pergunta adicional:
A tabela de archive recém-criada também precisaria de chaves primárias / estrangeiras?
Ou eles deveriam apenas ter as colunas, mas sem chaves / restrições?