Definition

Microsoft SQL Server

Mitarbeiter: Adam Hughes und Craig Stedman

Microsoft SQL Server ist ein relationales Datenbankmanagementsystem (RDBMS), das eine Vielzahl von Transaktionsverarbeitungs-, Business-Intelligence- und Analyseanwendungen in Enterprise-IT-Umgebungen unterstützt. Microsoft SQL Server ist neben Oracle Database und IBM DB2 eine der führenden Datenbanktechnologien.

Fortsetzung des Inhalts unten

Wie andere RDBMS-Anwendungen baut Microsoft SQL Server auf SQL auf, einer standardisierten Programmiersprache, die Datenbankadministratoren (DBAs) und andere IT-Experten zur Verwaltung von Datenbanken und zur Abfrage der darin enthaltenen Daten verwenden.

SQL Server ist an Transact-SQL (T-SQL) gebunden, eine SQL-Implementierung von Microsoft, die der Standardsprache eine Reihe von proprietären Programmiererweiterungen hinzufügt.

Wie SQL Server funktioniert

Wie andere RDBMS-Technologien ist SQL Server in erster Linie um eine zeilenbasierte Tabellenstruktur herum aufgebaut, die verwandte Datenelemente in verschiedenen Tabellen miteinander verbindet, wodurch die Notwendigkeit vermieden wird, Daten an mehreren Stellen innerhalb einer Datenbank redundant zu speichern.

Das relationale Modell bietet referentielle Integrität und andere Integritätseinschränkungen zur Einhaltung der Datengenauigkeit. Diese sind Teil der Prinzipien Atomarität, Konsistenz, Isolation und Dauerhaftigkeit, die gemeinsam als AKID- beziehungsweise ACID-Eigenschaften bezeichnet werden. Sie sollen garantieren, dass Datenbanktransaktionen zuverlässig verarbeitet werden.

Die Kernkomponente von Microsoft SQL Server ist die SQL Server Database Engine, die die Datenspeicherung, -verarbeitung und -sicherheit steuert. Sie umfasst eine relationale Engine, die Befehle und Abfragen verarbeitet, und eine Storage Engine, die Datenbankdateien, Tabellen, Seiten, Indizes, Datenpuffer und Transaktionen verwaltet. Stored Procedures, Trigger, Views und andere Datenbankobjekte werden ebenfalls von der Database Engine erstellt und ausgeführt.

Unterhalb der Database Engine befindet sich das SQL Server Operating System (SQLOS). SQLOS übernimmt Funktionen wie Speicher- und I/O-Management, Job Scheduling und das Sperren von Daten, um widersprüchliche Aktualisierungen zu vermeiden.

Eine Netzwerkschnittstellenschicht befindet sich über der Database Engine und verwendet das Microsoft-Protokoll Tabular Data Stream, um die Anfrage- und Antwort-Interaktionen mit den Datenbankservern zu erleichtern. Auf Benutzerebene schreiben SQL-Server-DBAs und Entwickler T-SQL-Anweisungen, um unter anderem Datenbankstrukturen aufzubauen und zu modifizieren, Daten zu manipulieren, Sicherheitsvorkehrungen zu implementieren und Datenbanken zu sichern.

SQL-Server-Dienste und Tools

Microsoft bündelt eine Vielzahl von Datenmanagement-, Business-Intelligence- (BI) und Analyse-Tools mit SQL Server. Zusätzlich zu den R Services und Machine Learning Services, die erstmals in SQL Server 2016 erschienen sind, umfassen die Datenanalyseangebote SQL Server Analysis Services, eine Analytics Engine, die Daten zur Verwendung in BI- und Datenvisualisierungsanwendungen verarbeitet, und SQL Server Reporting Services, die die Erstellung und Bereitstellung von BI-Berichten unterstützen.

Auf Datenmanagementseite umfasst Microsoft SQL Server SQL Server Integration Services, SQL Server Data Quality Services und SQL Server Master Data Services. Mit dem DBMS werden auch zwei Toolsets für DBAs und Entwickler gebündelt: SQL Server Data Tools zur Verwendung bei der Entwicklung von Datenbanken und SQL Server Management Studio zur Verwendung bei der Bereitstellung, Überwachung und Verwaltung von Datenbanken.

Editionen von SQL Server

Microsoft bietet SQL Server in vier primären Versionen an, die verschiedene Ebenen der Datenbankdienste bereitstellen. Zwei davon sind kostenlos erhältlich: eine voll funktionsfähige Developer Edition für die Entwicklung und das Testen von Datenbanken und eine Express Edition, die für die Ausführung kleiner Datenbanken mit bis zu zehn GB Storage-Kapazität verwendet werden kann.

Für größere Anwendungen verkauft Microsoft die SQL Server Enterprise Edition, die alle Funktionen von SQL Server enthält, sowie eine Standard Edition mit einem etwas geringerem Funktionsumfang und Einschränkungen bei der Anzahl der Prozessorkerne und Speichergrößen, die Benutzer in ihren Datenbankservern konfigurieren können.

Andere Editionen umfassen eine Standard-Version, eine Web-Version und eine Business-Intelligence-Version. Die Business-Intelligence-Version bietet Self Service und Corporate Business Intelligence Tools mit den Funktionen der Standard Edition.

Als SQL Server 2016 Service Pack 1 (SP1) Ende 2016 veröffentlicht wurde, stellte Microsoft jedoch einige der zuvor auf die Enterprise Edition beschränkten Features als Teil der Standard und Express Edition zur Verfügung. Dazu gehören In-Memory-OLTP, PolyBase, Columnstore-Indizes und Partitionierung, Datenkomprimierung und verschiedene Sicherheits-Features.

Darüber hinaus implementierte das Unternehmen mit SQL Server 2016 SP1 ein konsistentes Programmiermodell über die verschiedenen Editionen hinweg, womit es einfacher ist, Anwendungen von einer Edition auf eine andere zu übertragen.

Die Geschichte von SQL Server

Der ursprüngliche SQL-Server-Code wurde in den 1980er Jahren von Sybase entwickelt, die heute zu SAP gehören. Das Unternehmen hat die Software ursprünglich für Unix-Systeme und Minicomputer-Plattformen entwickelt. Sybase, Microsoft und die Ashton-Tate Corporation, damals der führende Anbieter von PC-Datenbanken, schlossen sich zusammen, um die erste Version von Microsoft SQL Server zu erstellen, die für das Betriebssystem OS/2 konzipiert und 1989 veröffentlicht wurde.

Ashton-Tate verabschiedete sich allerdings anschließend aus dem Projekt. Microsoft und Sybase setzten ihre Partnerschaft bis 1994 fort, als Microsoft die gesamte Entwicklung und Vermarktung von SQL Server für seine eigenen Betriebssysteme übernahm.

Im Jahr zuvor, als sich die Beziehung zu Sybase aufzulösen begann, stellte Microsoft die Software auch auf dem neu veröffentlichten Windows NT zur Verfügung, nachdem die 16-Bit-OS/2-Codebasis modifiziert worden war, um eine 32-Bit-Implementierung mit zusätzlichen Funktionen zu schaffen. Der Schwerpunkt lag auf dem künftigen Windows-Code. 1996 benannte Sybase seine Version in Adaptive Server Enterprise um und überließ den Namen SQL Server Microsoft.

Versionen von SQL Server

Zwischen 1995 und 2016 veröffentlichte Microsoft zehn Versionen von SQL Server. Die frühen Versionen zielten in erster Linie auf Abteilungs- und Arbeitsgruppenanwendungen ab. Microsoft erweiterte die Fähigkeiten von SQL Server aber in den folgenden Versionen und machte die Anwendung zu einem relationalen DBMS für Unternehmen, das mit Oracle Database, DB2 und anderen konkurrierenden High-End-Datenbankanwendungen konkurriert.

Im Laufe der Jahre hat Microsoft verschiedene Datenmanagement- und Datenanalyse-Tools in SQL Server integriert und Funktionen zur Unterstützung neuer Technologien, einschließlich Web, Cloud Computing und Mobilgeräte, eingeführt.

Microsoft SQL Server 2012

Zu den früheren Versionen gehörten SQL Server 2005, SQL Server 2008 und SQL Server 2008 R2. Als nächste Editionen folgten SQL Server 2012 und SQL Server 2014. SQL Server 2012 bot unter anderem erstmals Columnstore-Indizes, die zum Speichern von Daten in einem spaltenorientierten Format für Data-Warehousing- und Analyseanwendungen verwendet werden können, und AlwaysOn Availability Groups, eine Hochverfügbarkeits- und Disaster-Recovery-Technologie. (Microsoft änderte die Schreibweise mit SQL Server 2016 in Always On Availability Groups).

Microsoft SQL Server 2014

In SQL Server 2014 fügte Microsoft dem DBMS In-Memory-OLTP hinzu, mit dem Benutzer Online Transaction Processing (OLTP) für Daten ausführen können, die in In-Memory-optimierten Tabellen gespeichert sind. Ein weiteres neues Feature in SQL Server 2014 war die Pufferpool-Erweiterung, die den Pufferpool-Cache von SQL Server mit einem Solid-State Drive (SSD) integriert - ein Feature zur Steigerung des I/O-Durchsatzes durch die Auslagerung von Daten von herkömmlichen Festplatten auf SSDs.

Microsoft SQL Server 2016

Microsoft SQL Server 2016 wurde als Teil einer Mobile First, Cloud First-Strategie entwickelt, die Microsoft zwei Jahre zuvor eingeführt hatte. Unter anderem fügte SQL Server 2016 neue Funktionen für die Leistungsoptimierung, Echtzeit-Betriebsanalysen sowie Datenvisualisierung und Berichterstellung auf Mobilgeräten hinzu, sowie Hybrid-Cloud-Unterstützung, die es DBAs ermöglicht, Datenbanken auf einer Kombination aus lokalen Systemen und Public-Cloud-Diensten zu betreiben, um die IT-Kosten zu senken. Dabei verschiebt die Stretch-Database-Technologie Daten, auf die nur selten zugegriffen wird, von lokalen Speichergeräten in die Microsoft-Azure-Cloud, wobei die Daten bei Bedarf für Abfragen verfügbar bleiben.

SQL Server 2016 hat auch die Unterstützung für Big-Data-Analysen und andere Advanced-Analytics-Anwendungen durch SQL Server R Services verbessert, die es dem DBMS ermöglicht, in der Open-Source-Programmiersprache R geschriebene Analyseanwendungen auszuführen. Das neue Feature PolyBase ermöglicht es SQL-Server-Anwendern, auf Daten zuzugreifen, die in Hadoop-Clustern oder Azure Blob Storage für die Analyse gespeichert sind.

SQL Server 2016 ist die erste Version des DBMS, die ausschließlich auf 64-Bit-Servern ausgeführt wird. Darüber hinaus wurde die Möglichkeit hinzugefügt, SQL Server in Docker-Containern auszuführen, eine Virtualisierungstechnologie, die Anwendungen auf einem gemeinsam genutzten Betriebssystem voneinander isoliert.

Microsoft SQL Server 2017

Microsoft SQL Server lief mehr als 20 Jahre lang ausschließlich unter Windows. Doch im Jahr 2016 plante Microsoft, das DBMS auch für Linux zur Verfügung zu stellen, beginnend mit einer neuen Version, die im November 2016 als Preview veröffentlicht wurde und zunächst den Namen SQL Server vNext trug. Später wurde das Update formell SQL Server 2017 genannt, und im Oktober desselben Jahres allgemein verfügbar gemacht.

Durch die Unterstützung für Linux wurde die Datenbankplattform auf ein in Unternehmen übliches Open-Source-Betriebssystem umgestellt, was Microsoft die Möglichkeit bietet, bei Kunden, die kein Windows verwenden oder gemischte Serverumgebungen haben, Fuß zu fassen. SQL Server 2017 erweiterte auch die in der Vorgängerversion für Windows-Systeme hinzugefügte Docker-Unterstützung auf Linux-basierte Container.

Ein weiteres Merkmal von SQL Server 2017 ist die Unterstützung der Programmiersprache Python, einer Open-Source-Sprache, die in Analyseanwendungen weit verbreitet ist. Mit dieser Ergänzung wurde SQL Server R Services in Machine Learning Services (In-Database) umbenannt und erweitert, um sowohl R- als auch Python-Anwendungen ausführen zu können. Ursprünglich sind das Machine Learning Toolkit und eine Vielzahl anderer Funktionen nur in der Windows-Version der Datenbanksoftware verfügbar, wobei unter Linux ein begrenzterer Funktionsumfang unterstützt wird.

