Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

OLTP en mémoire (optimisation en mémoire)

SQL Server 2014

Nouveauté de SQL Server 2014, l'OLTP en mémoire peut améliorer significativement les performances d'application de base de données OLTP. L'OLTP en mémoire est un moteur de base de données optimisé en mémoire intégré au moteur SQL Server, qui est optimisé pour OLTP.

Pour utiliser l'OLTP en mémoire, vous définissez une table très sollicitée comme étant optimisée en mémoire. Les tables optimisées en mémoire sont transactionnelles, durables et accessibles via Transact-SQL de la même manière que les tables sur disque. Une requête peut faire référence à des tables optimisées en mémoire et des tables sur disque. Une transaction peut mettre à jour des données dans des tables optimisées en mémoire et des tables sur disque. Les procédures stockées qui font référence uniquement aux tables optimisées en mémoire peuvent être compilées de façon native en code machine pour améliorer les performances. Le moteur de l'OLTP en mémoire est conçu pour prendre en charge des accès concurrentiels très nombreux de transactions de type OLTP qui sont gérés par une couche intermédiaire mise à l'échelle. Pour cela, il utilise des structures de données sans verrou et un contrôle d'accès concurrentiel optimiste et multiversion. Le résultat est une latence prévisible inférieure à une milliseconde et un débit élevé avec une mise à l'échelle linéaire pour les transactions de base de données. Le gain réel au niveau des performances dépend de plusieurs facteurs, mais une amélioration des performances de 5 à 20 fois est souvent obtenue.

Le tableau suivant résume les modèles de charge qui bénéficient le plus de l'utilisation de l'OLTP en mémoire :

Scénario d'implémentation

Scénario d'implémentation

Avantages de l'OLTP en mémoire

Taux d'insertion de données élevé à partir de plusieurs connexions simultanées.

Stockage append-only principal.

Impossible de rester au niveau de la charge de travail d'insertion.

Supprimer la contention.

Réduire la journalisation.

Performances de lecture et mise à l'échelle avec des insertions et des mises à jour par lot périodiques.

Opérations de lecture haute performance, surtout quand chaque demande du serveur effectue plusieurs opérations de lecture.

Impossible de répondre aux besoins de mise à l'échelle.

Supprimer la contention quand de nouvelles données arrivent.

Diminuer la latence d'extraction des données.

Réduire le temps d'exécution du code.

Traitement de logique métier intensif sur le serveur de base de données.

Insérer, mettre à jour et supprimer la charge de travail.

Calculs intensifs au sein des procédures stockées.

Contention de lecture/écriture.

Supprimer la contention.

Réduire la durée d'exécution du code pour une latence et un débit améliorés.

Faible latence.

Transactions d'entreprise à faible latence, ce que les solutions de base de données traditionnelles ne proposent pas.

Supprimer la contention.

Réduire le temps d'exécution du code.

Exécution du code à faible latence.

Récupération efficace des données.

Gestion de l'état de session.

Insertion, mise à jour et recherches de point fréquentes.

Charge élevée de nombreux serveurs web sans état.

Supprimer la contention.

Récupération efficace des données.

Réduction ou suppression des E/S facultative, lors de l'utilisation de tables non durables

Pour plus d'informations sur des scénarios pour lesquels l'OLTP en mémoire donnera les meilleurs gains de performances, consultez OLTP en mémoire – Modèles de charge de travail courants et considérations relatives à la migration.

L'OLTP en mémoire améliorera davantage les performances dans l'OLTP avec des transactions à exécution courte.

Les modèles de programmation optimisés par l'OLTP en mémoire incluent les scénarios de concurrence, les recherches de point, les charges de travail avec de nombreuses insertions et mises à jour, et la logique métier dans les procédures stockées.

L'intégration avec SQL Server signifie que vous pouvez utiliser à la fois les tables optimisées en mémoire et les tables sur disques dans la même base de données, et interroger les deux types de tables.

Dans SQL Server 2014, il existe des limitations concernant la surface d'exposition Transact-SQL prise en charge pour l'OLTP en mémoire.

L'OLTP en mémoire offre des gains de performances significatifs et l'extensibilité à l'aide de :

  • Algorithmes qui sont optimisés pour accéder aux données résidantes en mémoire.

  • Contrôle d'accès concurrentiel optimiste qui élimine les verrous logiques.

  • Des objets sans verrou qui suppriment tous les verrous physiques (internes et externes). Les threads qui exécutent le travail transactionnel n'utilisent pas de verrous ou de verrous internes pour le contrôle d'accès concurrentiel.

  • Les procédures stockées compilées nativement, qui ont des performances supérieures aux procédures stockées interprétées, lors de l'accès à une table optimisée en mémoire.

Important Important

Certaines modifications de la syntaxe des tables et des procédures stockées sont nécessaires pour utiliser l'OLTP en mémoire. Pour plus d'informations, consultez Migration vers OLTP en mémoire. Avant de migrer une table sur disque vers une table optimisée en mémoire, consultez Déterminer si un tableau ou une procédure stockée doit être déplacée vers l'OLTP en mémoire pour voir les tables et les procédures stockées qui tireront parti de l'OLTP en mémoire.

Cette section fournit des informations sur les concepts suivants :

Rubrique

Description

Conditions requises pour l'utilisation des tables optimisées en mémoire

Décrit les configurations matérielle et logicielle requises et fournit des instructions pour l'utilisation des tables optimisées en mémoire.

Utilisation d'OLTP en mémoire dans un environnement de machine virtuelle

Décrit l'utilisation de l'OLTP en mémoire dans un environnement virtualisé.

Exemples de code OLTP en mémoire

Contient des exemples de code qui montrent comment créer et utiliser une table optimisée en mémoire.

Tables optimisées en mémoire

Présente les tables optimisées en mémoire.

Variables de table mémoire optimisée

L'exemple de code illustre comment utiliser une variable de table optimisée en mémoire plutôt qu'une variable de table traditionnelle pour réduire l'utilisation de tempdb.

Index sur des tables optimisées en mémoire

Présente les index optimisés en mémoire.

Procédures stockées compilées en mode natif

Présente les procédures stockées compilées en mode natif.

Gestion de la mémoire pour l'OLTP en mémoire

Comprendre et gérer l'utilisation de la mémoire sur votre système.

Création et gestion du stockage des objets mémoire optimisés

Traite des fichiers de données et delta, qui stockent les informations sur les transactions dans les tables optimisées en mémoire.

Sauvegarder, restaurer et récupérer des tables optimisées en mémoire

Décrit la sauvegarde, la restauration et la récupération des tables optimisées en mémoire.

Prise en charge d'OLTP en mémoire par Transact-SQL

Décrit la prise en charge Transact-SQL pour l'OLTP en mémoire.

High Availability Support for In-Memory OLTP databases

Décrit les groupes de disponibilité et le clustering de basculement dans l'OLTP en mémoire.

Prise en charge d'OLTP en mémoire par SQL Server

Répertorie les nouveautés et les mises à jour en matière de syntaxe et de fonctionnalités prenant en charge les tables optimisées en mémoire.

Migration vers OLTP en mémoire

Explique comment migrer les tables sur disque vers des tables optimisées en mémoire.

Des informations supplémentaires sur l'OLTP en mémoire sont disponibles dans :

Cela vous a-t-il été utile ?
(1500 caractères restants)
Merci pour vos suggestions.

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft