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 / 125038
Accepted
Victor Barajas
Victor Barajas
Asked: 2016-01-03 12:11:55 +0800 CST2016-01-03 12:11:55 +0800 CST 2016-01-03 12:11:55 +0800 CST

Quantos dispositivos de backup são recomendados para melhorar o desempenho do backup?

  • 772

Para melhorar o desempenho de nossos backups do SQL Server, fazemos backup em vários arquivos de backup.

  • Na maioria das postagens de blog sobre esse tópico, eles dizem para usar vários arquivos de backup, mas existe um ponto em que você pode ter muitos arquivos que, em vez de melhorar o desempenho, obtém um desempenho pior devido à grande quantidade de threads em espera?
  • Existe alguma recomendação geral baseada, por exemplo, no número de núcleos no servidor? Para ser mais específico, um de nossos servidores mostra BACKUPIOe BACKUPBUFFER, como os 2 principais infratores, aguardam estatísticas.

Estamos fazendo backup de um grande banco de dados (vários TBs) usando 10 arquivos de backup, mas notei que o servidor tem apenas 4 núcleos e 32 GB de RAM. Alterei o número de arquivos de backup para usar 4 arquivos de backup. Verei como será na próxima semana no próximo ciclo de backup, mas, enquanto isso, estava tentando encontrar recomendações sobre quantos arquivos de backup usar, dependendo das especificações do servidor.

sql-server backup
  • 2 2 respostas
  • 1080 Views

2 respostas

  • Voted
  1. usr
    2016-01-03T12:42:55+08:002016-01-03T12:42:55+08:00

    Para melhorar o desempenho de nossos backups do SQL Server, fazemos backup em vários arquivos de backup

    Geralmente não, não. Essa é uma técnica de propósito especial que pode ajudar.

    grande quantidade de threads esperando

    Por que isso causaria uma perda de throughput? Threads são normalmente um amplo recurso. Os problemas surgem em certas configurações em que você queima centenas e milhares de threads.

    com base no [o] número de núcleos no servidor

    Isso faria sentido se a operação de backup fosse vinculada à CPU. Esse pode ser o caso. Enquanto estiver vinculado a E/S, não ajudará a definir o número de núcleos com qualquer configuração.

    um de nossos servidores mostra BACKUPIO e BACKUPBUFFER como estatísticas de espera dos 2 principais infratores

    Isso aponta para um processo de backup vinculado a E/S. De acordo com minha experiência, isso é muito mais comum do que a limitação da CPU.

    um grande banco de dados (vários TBs)

    O tamanho do backup não desempenha um papel nas considerações de taxa de transferência. O throughput é o desempenho por unidade de tempo.

    A mera presença de threads em espera normalmente não afeta outros threads e operações no servidor. Os threads em espera não fazem nada.

    então mudei o número de arquivos de backup para usar 4 arquivos de backup

    Isso foi infundado porque o backup está vinculado ao IO. Segmentar o número de núcleos não é um bom alvo.

    Se você adicionasse 128 núcleos de CPU, seu backup não ficaria um segundo mais rápido.

    Você pode ter aumentado o desempenho, mas apenas acidentalmente.

    A quantidade de arquivos de backup a serem usados ​​é influenciada por muitas coisas. Uma maneira fácil de encontrar um bom número é simplesmente testar valores diferentes, incluindo 1 (o valor mais provável para sistemas comuns).

    • 4
  2. Best Answer
    Kin Shah
    2016-01-03T20:44:20+08:002016-01-03T20:44:20+08:00

    Vamos tirar suas dúvidas primeiro...

    existe um ponto em que você pode ter muitos arquivos que, em vez de melhorar o desempenho, obtém um desempenho pior devido à grande quantidade de threads em espera?

    O número de encadeamentos de backup depende do número de volumes lógicos usados ​​para os arquivos de banco de dados e do número de dispositivos de backup. O SQL Server oferece suporte a um máximo de 64 dispositivos de backup para uma única operação de backup.

    Então, quando você está distribuindo seus backups, está aumentando a taxa de transferência. Esta é uma boa jogada.

    Existe alguma recomendação geral baseada, por exemplo, no número de núcleos no servidor?

    Um exemplo de arquivos e discos balanceados para um bom desempenho de backup do whitepaper de otimização de backup (cuidado: é um documento de palavras) .

    insira a descrição da imagem aqui

    Coisas a considerar :

    • Ative a inicialização instantânea do arquivo.
    • Use compactação de backup (sql server 2008 R2 e superior possui compactação de backup na edição padrão). A compactação aumentará o uso da CPU, portanto, certifique-se de não haver saturação da CPU.
    • Mude/ajuste sua estratégia de backup. Em vez de fazer backup completo diário de um banco de dados de vários Terabytes, pense em fazer backups diferenciais junto com os logs.
    • Em um ambiente de teste, jogue com BUFFERCOUNT(número total de buffers de E/S) e MAXTRANSFERSIZE(maior unidade de transferência em bytes entre o servidor sql e a mídia de backup) os parâmetros de backup junto com os sinalizadores de rastreamento 3605 e 3213.
    • Consulte minha resposta SQL Backup ajustando bancos de dados grandes

    Aconselhamento amigável

    Percebi que o servidor tem apenas 4 núcleos e 32 GB de RAM.

    Como você está executando um grande banco de dados (vários TBs), 4 núcleos e 32 GB de RAM parece muito baixo. Aumente seu hardware.

    Referir :

    • Otimizando o desempenho de backup e restauração no SQL Server
    • Como o SQL Server Backup and Restore seleciona tamanhos de transferência?
    • Como aumentar a velocidade do backup completo do banco de dados SQL usando compactação e discos de estado sólido?
    • 4

relate perguntas

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

  • Backups de banco de dados no Oracle - Exportar o banco de dados ou usar outras ferramentas?

  • 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

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 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

    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
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • 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
    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