Microsoft SQL Server 2019

SQL Server 2019 wurde im September 2018 vorgestellt, wobei neue Funktionen und Optimierungen mit Schwerpunkt auf Leistung, Sicherheit und Erhöhung des Arbeitsvolumens der Daten eingeführt wurden.

Seit SQL Server 2019 können Benutzer SQL-Server-, HDFS- und Spark-Container über eine neue Funktion für Big Data Cluster zusammenführen. SQL Server 2019 führt auch Columnstore-Index-Builds, -Rebuilds und -Maskierungen statischer Daten ein. Neu ist außerdem die beschleunigte Datenwiederherstellung (Accelerated Data Recovery, ADR), wodurch sowohl die Wiederherstellung einzelner Datenbanken als auch Pooldatenbanken beschleunigt wird.

Always On Availability Groups, verfügbar seit SQL Server 2012, wurde geändert, um die Verwaltung von Verfügbarkeitsgruppen zu vereinfachen. Dadurch wird die Unterstützung von MSDB- und Mastersystemdatenbanken hinzugefügt. Weitere Änderungen sind die Erweiterung auf Operationen, die Benutzer mit Always-Encrypted-Daten durchführen können, zusätzliche Polybase-Konnektoren für SQL Server, Oracle, MongoDB und Teradata, zusätzliche Optionen für persistenten Speicher und Verbesserungen bei der Abfrageverarbeitung.

Sicherheitsfunktionen in SQL Server

Die erweiterten Security Features, die in allen Editionen von Microsoft SQL Server ab SQL Server 2016 SP1 unterstützt werden, umfassen drei Technologien: Always Encrypted, mit der Benutzer verschlüsselte Daten aktualisieren können, ohne sie vorher entschlüsseln zu müssen; Security auf Zeilenebene, mit der der Datenzugriff auf Zeilenebene in Datenbanktabellen gesteuert werden kann; und dynamische Datenmaskierung (DDM), mit der sensible Daten automatisch vor Benutzern ohne volle Zugriffsberechtigung verborgen werden.

Weitere SQL-Server-Sicherheitsfunktionen sind die transparente Datenverschlüsselung, mit der Daten in Datenbanken verschlüsselt werden, und ein granulares Auditing, das detaillierte Informationen über die Datenbanknutzung sammelt, um regulatorische Vorgaben einzuhalten. Microsoft unterstützt außerdem das Transport-Layer-Security-Protokoll (TLS) zur Sicherung der Kommunikation zwischen SQL-Server-Clients und Datenbankservern.

Die meisten dieser Tools und Features in Microsoft SQL Server werden auch in Azure SQL Database unterstützt, einem Cloud-Datenbankdienst, der auf der SQL Server Database Engine basiert. Alternativ können Benutzer SQL Server direkt auf Azure über SQL Server auf virtuellen Computern ausführen. Die Lösung konfiguriert das DBMS in virtuellen Windows-Server-Maschinen, die auf Azure laufen. Das VM-Angebot ist für die Migration oder Erweiterung von lokalen SQL-Server-Anwendungen in die Cloud optimiert, während die Azure SQL Database für den Einsatz in neuen Cloud-Anwendungen konzipiert ist.

In der Cloud bietet Microsoft daneben Azure SQL Data Warehouse an, einen Data-Warehousing-Service, der auf einer MPP-Implementierung (Massively Parallel Processing) von SQL Server basiert. Die MPP-Version, ursprünglich ein eigenständiges Produkt mit dem Namen SQL Server Parallel Data Warehouse, ist auch für den lokalen Einsatz als Teil des Microsoft Analytics Platform System verfügbar, das es mit PolyBase und anderen großen Datentechnologien kombiniert.

Diese Definition wurde zuletzt im März 2020 aktualisiert

Erfahren Sie mehr über Datenbanken

- GOOGLE-ANZEIGEN

File Extensions and File Formats

ComputerWeekly.de

Close