Requisitos de subsistema de E/s do Microsoft SQL Server para a base de dados tempdb

Traduções de Artigos Traduções de Artigos
Artigo: 917047 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Microsoft SQL Server requer o subsistema de E/s utilizado para armazenar bases de dados de sistema e utilizador totalmente satisfazer requisitos de escrita à frente de registo (WAL) através de principais de E/s específicos. Estes requisitos são necessários para satisfazer as propriedades ACID de transacções: atómico, consistente, isolada e duráveis. São fornecidos detalhes sobre requisitos de conformidade de subsistema de E/s nas seguintes referências:A lista que se segue se um resumo rápido dos requisitos:
  • Escrita encomenda deve ser mantida.
  • Escrita dependentes consistência deve ser mantida.
  • Escreve sempre deve ser protegidos em/no suporte estável.
  • Prevenção de E/s rasgada deve ocorrer.
Manutenção de durabilidade permanece crítica para todas as outras bases de dados mas pode ser média para a base de dados tempdb . A tabela seguinte resume vários os requisitos de E/s críticos para bases de dados do SQL Server.
Reduzir esta tabelaExpandir esta tabela
requisito de E/s Descrição breve sistema ou utilizador tempdb
ordenação escrita

Escrita dependentes consistência
A capacidade do subsistema para manter a ordem correcta de operações de escrita. Isto pode ser particularmente importante para espelhamento soluções, requisitos de consistência de grupo e SQL Server WAL protocolo de utilização.NecessárioRecomendado
ler após a escrita A capacidade do subsistema de serviço pedidos com a imagem de dados mais recente de leitura quando a leitura é emitida após qualquer escrita está concluída com êxito.NecessárioNecessário
sobrevivência através de falha A capacidade de dados seja totalmente intacto (duráveis) através de uma falha, tal como um sistema reiniciar.NecessárioNão aplicável
Prevenção de E/s incompleta A capacidade do sistema para evitar a divisão de pedidos de E/s individuais.NecessárioRecomendado
reescrever sector O sector apenas pode ser escrito na sua totalidade e não pode ser novamente escrito devido a um pedido de escrita num sector nas proximidades.Não * aconselhada, só é permitido se transaccionalNão * aconselhada, só é permitido se transaccional
dados puro A expectativa que, quando um pedido de escrita ou uma operação FlushFileBuffers tiver sido concluída, com êxito dados foi guardados suporte estável.NecessárioNão aplicável
Alinhamento de sector físico e tamanho SQL Server interrogates as localizações de armazenamento de ficheiros de dados e registo. Todos os dispositivos são necessários para suportar os atributos de sector permitindo o SQL Server para efectuar escritas em limites alinhado no sector físicos e em múltiplos do tamanho do sector.NecessárioNecessário
* Transaccionais sector rewrites envolvem operações totalmente registadas pelo subsistema de permitir que um sector para ser totalmente movido, substituído ou revertida para a imagem original. Estes rewrites normalmente não aconselhadas devido a sobrecarga necessária para efectuar essas acções adicionais. Um exemplo desta situação seria um utilitário de desfragmentação que está a mover os dados de ficheiro. O sector no ficheiro original não pode ser substituído a nova localização do sector até que o novo sector e os dados totalmente protegidos. O remapeamento do sector tem de ocorrer uma forma transaccional, de modo a que qualquer falha, incluindo uma falha de energia, faz com que o re-establishment dos dados originais. Certifique-se que tem mecanismos de bloqueio disponíveis durante este tipo de processo para impedir o acesso a dados inválidos, assim mantido outros tenants de E/s do SQL Server.

Sobrevivência através de falha

Base de dados tempdb é uma área de rascunho para o SQL Server e é recriada no arranque cada SQL Server. A inicialização substitui qualquer necessidade de dados permanecem um reinício.

Operações de reescrever sector transaccional

Para garantir o êxito dos processos de recuperação, como a recuperação de anulação e falha, os registos têm de ser correctamente armazenados em suportes de dados estável antes da página de dados é armazenada e não pode ser novamente escrita sem honoring propriedades transaccionais. Isto requer que o subsistema e SQL Server para manter os atributos específicos, tais como ordenação escrita, sector alinhados e dimensionados escritas e outros esses atributos de segurança de E/s descritos os documentos mencionados anteriormente. Base de dados tempdb , a recuperação de falhas é necessário porque a base de dados está sempre inicializado durante o arranque do SQL Server. No entanto, a base de dados tempdb ainda requer capacidades de anulação. Por conseguinte, alguns atributos do protocolo WAL podem ser descontraídos.

A localização de armazenamento para a base de dados tempdb deve agir em restrito de acordo com protocolos de unidade de disco estabelecida. De todas as formas, o dispositivo que está armazenado da base de dados tempdb deve aparecer e actuar como um disco físico fornecer leitura depois de capacidades de escrita. Transacção sector reescrever operações podem ser um requisito adicional de implementações específicos. Por exemplo, o SQL Server não suporta modificações utilizando compressão do sistema de ficheiros NTFS uma vez que a compressão NTFS pode rescrever sectores do registo que já tenham sido escritos e considerado hardened de base de dados. Uma falha durante este tipo de reescrever pode causar a base de dados estar inutilizável, danificar dados que já considerado seguro do SQL Server.

Nota SQL Server 2005 expandido suporte ou compressão ler apenas bases de dados e os grupos de ficheiros. Consulte o SQL Server 2005 Books Online para detalhes completos.

Operações de reescrever sector transaccionais são pertinentes para bases de dados do SQL Server todos os que incluem a base de dados tempdb . Uma crescente variedade de tecnologias de armazenamento adicional utilizar dispositivos e utilitários que podem rescrever dados do SQL Server considera seguro. Por exemplo, algumas das tecnologias emergentes executar Colocação em cache na memória ou compressão de dados. Para evitar danos graves da base de dados, qualquer reescrever sector tem de ter suporte completo transaccional de tal forma que se ocorrer uma falha, os dados são revertidos para as imagens de sector anterior. Isto garante que o SQL Server nunca está exposto a uma interrupção inesperada ou condição de danos de dados.

Poderá colocar a base de dados tempdb no subsistemas especializados, tais como discos de RAM, estado sólido ou outras implementações de alta velocidade que não podem ser utilizadas para outras bases de dados. No entanto, os factores chaves apresentados na secção ? mais informações ? devem ser considerados quando avaliar estas opções.

Mais Informação

Vários factores devem ser cuidadosamente studied quando avaliar a localização de armazenamento da base de dados tempdb . Por exemplo, a utilização da base de dados tempdb envolve, mas não está limita a, requisitos de espaço de memória, plano de consulta e decisões de E/s. O tuning adequado e a implementação da base de dados tempdb poderão melhorar a escalabilidade e capacidade de resposta de um sistema. Esta secção aborda os factores chaves determinar os requisitos de armazenamento para a base de dados tempdb .

Subsistemas de alta velocidade

Existem várias implementações de subsistema de alta velocidade disponíveis no mercado que fornecem subsistema de E/s do SQL Server requisitos de protocolo, mas que não fornecem durabilidade do suporte de dados.

importante Confirme sempre se o fornecedor do produto para garantir compatibilidade total com necessidades de E/s do SQL Server.

Um disco de RAM é um exemplo comum de tal uma implementação. Discos de RAM instalar os controladores necessários e activar parcial do disco de RAM principal seja apresentado como e funcionam como qualquer unidade de disco ligada ao sistema. Todos os subsistemas de E/s devem fornecer total conformidade com os requisitos de E/s do SQL Server. No entanto, é óbvio que um disco de RAM não é suporte duráveis. Por conseguinte, uma implementação como um disco RAM só pode ser utilizada como a localização da base de dados tempdb e não pode ser utilizada para outra base de dados.

Teclas para considerar antes de implementação e implementação

Existem vários aspectos a considerar antes da implementação da base de dados tempdb neste tipo de subsistema. Esta secção utiliza um disco RAM como base para debate, mas ocorrem resultados semelhantes em implementações de alta velocidade.

Segurança de E/s

Compatibilidade de leitura depois de escrita e escritas de sector transaccional é uma tem. Nunca implementar o SQL Server em qualquer sistema que não suporta totalmente os requisitos de E/s do SQL Server ou risco de danos e perdas de dados.

Páginas já colocados em cache (cache de RAM duplo)

São tabelas temporárias como todas as tabelas numa base de dados. Estes são colocados em cache pelo conjunto de memória intermédia e processados pelo operações de escrita lenta. Armazenar páginas tabela temporária no disco de RAM provoca RAM duplo colocação em cache, uma no conjunto de memória intermédia e outra no disco RAM. Isto directamente demora longe tamanho possível total ?s o conjunto de memória intermédia de e geralmente diminui o desempenho do SQL Server.

Desistir RAM

O disco de RAM designa uma parte da memória RAM principal como o nome implica. Existem várias implementações de discos de RAM e de ficheiros baseados em RAM disponível. Alguns também permitem efectuar operações de segurança de E/s física. O elemento chave da cache de ficheiros baseado na RAM é que directamente demora longe a memória física que pode ser utilizada pelo SQL Server. Ter sempre provas forte que adicionar uma cache de ficheiros baseados em RAM melhora o desempenho da aplicação e não diminuem o desempenho outro consulta ou aplicação.

Optimizar primeiro

Uma aplicação deve optimizar para remover tipos desnecessários e indesejados e hashes que poderiam fazer com que a utilização de base de dados tempdb . Número de vezes que a adição de um índice pode remover a necessidade da ordenação ou hash no plano de completamente, conduzindo a um desempenho ideal, sem requerer a utilização de base de dados tempdb .

Vantagem possíveis pontos

Só é podem determinar as vantagens de colocar a base de dados tempdb num sistema de alta velocidade através de testes rigoroso e medidas de cargas de trabalho da aplicação. A carga de trabalho tem de ser studied cuidadosamente para as características que a base de dados tempdb pode beneficiar da e a segurança de E/s deve ser confirmada antes da implementação.

As operações de ordenação e hash funcionem com os gestores de memória do SQL Server para determinar o tamanho da área de rascunho na memória para cada operação de ordenação ou de hash. Assim que os dados ordenar ou hash excedem a área de rascunho de memória atribuída, podem ser escritos dados na base de dados tempdb . Este algoritmo foi expandido no SQL Server 2005, reduzir os requisitos de utilização de base de dados tempdb relativamente a versões anteriores do SQL Server. Por exemplo, utilizando uma ordenação pura forçada de uma tabela, não índices, descendente ordem e a mesma configuração de hardware, SQL Server 2005 mostra melhoramentos visíveis através de SQL Server 2000.

atenção SQL Server foi concebido para conta para níveis de memória e actividades de consulta actual ao efectuar as decisões de plano de consulta que envolvem a utilização de operações de base de dados tempdb . Por conseguinte, os ganhos de desempenho variar significativamente com base no cargas de trabalho e concepção de aplicações. Recomendamos vivamente que concluir testes com a solução preferencial para determinar possíveis ganhos e avaliar requisitos de segurança de E/s antes tal uma implementação.

SQL Server utiliza a base de dados tempdb para processar várias actividades que envolvam ordena os hashes, o arquivo de versão de linha e temp tabelas:
  • As tabelas temporárias são mantidas pelas rotinas de conjunto de memória intermédia comum para páginas de dados e normalmente não apresentar vantagens de desempenho de implementações de subsistema especializados.
  • Base de dados tempdb é utilizado como uma área de rascunho para hashes e ordena. Poderá ser benéfico reduzindo a latência de E/s para essas operações. No entanto, saber que adicionar um índice para evitar um hash ou uma sequência de ordenação pode fornecer vantagens semelhantes.
Execute planos base com e sem a base de dados tempdb armazenada no subsistema de alta velocidade para comparar vantagens. Parte dos testes de deve incluir as consultas na base de dados do utilizador que não envolvem ordena, os hashes ou tabelas temporárias e, em seguida, confirmado que existem estas consultas não são afectadas negativamente. Quando avaliar o sistema, os indicadores de desempenho seguinte podem ser útil.
Reduzir esta tabelaExpandir esta tabela
indicador Descrição/utilização
página lê e escreve Melhorar o desempenho do tempdb E/s de base de dados pode alterar a taxa de página leituras e escritas para as bases de dados de utilizador devido a latência reduzida associada com a base de dados tempdb E/s. Para páginas de base de dados de utilizador, número global não deve variam entre a mesma carga de trabalho.
físico ler e escrever bytes a base de dados tempdb Se mover a base de dados tempdb para um dispositivo, tal como um disco de RAM, aumenta a E/s real para a base de dados tempdb , indica que a memória retirada fora do conjunto de memória intermédia está a causar actividade de base de dados maiores tempdb ocorra. Este padrão é um indicador que expectativa de vida a página da base de dados de páginas pode também ser afectados de forma negativa.
expectativa de vida de página Uma recusa de expectativa de vida de página pode indicar um aumento nos requisitos de E/s físicos para uma base de dados do utilizador. A diminuição de velocidade provavelmente pode indicar que a memória retirada fora do conjunto de memória intermédia é forçar páginas de base de dados para sair prematuramente o conjunto de memória intermédia. Combinar com os indicadores e teste para compreender os limites de parâmetro.
débito global
Utilização da CPU
Escalabilidade
Tempo de resposta
O objectivo principal de uma alteração de configuração de base de dados tempdb é aumentar o débito total. Os testes devem incluir uma mistura de repeatable cargas de trabalho que podem ser dimensionados para determinar a forma como o débito é afectado.

