Scénarios NUMA
Sur les ordinateurs pourvus de plusieurs UC, l'accès NUMA (Non-Uniform Memory Access) matériel permet une amélioration significative des performances en associant la mémoire dédiée et les processeurs. Cette rubrique présente les configurations NUMA, l'affinité de l'UC et l'affinité de connexion susceptibles d'entraîner une amélioration des performances dans des scénarios particuliers. Les paramètres suivants affectent ces configurations :
L'accès NUMA matériel est fourni par le fabricant de l'ordinateur.
Soft-NUMA est défini à l'aide du Registre. Pour plus d'informations sur la configuration de soft-NUMA, consultez Procédure : configurer SQL Server pour utiliser soft-NUMA.
L'affinité de l'UC est définie à l'aide de l'option de masque d'affinité.
Le port de l'affinité NUMA est configuré en tant que paramètre serveur à l'aide du Gestionnaire de configuration SQL Server. Pour plus d'informations, consultez Procédure : mapper les ports TCP/IP aux nœuds NUMA.
Scénarios utiles
Lors de l'utilisation de NUMA, vous rencontrerez souvent les scénarios suivants.
A. Aucun port pour l'affinité NUMA
Il s'agit de la condition par défaut sur un ordinateur disposant d'un NUMA matériel et d'une seule instance SQL Server. Le trafic entrant s'effectue via un seul port, avant d'être distribué aux nœuds NUMA disponibles, selon le mécanisme de tourniquet (round robin). NUMA améliore la localité de la mémoire, ainsi que l'accès de l'UC, et augmente le nombre d'E/S et de threads d'écriture différée. Une fois établies, les connexions se limitent à ce nœud. Un équilibrage de charge automatique est ainsi assuré entre les nœuds NUMA. Les applications clientes peuvent se connecter à un port unique, tandis que leur déploiement s'en trouve simplifié.
B. Association d'un seul port à plusieurs nœuds afin de fournir des performances améliorées à une application prioritaire.
Définissez l'affinité d'un port vers plusieurs nœuds NUMA matériels pour servir une application principale. Définissez l'affinité d'un second port vers un autre nœud NUMA matériel pour servir une autre application dite secondaire. Les ressources mémoire et UC des deux applications sont fixées de façon inégale, l'application principale bénéficiant de trois fois plus de ressources mémoire locale et de ressources UC que l'application secondaire. Celle-ci peut être une deuxième instance du moteur de base de données, une fonction moins importante de la même instance du moteur de base de données ou la même base de données. L'exécution des threads peut ainsi bénéficier d'une forme de priorité grâce à l'affectation de ressources supplémentaires à la connexion privilégiée.
C. Association de plusieurs ports à plusieurs nœuds
Il est possible de mapper plusieurs ports aux mêmes nœuds NUMA. Vous avez ainsi la possibilité de configurer des autorisations différentes selon les ports. Par exemple, vous pouvez restreindre de façon stricte l'accès fourni par un port en contrôlant les autorisations sur le point de terminaison TCP correspondant. Dans cet exemple, le port 1450 est largement accessible sur l'intranet. Le port 1433 est ouvert sur Internet par le biais d'un pare-feu, mais son accès est strictement limité. Les deux ports tirent un parti égal et complet de NUMA.