Grupos de arquivos somente leitura e compactação

Grupos de arquivos podem ser marcados como somente leitura. Qualquer grupo de arquivos existente, exceto o grupo de arquivos primário, pode ser marcado como somente leitura. Um grupo de arquivos marcado como somente leitura não pode ser modificado de modo algum. Os grupos de arquivos somente leitura podem ser compactados.

Para tabelas que não podem ser modificadas, como as de dados históricos, coloque-as nos grupos de arquivos e marque o grupo de arquivos como somente leitura. Isso impede atualizações acidentais.

Usando a compactação NTFS com os grupos de arquivos definidos pelo usuário como somente leitura e com os bancos de dados somente leitura

SQL Server oferece suporte à compactação NTFS dos grupos de arquivos definidos pelo usuário como somente leitura e os bancos de dados somente leitura. A compactação dos dados somente leitura devem ocorrer nas seguintes situações:

  • Você tem um grande volume de dados estatísticos ou históricos que devem estar disponíveis para acesso de somente leitura limitado.

  • O espaço em disco é limitado.

Considerações administrativas

  • Somente a compactação do Windows NTFS tem suporte. Para obter mais informações, consulte a documentação de sistema de arquivos NTFS do Windows.

  • A compactação de dados oferece suporte para o armazenamento de dados do usuário em grupos de arquivos definidos pelo usuário (.NDF) como somente leitura. Grupos de arquivos primários e logs de transação não podem ser compactados, a menos que o próprio banco de dados seja somente leitura.

  • Para compactar os arquivos do grupo de arquivos definidos pelo usuário, o banco de dados deve ser offline. Para obter mais informações, consulte ALTER DATABASE (Transact-SQL).

  • Para compactar um arquivo ou verificar o status de compactação de um arquivo, execute o comando COMPACT do Windows ou o Windows Explorer. Para obter mais informações, consulte a documentação do Windows.

  • Os bancos de dados do sistema SQL Server, como mestre, modelo, msdb, recurso e tempdb, não podem ser compactados.

  • O backup do SQL Server e as operações de restauração dão suporte aos grupos de arquivos compactados. Não é solicitada nenhuma modificação no backup e nem implementação de restauração. A compactação do sistema operacional é transparente para as operações de backup e restauração.

  • As instruções ALL SELECT e operações somente leitura tem total suporte. O tempo de execução dessas instruções será menor do que o tempo das instruções equivalentes nos grupos de arquivos não compactados.

  • Para modificar os dados compactados, os arquivos não devem ser compactados e o grupo de arquivos deve ser definido como leitura/gravação.

  • Tanto o grupo de arquivos primário quanto o grupo de arquivos definidos pelo usuário de um banco de dados podem ser compactados. Os arquivos associados devem ser compactados usando a compressão NTFS.

  • As operações de anexação de banco de dados têm suporte dos grupos de arquivos compactados. O grupo de arquivos deve ser definido para somente leitura antes de desanexar o banco de dados. Antes de anexar o banco de dados, os arquivos devem ser compactados.

Exemplo de compactação de grupo de arquivos secundário

Neste exemplo, as transações de pedido de vendas são movidos de um banco de dados de produção para SalesArchive, um banco de dados de arquivo morto armazenado em um grupo de arquivos compactados somente leitura. Os dados são pesquisados intermitentemente para análise de vendas e previsão, porém, nunca são modificados.

  1. Durante a preparação para mover os dados de uma banco de dados de produção, o administrador de banco de dados (DBA) cria um grupo de arquivos leitura/gravação Sales01 no SalesArchive. Sales01 está localizado em um diretório NTFS.

  2. O DBA copia as transações de pedido de vendas do banco de dados de produção para as tabelas de arquivo criadas no grupo de arquivos Sales01.

  3. Após o banco de dados SalesArchive de todos os usuários ter sido esvaziado, o DBA irá alterar o banco de dados e definir o grupo de arquivos Sales01 para somente leitura e deixará o banco de dados offline.

  4. Usando o comando Windows COMPACT, o DBA compacta o arquivo Sales01.ndf. Para obter mais informações, consulte a documentação do Windows NTFS.

  5. O DBA faz com que o banco de dados SalesArchive fique online. Os dados agora estão compactados e disponíveis para acesso somente leitura.