Você está offline; aguardando reconexão

Informações sobre o uso de caches de disco com o SQL Server que cada administrador de banco de dados deve saber

IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.

Clique aqui para ver a versão em Inglês deste artigo: 234656
Sumário
Um sistema de banco de dados primeiro e principal é responsável pelo armazenamento preciso e recuperação de dados, mesmo em caso de falhas inesperadas do sistema.

O sistema deve garantir a atomicidade e a durabilidade de transações, enquanto estatísticas de execução atual, várias transações e vários pontos de falha. Isso normalmente é conhecido como propriedades ACID (atomicidade, consistência, isolamento e durabilidade).

Este artigo aborda as implicações de uma unidade de disco armazena em cache. É recomendável que você leia os seguintes artigos no Microsoft Knowledge Base para obter mais esclarecimento sobre armazenamento em cache e alternativos discussões do modo de falha:
86903 SQL Server e controladores de disco de cache
230785 Algoritmos de armazenamento de dados e log do SQL Server 7.0 e SQL Server 2000 estendem a confiabilidade de dados
Os documentos a seguir também são recomendados: Observação: Esses dois documentos se aplicam a todas as versões atualmente suportadas do SQL Server.
Mais Informações
Server e do Microsoft SQL muitos produtos de banco de dados principal no mercado hoje usam o protocolo Write-Ahead log (WAL).
Protocolo de gravação-Ahead log (WAL)
O protocolo de termo é uma excelente maneira de descrever WAL. É uma versão específica e um conjunto definido de etapas de implementação necessários para garantir que os dados é armazenado e trocado corretamente e podem ser recuperados para um estado conhecido em caso de falha. Assim como uma rede contém um protocolo definido para trocar dados de maneira consistente e protegida, portanto muito o WAL descrever o protocolo para proteger os dados.
Todas as versões do SQL Server abrir os arquivos de log e de dados usando a função CreateFile de Win32. O membro dwFlagsAndAttributes inclui a opção de FILE_FLAG_WRITE_THROUGH quando aberto pelo SQL Server.
FILE_FLAG_WRITE_THROUGH
Essa opção instrui o sistema a gravação qualquer cache intermediário e ir diretamente para o disco. O sistema pode ainda armazenar em cache as operações de gravação, mas não é possível liberar ociosamente-los.

A opção FILE_FLAG_WRITE_THROUGH garante que, quando a gravação operação retorna conclusão bem-sucedida que corretamente, os dados são armazenados no armazenamento estável. Essa evolução se alinha com a especificação do protocolo gravar log à frente (WAL) para garantir que os dados.
Várias unidades de disco (SATA, ATA, SCSI e IDE com base) contêm caches integrados de 512 KB, 1 MB ou mais. Caches de unidade geralmente contam com um capacitor e não é uma solução de bateria. Esses mecanismos de cache não podem garantir o ciclo de gravações em uma potência ou ponto de falha semelhante. Eles apenas garantir a conclusão das operações de gravação do setor. Como as unidades continuam a crescer em tamanho, os caches se tornam maiores e eles podem expor quantidades maiores de dados durante uma falha.

Sistemas de controlador de armazenamento em cache aprimorado desabilitar cache no disco e fornecem um funcional solução de cache alimentado por bateria. Esses caches podem manter os dados em cache por vários dias e até mesmo permitam o cartão de cache a ser colocado em um segundo computador. Quando a alimentação é restaurada corretamente, os dados não gravados são liberados completamente antes de qualquer acesso de dados adicional é permitido. Muitas delas permitem que a porcentagem de leitura versus cache de gravação seja estabelecida para um desempenho ideal. Alguns contêm áreas de armazenamento de memória grande. Na verdade, para um segmento muito específico do mercado, alguns fornecedores de hardware oferecem discos de bateria high-end sistemas com vários gigabytes de cache em cache. Isso podem melhorar significativamente o desempenho do banco de dados.

Transferências de i/o são executadas sem o uso de um cache podem ser muito mais devido a taxas de rotação do disco rígido, o mecânico sempre que é necessária para mover os cabeçotes da unidade e outro fatores de limitação. Instalações do SQL Server são destinadas a sistemas que fornecem controladores de armazenamento em cache. Esses controladores desabilitar os caches em disco e fornecem mídia estável caches para atender aos requisitos de i/o do SQL Server. Eles evitam problemas de desempenho relacionados à busca de disco e escrever vezes usando várias otimizações do controlador de armazenamento em cache.

Há muitos tipos de implementações de subsistema. RAID e SAN é dois exemplos desses tipos de implementações de subsistema. Esses sistemas são normalmente criados com drives baseados em SCSI. Há vários motivos para isso. A seguinte seção descreve genericamente considerações sobre a unidade de nível alto.

Unidades SCSI:
  • Normalmente são fabricadas para uso pesadas.
  • Normalmente são direcionados ao servidor multiusuário,-basedimplementations.
  • Geralmente têm melhor meio tempo para taxas de falha de otherimplementations.
  • Conter sofisticadas heurística para ajudar a prever imminentfailures.
Outras implementações de unidade, como o IDE ATA ou SATA:
  • Normalmente são fabricados para dutyuse claro e médio.
  • Normalmente são direcionados ao basedapplications de usuário único.
  • Algumas implementações mais recentes contêm heuristicsto sofisticados ajuda prever falhas iminentes.
Controladores SCSI não, com base em área de trabalho requerem mais largura de banda do processador principal (CPU) e com freqüência são limitados por um único comando ativo. Por exemplo, quando uma unidade SCSI não está ajustando um bloco inválido, a unidade requer que os comandos de host esperar. O barramento ATA apresenta outro exemplo. O barramento ATA oferece suporte a dois dispositivos, mas apenas um único comando pode estar ativo. Isso deixa um drive ocioso enquanto a outra unidade de serviços o comando pendente. Sistemas RAID baseados em tecnologias de desktop podem todos esses sintomas e ser significativamente afetados pelo respondedor mais lento. A menos que esses sistemas utilizam designs avançados, seu desempenho não será tão eficiente quanto o desempenho dos sistemas baseados em SCSI.

Há situações em que uma unidade de área de trabalho ou matriz é uma solução de baixo custo apropriada. Por exemplo, se você configurar um banco de dados somente leitura para emissão de relatórios, você deve não encontrar muitos dos fatores de desempenho de um banco de dados OLTP quando o cache de disco é desativado.

Tamanhos de disco continuam a aumentar. Drives de baixo custo e alta capacidade podem ser muito atraentes. Mas quando você configurar a unidade para SQL Server e suas necessidades de tempo de resposta, você deve considerar com atenção os seguintes problemas:
  • Design do caminho de acesso
  • A necessidade de desativar o cache em disco
A tabela a seguir fornece comentários de nível altos. As informações de comentário baseia-se em configurações comuns de fabricação.

Tipo de unidade de sistema baseComentários
IDE e ATA
  • Giram a 7.200 RPM.
  • Direcionado para desktops e userapplications único.
  • Por padrão, o cache de disco é ativado. Use o 'DiskProperties', a guia Hardware para acessar as 'Propriedades', guia 'Diretiva' para controlarprecisamente a configuração de cache de disco.

    Observação: Algumas unidades não respeitam essa configuração. Esses drives requerem utilitário de fabricante específico para desabilitar o cache.
  • Cache de disco deve ser desativado para usar thedrive com o SQL Server.
  • Sistemas baseados em ATA e IDE podem adiar a commandswhen de host que executam atividades como ajuste de bloco inválido. Isso pode levar a toperiods de atividade de i/o interrompido.
IDE e computadores portáteis
  • Girar a 5.200 RPM.
  • Direcionado para computadores portáteis.
  • Ver outros comentários na seção IDE e ATA.
  • Armazenamento ReadyDrive e NAND Flash pode fornecer recursos de stableI/S.
