AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 37162
Accepted
DanP
DanP
Asked: 2013-03-21 10:52:39 +0800 CST2013-03-21 10:52:39 +0800 CST 2013-03-21 10:52:39 +0800 CST

Configuração de unidade ideal para SQL Server 2008R2

  • 772

Eu tenho um servidor de banco de dados bastante ocupado executando o SQL Server 2008 R2 que possui a seguinte configuração:

  • SATA RAID 1 (2 unidades) - SO / Programas
  • SAS RAID 10 (4 unidades) - Arquivos de banco de dados Sql (dados e logs)
  • SAS RAID 1 (2 unidades) - TempDB (dados e logs)

Presumindo que não posso adicionar unidades adicionais a este servidor, fiz o melhor uso da configuração que tenho disponível? Ou devo considerar outro esquema aqui onde os logs são isolados dos arquivos de dados, por exemplo?

Atualizar:

Para aqueles que solicitaram mais detalhes de hardware:

  • As unidades SATA (usadas para a partição OS/Programa) são: WD 7200 RPM 3 Gb/s 3,5 polegadas SATA
  • As unidades SAS usadas nas outras matrizes são: Seagate 15K RPM 6 Gb/s SAS de 3,5 polegadas
  • O controlador RAID usado é um: LSI 9260-8i SAS/SATA 6 Gb 8 portas

Atualização 2:

Com base no feedback que recebi, parece que tenho as seguintes opções viáveis ​​para escolher - concederei a recompensa a alguém que possa me dizer qual é provavelmente o melhor no ambiente que descrevi:

  1. Deixe tudo como está - provavelmente não farei muito melhor
  2. Mova minhas 2 unidades SAS RAID 1 para minha matriz RAID 10 existente para que ela seja composta por 6 discos no total
  3. Mover meus arquivos de log para o SAS RAID 1 e/ou realocar o TempDB (dados ou logs) de volta para o RAID 10
sql-server hardware
  • 5 5 respostas
  • 21178 Views

5 respostas

  • Voted
  1. Best Answer
    Mark Storey-Smith
    2013-03-24T11:08:46+08:002013-03-24T11:08:46+08:00

    Variantes desta questão surgem semirregularmente:

    • Compilação do SQL Server
    • Ajude-me a escolher uma combinação de nível de RAID para uma instância do SQL Server 2008
    • Como devo configurar esses discos em um SQL Server para uma configuração de BI?

    Também há brigas ocasionais sobre a "melhor prática" de separação de dados/log.

    • Colocando o Log de Transações em Volume Separado [estado sólido]?
    • SQL Server - Separando dados, log e arquivos TempDB em uma SAN

    Sem uma análise mais detalhada do que este servidor está fazendo, o mesmo conselho se aplica conforme fornecido anteriormente.

    • RAID 1 para SO
    • RAID 10 (6 discos) para dados/logs/tempdb

    Raramente há algum ponto em uma divisão com tão poucos fusos disponíveis. Um único array com uma capacidade de IOPs maior normalmente absorverá os altos e baixos de sua carga de trabalho melhor do que 2 arrays menores.

    Uma variante que pode valer a pena testar é colocar o tempdb na unidade do sistema operacional. Faça isso apenas se tiver uma carga de trabalho representativa que possa reproduzir repetidamente, para garantir uma comparação justa da configuração. Se você optar por esse arranjo na produção, certifique-se de que o crescimento do tempdb seja restrito para que você não consuma inadvertidamente todo o espaço livre na unidade do sistema operacional.

    Dado que as unidades do seu sistema operacional são montanhas-russas de 7200 RPM, ficaria surpreso se o tempdb na configuração da unidade do sistema operacional trouxesse algum benefício.

    • 15
  2. Patrick Keisler
    2013-03-21T11:47:37+08:002013-03-21T11:47:37+08:00

    Tudo depende da sua carga de trabalho, mas com apenas 6 unidades isso limita suas opções. Se sua carga de trabalho não depende muito de tempdb para itens como classificações, tabelas de hash e isolamento de instantâneo, talvez seja melhor usar as 6 unidades SAS juntas no RAID 10. No entanto, se você souber ou tiver as métricas para provar isso tempdb é muito utilizado, então você deve mantê-lo separado como você tem.

    • 7
  3. Greenstone Walker
    2013-03-21T15:22:14+08:002013-03-21T15:22:14+08:00

    A resposta real depende de suas necessidades, mas geralmente "colocar dados e fazer logon em matrizes diferentes" é mais importante do que "colocar tempdb em sua própria matriz".

    Dado o número de unidades disponíveis, meu ponto de partida seria:

    1. Duas unidades, RAID 1 - sistema operacional, executáveis, arquivo de paginação.
    2. Quatro unidades, RAID 5 - Todos os arquivos de dados (alternativamente, RAID 1+0)
    3. Duas unidades, RAID 1 - Todos os arquivos de log

    O que deve fazer é usar o SQLIO para testar o desempenho de diferentes configurações de drive.

    • 2
  4. David Spillett
    2013-03-24T13:23:37+08:002013-03-24T13:23:37+08:00

    Depende muito do que você entende por "muito ocupado": diferentes padrões de carga de trabalho (gravação pesada ou não, operações em massa comuns ou não, nível de acesso simultâneo, para citar apenas três das muitas variáveis) podem ter um efeito drástico no desempenho de qualquer disposição de fuso.

    Para uma situação de gravação pesada, separar os logs dos dados pode fazer uma diferença significativa, pois cada gravação envolve a atualização do log e dos arquivos de dados, portanto, envolve uma quantidade razoável de rotação extra do cabeçote se ambos os conjuntos de arquivos estiverem no mesmo conjunto de eixos .

    Sem mais referências à sua carga de trabalho (e às especificações dessas unidades e qualquer controlador que esteja entre elas e a máquina), eu estaria inclinado a optar por três volumes: um para programas OS+ e tempdb (dados), um para o banco de dados principal dados e o terceiro para logs (ambos tempdb e bancos de dados principais).

    Claro, se suas cargas de trabalho são muito leves em operações de gravação, você não deve gastar muito tempo se preocupando em manter dados e logs separados, pois isso fará pouca diferença no desempenho e dedicar um volume inteiro para eles seria um desperdício de recursos disponíveis. espaço.

    • 2
  5. TimG
    2013-03-21T11:16:02+08:002013-03-21T11:16:02+08:00

    Dependendo do que você está usando o banco de dados para (OLTP vs warehousing), sua configuração parece uma boa configuração geral. Se você tivesse mais discos, teria mais opções.

    Você poderia obter melhor desempenho se trocasse o disco do TempDB para RAID 0 (stripe). Isso aumenta o risco de falha, mas como o TempDB apenas armazena dados em buffer, você não pode sofrer perda de dados. Portanto, a maioria das pessoas considera isso uma compensação razoável. Apenas mantenha um sobressalente por perto (ou um sobressalente).

    Uma coisa que você não mencionou, mas poderia tentar (se ainda não o fez): a Microsoft recomenda dividir seu TempDB em vários arquivos (um por CPU). Claro, é melhor se eles estiverem em discos separados, mas simplesmente ter arquivos separados ajuda. http://msdn.microsoft.com/en-us/library/ms175527(v=SQL.105).aspx

    • -1

relate perguntas

  • SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado

  • Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?

  • Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?

  • Quais são as principais causas de deadlocks e podem ser evitadas?

  • Como determinar se um Índice é necessário ou necessário

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Conceder acesso a todas as tabelas para um usuário

    • 5 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    pedrosanta Listar os privilégios do banco de dados usando o psql 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve