In-Memory-OLTP und ArbeitsspeicheroptimierungIn-Memory OLTP and Memory-Optimization

GILT FÜR: jaSQL ServerjaAzure SQL-DatenbankneinAzure SQL Data Warehouse neinParallel Data WarehouseAPPLIES TO: yesSQL Server yesAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

In-Memory-OLTPIn-Memory OLTP kann die Leistung beim Verarbeiten von Transaktionen, Erfassen und Laden von Daten sowie in vorübergehenden Datenszenarien erheblich verbessern.can significantly improve the performance of transaction processing, data ingestion and data load, and transient data scenarios. Informationen zum grundlegenden Code und Wissen, den bzw. das Sie für einen schnellen Test Ihrer eigenen speicheroptimierten Tabelle und nativ kompilierten gespeicherten Prozedur benötigen, finden Sie unterTo jump into the basic code and knowledge you need to quickly test your own memory-optimized table and natively compiled stored procedure, see

Wir haben ein 17-minütiges Video auf YouTube hochgeladen, das In-Memory-OLTP für SQL Server erläutert und die Leistungsvorteile aufzeigt.We have uploaded to YouTube a 17-minute video explaining In-Memory OLTP on SQL Server, and demonstrating the performance benefits.

Eine detailliertere Übersicht über In-Memory-OLTP und die Szenarien, in denen die Technologie Leistungsvorteile bringt, finden Sie unter:For a more detailed overview of In-Memory OLTP and a review of scenarios that see performance benefits from the technology:

Beachten Sie, dass In-Memory-OLTPIn-Memory OLTP die SQL ServerSQL Server -Technologie zur Verbesserung der Leistung der Transaktionsverarbeitung ist.Note that In-Memory-OLTPIn-Memory OLTP is the SQL ServerSQL Server technology for improving performance of transaction processing. Zur SQL ServerSQL Server -Technologie, die die Leistung von Berichts- und Analyseabfragen verbessert, siehe Beschreibung von Columnstore-Indizes.For the SQL ServerSQL Server technology that improves reporting and analytical query performance see Columnstore Indexes Guide.

Mehrere Verbesserungen wurden an In-Memory-OLTP sowohl in SQL Server 2016 (13.x)SQL Server 2016 (13.x) und SQL Server 2017 (14.x)SQL Server 2017 (14.x) als auch in Azure SQL-DatenbankAzure SQL Database vorgenommen.Several improvements have been made to In-Memory OLTP in SQL Server 2016 (13.x)SQL Server 2016 (13.x) and SQL Server 2017 (14.x)SQL Server 2017 (14.x), as well as in Azure SQL-DatenbankAzure SQL Database. Die Transact-SQL-Oberfläche wurde verbessert, um das Migrieren von Datenbanken zu vereinfachen.The Transact-SQL surface area has been increased to make it easier to migrate database applications. Unterstützung für die Ausführung von ALTER-Vorgängen für speicheroptimierte Tabellen und systemintern kompilierte gespeicherte Prozeduren wurde hinzugefügt, um Anwendungen einfacher zu verwalten.Support for performing ALTER operations for memory-optimized tables and natively compiled stored procedures has been added, to make it easier to maintain applications.

Hinweis

Probieren Sie es ausTry it out

In-Memory OLTP ist in den SQL-Datenbank- und elastischen Pool-Tarifen Premium und Unternehmenskritisch verfügbar.In-Memory OLTP is available in Premium and Business Critical tier Azure SQL databases and elastic pools. Zum Einstieg in In-Memory-OLTP sowie Columnstore in Azure SQL-Datenbank finden Sie Informationen unter Optimieren der Leistung mithilfe von In-Memory-Technologien in SQL-Datenbank.To get started with In-Memory OLTP, as well as Columnstore in Azure SQL Database, see Optimize Performance using In-Memory Technologies in SQL Database.

In diesem AbschnittIn this section

Dieser Abschnitt enthält die folgenden Themen:This section provides includes the following topics:

ThemaTopic und BeschreibungDescription
Schnellstart 1: In-Memory-OLTP-Technologien für höhere Transact-SQL-LeistungQuick Start 1: In-Memory OLTP Technologies for Faster Transact-SQL Performance Tauchen Sie direkt in In-Memory-OLTP ein.Delve right into In-Memory OLTP
Übersicht und VerwendungsszenarienOverview and Usage Scenarios Übersicht über die Aufgaben von In-Memory-OLTP und die Szenarien, die hinsichtlich Leistung davon profitieren.Overview of what In-Memory OLTP is, and what are the scenarios that see performance benefits.
Anforderungen für die Verwendung speicheroptimierter TabellenRequirements for Using Memory-Optimized Tables Erläutert Hardware- und Softwareanforderungen und Richtlinien zum Verwenden von speicheroptimierten Tabellen.Discusses hardware and software requirements and guidelines for using memory-optimized tables.
Codebeispiele für In-Memory OLTPIn-Memory OLTP Code Samples Enthält Codebeispiele, die das Erstellen und Verwenden einer speicheroptimierten Tabelle veranschaulichen.Contains code samples that show how to create and use a memory-optimized table.
Memory-Optimized TablesMemory-Optimized Tables Bietet eine Einführung in speicheroptimierte Tabellen.Introduces memory-optimized tables.
Speicheroptimierte TabellenvariablenMemory-Optimized Table Variables Ein Codebeispiel, das veranschaulicht, wie eine speicheroptimierte Tabellenvariable anstelle einer herkömmlichen Tabellenvariable verwendet wird, um die Verwendung von tempdb zu reduzieren.Code example showing how to use a memory-optimized table variable instead of a traditional table variable to reduce tempdb use.
Indizes für speicheroptimierte TabellenIndexes on Memory-Optimized Tables Bietet eine Einführung in speicheroptimierte Indizes.Introduces memory-optimized indexes.
Nativ kompilierte gespeicherte ProzedurenNatively Compiled Stored Procedures Führt systemintern kompilierte gespeicherte Prozeduren ein.Introduces natively compiled stored procedures.
Verwalten des Arbeitsspeichers für In-Memory-OLTPManaging Memory for In-Memory OLTP Erläutert die Funktionsweise und Verwaltung der Speicherverwendung im System.Understanding and managing memory usage on your system.
Erstellen und Verwalten von Speicher für speicheroptimierte ObjekteCreating and Managing Storage for Memory-Optimized Objects Erläutert Daten- und Änderungsdateien, die Informationen zu Transaktionen in speicheroptimierten Tabellen speichern.Discusses data and delta files, which store information about transactions in memory-optimized tables.
Sichern und Wiederherstellen speicheroptimierter TabellenBackup, Restore, and Recovery of Memory-Optimized Tables Erläutert die Sicherung und Wiederherstellung von speicheroptimierten Tabellen.Discusses backup, restore, and recovery for memory-optimized tables.
Transact-SQL-Unterstützung für In-Memory-OLTPTransact-SQL Support for In-Memory OLTP Erläutert die Transact-SQLTransact-SQL -Unterstützung für In-Memory-OLTPIn-Memory OLTP.Discusses Transact-SQLTransact-SQL support for In-Memory-OLTPIn-Memory OLTP.
Unterstützung für Hochverfügbarkeit für In-Memory-OLTP-DatenbankenHigh Availability Support for In-Memory OLTP databases Erläutert Verfügbarkeitsgruppen und Failoverclustering in In-Memory-OLTPIn-Memory OLTP.Discusses availability groups and failover clustering in In-Memory-OLTPIn-Memory OLTP.
SQL Server-Unterstützung für In-Memory-OLTPSQL Server Support for In-Memory OLTP Listet neue und aktualisierte Syntax und Funktionen auf, die speicheroptimierte Tabellen unterstützen.Lists new and updated syntax and features supporting memory-optimized tables.
Migrieren zu In-Memory-OLTPMigrating to In-Memory OLTP Erläutert, wie datenträgerbasierte Tabellen zu speicheroptimierten Tabellen migriert werden.Discusses how to migrate disk-based tables to memory-optimized tables.
   

Dieser Abschnitt enthält Links zu anderen Websites, die Informationen zu In-Memory-OLTP für SQL Server enthalten.This section provides links to other websites that contain information about In-Memory OLTP on SQL Server.

17-minütiges Video, indiziert17 minute video, indexed

  • Videotitel: In-Memory-OLTP in SQL Server 2016Video title: In-Memory OLTP in SQL Server 2016
  • Veröffentlichungsdatum: 10.03.2019Published date: 2019-03-10
  • Dauer: 17:32Duration: 17:32
  • Gehostet von: Jos de Bruijn, Senior Program Manager für SQL ServerHosted by: Jos de Bruijn, Senior Program Manager on SQL Server

Die Demo kann heruntergeladen werden.Demo can be downloaded

Bei Zeitmarke 08:09 führt das Video eine Demonstration zwei Mal aus.At the time mark 08:09, the video runs a demonstration twice. Sie können die ausführbare Leistungsdemo, die im Video verwendet wird, über den folgenden Link herunterladen:You can download the runnable performance demo that is used in the video, from the following link:

