Se você tiver a tarefa de avaliar e selecionar os componentes de um novo servidor de banco de dados para executar uma carga de trabalho OLTP ou DW no SQL Server 2014 Enterprise Edition, você terá várias escolhas iniciais que precisará fazer como parte do processo de decisão.
Como sempre, você precisará decidir sobre a contagem de soquetes do servidor, o que significa escolher um servidor de dois, quatro ou oito soquetes (no mercado de servidores de commodities). Depois de escolher a contagem de soquetes, você precisa decidir exatamente qual dos processadores disponíveis deseja usar nesse servidor de modelo. Observando as opções para os servidores de modelo mais atuais dos principais fornecedores de sistemas, você descobrirá que terá que escolher entre 15 a 20 processadores específicos diferentes. Tudo isso pode ser um pouco esmagador de se considerar, mas peço que você faça alguma pesquisa e escolha seu processador com muito cuidado. Isso se aplica se você estiver executando bare-metal ou usando máquinas virtuais.
Permitir que outra pessoa escolha seus processadores, que pode não estar familiarizada com o licenciamento do SQL Server 2014 e as demandas de diferentes tipos de carga de trabalho de banco de dados, pode ser um erro caro. Um erro muito comum que vejo é alguém escolher um processador com velocidade de clock menor em uma contagem de núcleos físicos específica, da mesma família e geração de processadores, para economizar uma quantia relativamente pequena nos custos de hardware. Isso pode fazer com que você abra mão de uma quantidade significativa de desempenho (30-40%) para economizar uma fração muito pequena do custo total do sistema, incluindo as licenças principais do SQL Server 2014 para o servidor de banco de dados.
Com o licenciamento baseado em núcleo no SQL Server 2014 Enterprise Edition, você precisa prestar muita atenção às contagens de núcleos físicos e pensar se está mais preocupado com a escalabilidade extra (por ter mais núcleos físicos) ou se deseja o o melhor desempenho absoluto de CPU single-thread (por ter um processador com menos núcleos, mas uma velocidade de clock base mais alta da mesma geração de processador). Ao contrário dos bons velhos tempos do SQL Server 2008 R2 e anteriores, ter mais núcleos físicos custará mais para os custos de licenciamento do SQL Server 2014 Enterprise Edition. Você realmente precisa pensar sobre o que está tentando realizar com seu hardware de banco de dados. Por exemplo, se você puder particionar sua carga de trabalho entre vários servidores, poderá ver um desempenho geral de OLTP muito melhor usando dois servidores de dois soquetes em vez de um servidor de quatro soquetes. Outro exemplo seria ter dois servidores de dois soquetes com processadores de contagem de núcleos muito rápidos, em vez de um servidor de dois soquetes com processadores de contagem de núcleos muito mais lentos. As cargas de trabalho OLTP são especialmente sensíveis ao desempenho da CPU de thread único, pois a maioria das consultas OLTP são consultas de curta duração que geralmente são executadas em um único núcleo de processador.
Ter mais núcleos totais é importante para o desempenho do DW e permite que você execute volumes de consulta simultâneos mais altos, supondo que você não esteja vendo gargalos de memória ou subsistema de armazenamento. Com uma carga de trabalho de data warehouse, pode ser muito mais difícil particionar sua carga de trabalho em vários servidores de banco de dados, mas ainda é algo em que você deve pensar.
Então, aqui estão os processadores Intel específicos que eu recomendo no final de março de 2015 para cargas de trabalho OLTP e DW, com suas especificações de alto nível e alguns comentários.
Servidor de dois soquetes (OLTP ou DW de alta capacidade)
Intel Xeon E5-2699 v3 (22nm Haswell-EP)
- Velocidade de clock base de 2,3 GHz, cache L3 de 45 MB, Intel QPI 1.1 de 9,6 GT/s
- 18 núcleos, Turbo Boost 2.0 (3,6 GHz), hyper-threading
- Quatro canais de memória, doze slots de memória por processador, 768 GB de RAM com DIMMs de 32 GB
Servidor de dois soquetes (OLTP de alto desempenho)
Intel Xeon E5-2667 v3 (22nm Haswell-EP)
- Velocidade de clock base de 3,2 GHz, cache L3 de 20 MB, Intel QPI 1.1 de 9,6 GT/s
- 8 núcleos, Turbo Boost 2.0 (3,6 GHz), hyper-threading
- Quatro canais de memória, doze slots de memória por processador, 768 GB de RAM com DIMMs de 32 GB
Ter dezoito núcleos físicos por processador permitirá que você execute mais consultas simultâneas, consultas OLTP ou execute com mais eficiência uma carga de trabalho típica de DW. Escolhendo o topo de linha, o Xeon E5-2699 v3 de 18 núcleos custaria mais que o dobro para os custos de licença do SQL Server 2014 do que o Xeon E5-2667 v3 de 8 núcleos. Mais uma vez, se você puder particionar sua carga de trabalho, dois servidores baseados em Xeon E5-2667 v3 de soquete duplo forneceriam um desempenho geral de OLTP muito melhor do que um servidor baseado em Xeon E5-2699 v3 pelo menor custo total de licenciamento do SQL Server 2014 Enterprise Edition. Você teria mais memória total entre os dois servidores e mais capacidade de E/S potencial, ao custo de comprar dois servidores em vez de um servidor. Em algumas situações, essa estratégia pode não fazer sentido, especialmente com a sobrecarga adicional de gerenciamento e manutenção de dois servidores em vez de um.
Servidor de quatro soquetes (OLTP ou DW de alta capacidade)
Intel Xeon E7-4890 v2 (22nm Ivy Bridge-EX)
- Velocidade de clock base de 2,8 GHz, cache L3 de 37,5 MB, Intel QPI 1.1 de 8 GT/s
- 15 núcleos, Turbo Boost 2.0 (3,4 GHz), hyper-threading
- Quatro canais de memória, vinte e quatro slots de memória por processador, 1536 GB de RAM com DIMMs de 16 GB
Servidor de quatro soquetes (OLTP de alto desempenho)
Intel Xeon E7-8893 v2 (22nm Ivy Bridge-EX)
- Velocidade de clock base de 3,4 GHz, cache L3 de 37,5 MB, Intel QPI 1.1 de 8 GT/s
- 6 núcleos, Turbo Boost 2.0 (3,7 GHz), hyper-threading
- Quatro canais de memória, vinte e quatro slots de memória por processador, 1536 GB de RAM com DIMMs de 16 GB
O atual Xeon E7-8893 v2 fornecerá um desempenho de consulta OLTP single-thread significativamente melhor em um servidor de quatro soquetes do que o E7-4890 v2, ao custo de menos capacidade total devido à menor contagem de núcleos físicos. O E7-8893 v2 é um modelo "otimizado para frequência" que é realmente projetado para servidores de oito soquetes, mas está disponível em vários modelos atuais de servidores de quatro soquetes dos principais fornecedores de servidores. É uma excelente opção para uma carga de trabalho OLTP menor, onde você deseja o melhor desempenho de CPU single-thread possível, mas deseja minimizar os custos de licenciamento do SQL Server 2014.
Você economizaria o suficiente nos custos de licença do SQL Server 2014 Enterprise Edition (cerca de US$ 250 mil) para comprar o próprio servidor e ainda sobrar muito dinheiro. Eu até acho que é uma escolha melhor em muitas situações do que um servidor de dois soquetes com o Intel Xeon E5-2699 v3 de 18 núcleos, pois você terá um desempenho de thread único muito maior e uma capacidade de memória muito maior. A desvantagem é um custo de hardware mais alto, já que você estará comprando quatro processadores bastante caros.
A maior contagem de núcleos Xeon E7-4890 v2 seria uma escolha melhor para uma carga de trabalho OLTP maior ou para uma carga de trabalho DW. Você terá mais núcleos de processador, o que lhe dará mais capacidade total de CPU, o que lhe custará uma quantia significativa extra para os custos de licença do SQL Server 2014.
Servidor de oito soquetes (OLTP ou DW de alta capacidade)
Intel Xeon E7-8890 v2 (22nm Ivy Bridge-EX)
- Velocidade de clock base de 2,8 GHz, cache L3 de 37,5 MB, Intel QPI 1.1 de 8 GT/s
- 15 núcleos, Turbo Boost 2.0 (3,4 GHz), hyper-threading
- Quatro canais de memória, vinte e quatro slots de memória por processador, 3.072 GB de RAM com DIMMs de 16 GB (oito soquetes)
Servidor de oito soquetes (OLTP de alto desempenho)
Intel Xeon E7-8891 v2 (22nm Ivy Bridge-EX)
- Velocidade de clock base de 3,2 GHz, cache L3 de 37,5 MB, Intel QPI 1.1 de 8 GT/s
- 10 núcleos, Turbo Boost 2.0 (3,7 GHz), hyper-threading
- Quatro canais de memória, vinte e quatro slots de memória por processador, 3.072 GB de RAM com DIMMs de 16 GB (oito soquetes)
No espaço de oito soquetes, você também pode escolher um modelo com contagem de núcleos mais baixa e otimização de frequência (como o E7-8891 v2) que tenha uma velocidade de clock mais alta para melhor desempenho de OLTP de thread único. A contagem de núcleos mais baixa também economizará MUITO dinheiro nos custos de licenciamento do SQL Server 2014, embora você abra mão dessa capacidade de carga extra com menos núcleos de processador disponíveis. Para uma carga de trabalho OLTP maior ou para uma carga de trabalho DW, o E7-8890 v2 de 15 núcleos seria uma escolha melhor, pois você terá muito mais capacidade geral de CPU, juntamente com custos extras de licenciamento do SQL Server 2014.
Todos esses processadores recomendados de quatro e oito soquetes são da mesma geração atual, família Intel Xeon Ivy Bridge de 22nm, para que você possa fazer comparações de desempenho muito fáceis com base em contagens de núcleos, velocidades de clock base e turbo e o tamanho do cache L3. Todos esses processadores também suportarão DIMMs de 32 GB (que ainda são mais caros por GB do que DIMMs de 16 GB) e os próximos DIMMs de 64 GB (que serão bastante caros por GB).