Semelhante uma implementação de com compressão de disco RAM pode funcionar bem com 10 utilizadores. No entanto, com uma maior carga de trabalho, este pode empurrar níveis CPU para além dos níveis pretendidos e ter efeitos negativos no tempo de resposta quando as cargas de trabalho são elevadas. TRUE testes de limite e testes de previsão de carga futuras são fortemente encorajados.
ficheiros de trabalho e acções de criação de tabela de trabalho Se mover a base de dados tempdb um dispositivo, tal como um disco de RAM, altera o plano de consulta aumentando o número ou o tamanho dos ficheiros de trabalho ou trabalho tabelas, indica que a memória retirada fora do conjunto de memória intermédia está a causar actividade de base de dados maiores tempdb ocorra. Este padrão é uma indicação de que a expectativa de vida página das páginas de base de dados também poderão ser afectada de forma negativa.

Exemplo de reescrever sector transaccional

O exemplo seguinte elaborates a segurança dos dados requeridos pelo bases de dados do SQL Server.

Suponha que um fornecedor de disco RAM utiliza uma implementação de compressão na memória. A implementação deve ser correctamente encapsulada fornecendo o aspecto físico da sequência de ficheiros como se o sector foi alinhado e dimensionado pelo SQL Server é ignora e correctamente segura da implementação subjacente. Observe o exemplo de compressão mais próximo.
Reduzir esta tabelaExpandir esta tabela
acção
Sector 1 destina-se para o dispositivo e é comprimido para poupar espaço.
Sector 2 destina-se para o dispositivo e comprimido com sector 1 para poupar espaço.
O dispositivo pode efectuar as acções seguintes para proteger o sector ?s 1 dados quando é combinado com dados do sector ?s 2.
Reduzir esta tabelaExpandir esta tabela
acção
Bloquear todas as escritas sectores 1 e 2.
Descomprima sector 1 para uma área de rascunho, deixando armazenamento sector 1 actual como os dados sejam obtidos activos.
Comprima sectores 1 e 2 para um novo formato de armazenamento.
Bloquear todas as leituras e escritas de sectores 1 e 2.
Trocar antiga relativas a sectores 1 e 2 com o novo armazenamento.
Se a tentativa de troca falhar (rollback):
  • Restaure o armazenamento original para sectores 1 e 2.
  • Remove os dados sectores 1 e 2 combinado da área de rascunho.
  • Falha da operação de escrita sector 2.
Desbloquear leituras e escritas para sectores 1 e 2.
A capacidade de fornecer mecanismos de bloqueio volta as modificações do sector e recuperar as alterações quando a tentativa de troca de sector falha é considerada transitionally compatível. Para implementações utilizam armazenamento físico para segurança adicional, incluiria os aspectos de registo de transacção adequado para ajudar a proteger e reverter as alterações que foram aplicadas às estruturas do disco para manter a integridade dos ficheiros de base de dados do SQL Server.

Qualquer dispositivo que permite reescrever de sectores tem de suportar os rewrites de forma transaccional para que o SQL Server não está exposto a perda de dados.

Nota A instância do SQL Server é reiniciada quando ocorrem E/s online e falhas de anulação de alterações na base de dados tempdb .

Tenha cuidado ao mover a base de dados tempdb

Tenha cuidado ao mover a base de dados tempdb porque se não é possível criar a base de dados tempdb , SQL Server não será iniciado. Se não é possível criar a base de dados tempdb , iniciar o SQL Server utilizando o (-f) parâmetro de arranque e mover a base de dados tempdb para uma localização válida.

Para alterar a localização física da base de dados tempdb , siga estes passos:
  1. Utilize a instrução ALTER DATABASE e a cláusula de modificar o ficheiro para alterar os nomes de ficheiro físico de cada ficheiro de base de dados tempdb para fazer referência a nova localização física, tal como o novo disco.
    Alter database tempdb modify file 
    (name = tempdev, filename = 'C:\MyPath\tempdb.mdf')
    
    Alter database tempdb modify file 
    (name = templog, filename = 'C:\MyPath\templog.ldf')
  2. Pare e reinicie do SQL Server.

