Sumário

Uso de um cache de gravação (também chamado de gravação fazer cache) controlador de disco pode melhorar o desempenho do SQL Server. Controladores de armazenamento em cache de gravação e subsistemas de disco são seguros para SQL Server, se elas são destinadas especificamente para uso em um ambiente de sistema (DBMS) de gerenciamento de bancos de dados transacionais essenciais dados. Esses recursos de design devem preservar dados armazenados em cache se ocorrer uma falha de sistema. Usando uma fonte de alimentação ininterrupta externa (no-break) para fazer isso geralmente não é suficiente, porque podem ocorrer com os modos de falha que não estão relacionados à energia.

Cache de controladores e subsistemas de disco pode ser seguro para ser usado pelo SQL Server. A maioria das novas plataformas de servidor especificamente que incorporam esses são seguras. No entanto, você deve verificar com o fornecedor do hardware para certificar-se de que o subsistema de disco foi especificamente testado e aprovado para uso em um ambiente do dados críticos bancos de dados relacionais transacionais management system (RDBMS).


Mais informações

Instruções de modificação de dados do SQL Server geram gravações de página lógica. Este fluxo de gravações pode ser ilustrado que duas casas: o log e o banco de dados propriamente dito. Por motivos de desempenho, o SQL Server adia gravações no banco de dados por meio de seu próprio sistema de buffer de cache. Gravações do log são apenas momentaneamente adiadas até tempo de confirmação. Eles não são armazenados em cache da mesma maneira como gravações de dados. Porque sempre precedem gravações de log para uma determinada página da página gravações de dados, o log é às vezes conhecido como um log "write-ahead".

Integridade transacional é um dos conceitos fundamentais de um sistema de banco de dados relacional. As transações são consideradas unidades atômicas de trabalho que são totalmente aplicadas ou totalmente revertida. O log de transações de gravação antecipada do SQL Server é um componente essencial na implementação de integridade transacional.

Qualquer sistema de banco de dados relacional também precisa lidar com um conceito estreitamente relacionado a integridade transacional, o que é recuperação de falha do sistema não planejado. Uma variedade de não-ideal, efeitos reais podem ter causado essa falha. Em muitos sistemas de gerenciamento de banco de dados, falha do sistema pode resultar em um processo de recuperação manual demorado direcionado por humanos.

Por outro lado, o mecanismo de recuperação do SQL Server é totalmente automático e opera sem intervenção humana. Por exemplo, SQL Server pode ser dão suporte a um aplicativo de produção de missão crítica e enfrentar uma falha do sistema devido a flutuação de energia momentânea. Na restauração de energia, o hardware do servidor será reiniciado, o software de rede pode carregar e inicializar e do SQL Server será reiniciado. Como o SQL Server é inicializado, ele será executado automaticamente o processo de recuperação com base nos dados do log de transações. Todo esse processo ocorre sem intervenção humana. Sempre que as estações de trabalho cliente reiniciado, usuários localizaria todos os dados presentes, até a última transação inseriram.

Integridade transacional do SQL Server e recuperação automática constituem um recurso muito poderoso de salvamento de tempo e trabalho. Se um controlador de armazenamento em cache de gravação não é corretamente projetado para uso em um ambiente transacional crítico DBMS de dados, ele pode comprometer a capacidade do SQL Server para recuperar, danificando assim o banco de dados. Isso pode ocorrer se o controlador intercepta gravações do log de transação do SQL Server e buffers em um hardware de cache na placa do controlador, mas não preserva esses gravados páginas durante uma falha do sistema.

Controladores de armazenamento em cache mais executam o cache de gravação. A função do cache de gravação sempre não pode ser desativada.

Mesmo que o servidor usa no-break, isso não garante a segurança das gravações em cache. Muitos tipos de falhas do sistema podem ocorrer que não atendem a no-break. Por exemplo, um erro de paridade de memória, um ajuste de registro do sistema operacional ou um problema de hardware que causa uma reinicialização do sistema pode produzir uma interrupção do sistema não controlada. Uma falha de memória no cache de gravação de hardware também pode resultar na perda de informações de registros vitais.

Outro possível problema relacionado a um controlador de cache de gravação pode ocorrer no desligamento do sistema. Não é incomum para o sistema operacional "pedalar" ou reinicializar o sistema durante as alterações de configuração. Mesmo se um operador de cuidado segue a recomendação de sistema operacional para aguardar até que toda a atividade de disco parou antes de reinicializar o sistema, gravações em cache podem ainda estar presentes no controlador. Quando é pressionada a combinação de teclas CTRL + ALT + DEL ou o botão RESET é pressionado, gravações em cache podem ser descartadas, potencialmente danificar o banco de dados.

É possível criar um cache de gravação de hardware que leva em consideração todas as possíveis causas de descartando dados de cache sujo, que, portanto, ser seguros para uso por um servidor de banco de dados. Alguns desses recursos incluem interceptando o barramento RST sinalizar para evitar redefinição descontrolada do controlador de armazenamento em cache integrado de bateria reserva e espelhados de design ou memória ERC (verificação de erro e correção). Verifique com o fornecedor do hardware para garantir que o cache de gravação inclui esses e outros recursos necessários para evitar perda de dados.

SQL Server requer sistemas para suportar 'entrega garantida para mídias estáveis' como descrito sob o programa de análise de solução de armazenamento do Microsoft SQL Server Always-On. FOpara obter mais informações sobre os requisitos de entrada e saídas para o mecanismo de banco de dados do SQL Server, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

Requisitos de entrada e saída do mecanismo de banco de dados do 967576 do Microsoft SQL Server

Precisa de mais ajuda?

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Microsoft Insider

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?

Obrigado pelos seus comentários!

×