SATA
  • Giram a 7.200 RPM.
  • Direcionado para desktops e rangeservers médio.
  • Por padrão, o cache de disco é ativado. Use o 'DiskProperties', a guia Hardware para acessar as 'Propriedades', guia 'Diretiva' para controlarprecisamente a configuração de cache de disco.

    Observação: Algumas unidades não respeitam essa configuração. Esses drives requerem utilitário de fabricante específico para desabilitar o cache.
  • Armazenamento de maior capacidade e maior armazena em cache de partes de contador IDEand ATA.
  • Cache de disco deve ser desativado para usar thedrive com o SQL Server.
  • Cabeamento e interconexões menores.
  • Fácil interconexão com unidades Serial Attached SCSI (SAS) e instalações.
  • Alguns são predictionconstructs de falha.
SCSI
  • Giram a 10.000 e 15.000 RPM.
  • Projetado para servidores e multiuserapplications.
  • Projetado para taxas de decreasedfailure e ciclos de serviço mais pesados.
  • Por padrão, o cache de disco é ativado. Use o 'DiskProperties', a guia Hardware para acessar as 'Propriedades', guia 'Diretiva' para controlarprecisamente a configuração de cache de disco.

    Observação: Algumas unidades não respeitam essa configuração. Esses drives requerem utilitário de fabricante específico para desabilitar o cache.
  • Cache de disco deve ser desativado para usar thedrive com o SQL Server.
  • Sistemas de array e a SAN normalmente cablingand menor uso interconexões.
  • Incluem construções de predição de falha.
Serial Attached SCSI (SAS) inclui o enfileiramento avançado até 256 níveis. SAS também inclui recursos como chefe da fila e enfileirar fora de ordem. O backplane SAS foi projetado de uma maneira que permite o uso de SAS e SATA drives dentro do mesmo sistema. Os benefícios do design SAS são óbvios.

A instalação do SQL Server depende da capacidade do controlador para desativar o cache em disco e para fornecer um cache de i/o estável. Gravar dados fora de ordem em vários discos não é um obstáculo para o SQL Server como o controlador fornece os recursos de cache de mídia estável correta. Aumenta a complexidade do design do controlador com técnicas de segurança de dados avançadas como espelhamento.

Para proteger seus dados, você deve garantir que todos os caches de dados é tratado corretamente. Em muitas situações, isso significa que você deve desativar o cache de gravação da unidade de disco.

Observação Certifique-se de que qualquer mecanismo de cache alternativo corretamente pode manipular vários tipos de falha.

Microsoft realizou testes em várias unidades SCSI e IDE usando o utilitário SQLIOSim. Este utilitário simula a atividade de leitura/gravação assíncrona pesado para um dispositivo de dados simulados e log. Estatísticas de desempenho de teste mostram as operações de gravação média por segundo entre 50 e 70 para uma unidade com cache de gravação desabilitada e um intervalo RPM entre 5,200 e 7.200.

Para obter informações adicionais e detalhes sobre SQLIOSim, consulte o seguinte artigo da Base de dados de Conhecimento da Microsoft:
231619Como usar o utilitário SQLIOSim para simular a atividade do SQL Server em um subsistema de disco
Muitos fabricantes de PC (por exemplo, Compaq, Dell, Gateway ou HP) solicitar as unidades com o cache de gravação desabilitado. No entanto, teste mostra que isso pode não sempre ser o caso para que vocêsempre deve testá-lo completamente.

Observação: Se você tiver qualquer pergunta sobre o status de cache da unidade de disco, entre em contato com o fabricante e obter as configurações apropriadas de utilitário ou jumper para desativar as operações de cache de gravação.
Referências
Para obter detalhes completos sobre requisitos de i/o do SQL Server, visite o seguinte site da Microsoft: http://www.microsoft.com/SQL/AlwaysOn/Overview.mspx
SQL Server requer sistemas para dar suporte a entrega para estável mídia garantidaconforme descrito sob o programa de análise de solução de armazenamento do Microsoft SQL Server Always-On. Para 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 dados de Conhecimento Microsoft:
967576 Requisitos de entrada/saída de mecanismo de banco de dados do Microsoft SQL Server
cache de cach cacheing

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 234656 - Última Revisão: 05/01/2015 14:07:00 - Revisão: 1.0

Microsoft SQL Server 7.0 Standard Edition, Microsoft SQL Server 2000 Personal Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard

  • kbinfo kbmt KB234656 KbMtpt
Comentários