Parceiro produto certificações não são um guaranty de compatibilidade ou segurança

Um produto de terceiros ou um fornecedor específico, pode receber uma certificação de logótipo do Microsoft. No entanto, certificação parceiro ou um logótipo Microsoft específico não certificá compatibilidade ou adequação a um fim específico no SQL Server.

Suporte

Se utilizar um subsistema com o SQL Server suporta as garantias de E/s para utilização de base de dados transaccionais conforme descrito neste artigo, a Microsoft fornecerá suporte para o SQL Server e aplicações baseadas em SQL Server. No entanto, problemas com o, ou devido a, o subsistema será referido do fabricante.

Para problemas relacionados com a base de dados tempdb , serviços de suporte da Microsoft pedirá para colocar a base de dados tempdb . Contacte o fornecedor de dispositivo para Verifique se tem correctamente implementado e configurado o dispositivo de base de dados transaccionais que utilizam.

Microsoft não certificá ou validar a que os produtos de outros fabricantes funcionam correctamente com o SQL Server. Além disso, a Microsoft não fornece qualquer garantia, guaranty ou instrução de adequação ?s qualquer produto de terceiros para utilização com o SQL Server.

Referências

Para obter mais informações, clique números de artigo que se seguem para visualizar os artigos na base de dados de conhecimento da Microsoft:
826433PROBLEMA: SQL Server adicionais diagnósticos ao detectar problemas de E/s não reportados
828339Mensagem de erro 823 poderá indicar problemas de hardware ou problemas do sistema no SQL Server
234656Utilizar unidade de disco em cache com o SQL Server
110352Optimizar o desempenho do Microsoft SQL Server
304261Descrição do suporte para ficheiros de base de dados de rede no SQL Server
913945Microsoft não certificar de que os produtos de outros fabricantes funcione com o Microsoft SQL Server
910716Requisitos para o SQL Server 2005 e SQL Server 2000 para suportar o espelhamento remoto das bases de dados do utilizador
917043Chaves factores a considerar ao avaliar sistemas de cache de ficheiros de outros fabricantes com o SQL Server
As informações contidas neste documento representam a visão actual da Microsoft Corporation sobre os problemas discutidos à data de publicação. Porque a Microsoft deve responder às alterações das condições do mercado, não deve ser interpretado como um compromisso por parte da Microsoft, e a Microsoft não pode garantir a exactidão de quaisquer informações apresentadas após a data de publicação.

Esta documentação técnica destina-se apenas a título informativo. MICROSOFT TORNA SEM GARANTIA, EXPRESSA, IMPLÍCITA OU ESTATUTÁRIA RELATIVAMENTE ÀS INFORMAÇÕES CONTIDAS NESTE DOCUMENTO.

Em conformidade com todas as leis de copyright aplicáveis é da responsabilidade do utilizador. Sem limitação direitos autorais, nenhuma parte deste documento pode ser reproduzida, armazenada no introduzida num sistema de obtenção ou transmitida sob qualquer forma ou por qualquer meio (electrónico, mecânico, fotocópias, gravação ou outro) ou para qualquer finalidade, sem a permissão escrita explícita da Microsoft Corporation.

Microsoft pode ter patentes, aplicações de patentes, marcas comerciais, direitos de autor ou outros direitos de propriedade intelectual que abranjam o assunto neste documento. Salvo expressamente fornecido em qualquer contrato de licença escrito da Microsoft, o facto deste documento não lhe quaisquer direitos sobre essas patentes, marcas comerciais, direitos autorais ou outra propriedade intelectual.

© 2006 Microsoft Corporation. Todos os direitos reservados.

Microsoft, Windows, Windows Server e SQL Server são marcas registadas ou marcas comerciais da Microsoft Corporation nos Estados Unidos e/ou noutros países.
SQL Server requer sistemas para suportar ? garantida a entrega de multimédia estável ? conforme descrito no programa do Microsoft SQL Server Always-On armazenamento solução de revisão. FOPara obter mais informações sobre os requisitos de entrada e saídas para o motor de base de dados do SQL Server, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
967576Requisitos de motor de entrada/saída do Microsoft SQL da base de dados do servidor

Propriedades

Artigo: 917047 - Última revisão: 2 de novembro de 2007 - Revisão: 1.6
A informação contida neste artigo aplica-se a:
  • 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 2005 Server Workgroup
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Standard
Palavras-chave: 
kbmt kbsql2005setup kbsql2005engine kbexpertiseadvanced kbinfo KB917047 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 917047

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com