ARQUITETURA SQL Server Parte 1: O que é NUMA?



Pessoal, pretendo começar a falar um pouco da arquitetura do SQL Server, mas antes disso, é importante falar sobre a arquitetura NUMA, non-uniform memory access, uma nova tecnologia no mundo dos sistemas multiprocessados.
A arquitetura tradicional para suportar servidores multiprocessados é o SMP, SYMMETRIC MULTIPROCESSOR . Neste modelo, apenas um processador tem acesso a memória num determinado momento. Quanto mais processadores são adicionados, mais sobrecarregado fica o barramento de acesso à memória, o que pode acabar sendo um fator limitante para a performance do servidor.
No sistema NUMA, as CPU’s estão organizadas em pequenos sistemas chamados de nodes. Cada node possui seu próprio conjunto de processadores e pool de memória e são conectados a um sistema maior através de um barramento de alta velocidade.
Fabricantes de hardware para servidores utilizam-se do NUMA para melhorar o desempenho de servidores multiprocessados, diminuindo a sobrecarga no acesso ao barramento de memória. A arquitetura é não uniforme pois cada processador está mais próximo a certas partes da memória do que de outras.
Para tirar partido de um servidor com arquitetura NUMA, é preciso que o software saiba alocar memória no node onde as suas threads estão rodando, uma vez que acesso à memória de outros nodes é possível, mas tem um custo muito mais alto. O SQL Server é um software NUMA-aware, pois permite que aplicações de banco de dados tirem partido da arquitetura NUMA sem precisar de alterações.

Links de refência:



        Espero que tenham gostado pessoal e não percam o próximo post onde irei começar a falar sobre o SQLOS e seus componentes! Um abraço!

Nenhum comentário:

Postar um comentário