Die folgenden allgemeinen Schritte sind im Video zu sehen:The general steps seen in the video are as follows:

  1. Zunächst wird die Demo mit einer regulären Tabelle ausgeführt.First the demo is run with a regular table.
  2. Als nächstes sehen wir eine speicheroptimierte Version der Tabelle, die mit wenigen Mausklicks erstellt und in SQL Server Management Studio („SSMS. exe“) mit Daten aufgefüllt wird.Next we see a memory-optimized edition of the table being created and populated by a few clicks in SQL Server Management Studio (SSMS.exe).
  3. Anschließend wird die Demo mit der speicheroptimierten Tabelle erneut ausgeführt.Then the demo is rerun with the memory-optimized table. Es wird eine enorme Geschwindigkeitsverbesserung gemessen.An enormous speed improvement is measured.

Index für jeden Abschnitt im VideoIndex to each section in the video

Link zu ZeitmarkenTime mark link Titel des AbschnittsSection title
A.  00:00A.  00:00 Die Einführung.The beginning.

B.  00:56B.  00:56

Warum sich Kunden mit In-Memory-OLTP auseinandersetzen sollten.Why customers should care about In-Memory OLTP.
    01:03    01:03 Moderne Hardware erfordert eine moderne Architektur des Datenbanksystems.Modern hardware requires modern architecture of database system.
    02:10    02:10 Explosion der generierten Daten. Vorgänge müssen sofort (geringe Latenzzeit) ausgeführt werden.Explosion in data being generated; operations need to be instant (low latency).
    03:19    03:19 Verringerung der Gesamtkosten: Nutzen Sie die vorhandenen Ressourcen effizienter.Reduce TCO - do more with the resources you have.

C.  03:33C.  03:33

Vorstellung von In-Memory-OLTP.What In-Memory OLTP is.
Leistungsoptimierung durch Verwenden von speicheroptimierten Technologien.Performance optimized using memory-optimized technology.
    05:03    05:03 Bis zu 30-fach schnellere Transaktionsverarbeitung.Up to 30X faster transaction processing.
    05:22    05:22 Vollständig dauerhaft: Daten überstehen Serverfehler.Fully durable - data survives server failures.
    06:15    06:15 Vollständig in SQL Server integriert.Fully integrated in SQL Server. Daher sind keine neuen Sprachen oder Tools zu erlernen.Thus no new languages or tools to learn.
    07:22    07:22 Zuerst in SQL Server 2014 veröffentlicht, wichtige Verbesserungen in 2016.First released in SQL Server 2014, but major improvements in 2016.
    07:58    07:58 Aich in Azure SQL-Datenbank (in der Cloud) verfügbar.Available in Azure SQL Database too (in the cloud).

D.  08:09D.  08:09

Leistungsdemonstration.Performance demonstration.
Ausführen der Demo mit einer regulären Tabelle.Run the demo with a regular table.
    09:11    09:11 SSMS-Kontextmenü: Berichte > TransaktionsleistungsanalyseSSMS context menu: Reports > Transaction Performance Analysis
    10:38    10:38 SSMS-Kontextmenü: Ratgeber für die SpeicheroptimierungSSMS context menu: Memory Optimization Advisor
    Tatsächliches Erstellen einer speicheroptimierten Tabelle aus einer regulären Tabelle und Migrieren der Daten.    Actually create a memory-optimized table from a regular table, plus migrate the data.
    11:28    11:28 Führen Sie die Demo erneut aus. Sie erkennen eine 45-fache Leistungsverbesserung.Rerun the demo, see 45X speed improvement.

E.  12:17E.  12:17

Einfachere Verwendung von In-Memory-OLTP in SQL Server 2016 (im Vergleich zu 2014).Easier to use In-Memory OLTP in SQL Server 2016 (compared to 2014).
    12:43    12:43 Vereinfachte Analyse zur Unterstützung der App-Migration.Simplified analysis to help with app migration.
    13:03    13:03 Geringere Komplexität der App-Migration durch erweiterte Transact-SQL-Sprachunterstützung (z.B. mit Fremdschlüsseln und Triggern).Reduced complexity of app migration through increased Transact-SQL language support (for example, with foreign keys and triggers).
    13:56    13:56 Verbesserte Verwaltbarkeit.Improved manageability.
    Beispielsweise Ändern von Schema und Indizes, automatische Aktualisierung von Statistiken.    For example, change schema and indexes, auto-update of statistics.

F.  14:46F.  14:46

Verbesserte Skalierbarkeit.Improved scalability.
    15:12    15:12 Große speicheroptimierte Tabellen (bis zu 2 TB pro Datenbank).Large memory-optimized tables (up to 2TB per database).
    15:34    15:34 Noch bessere Skalierung.Even better scaling.
    16:41    16:41 Nutzen Sie die vorhandenen Ressourcen effizienter!Do more with the resources you already have!

G.  16:53G.  16:53

Abschließende Kommentare.Final comments. (Endet bei 17:32.)(Ends at 17:32.)
   

Siehe auchSee also

DatenbankfunktionenDatabase Features