Was ist SQL Server für Linux?
Organisationen, die Linux verwenden, können überlegen, ob sie SQL Server zum Hosten von Datenbanken verwenden möchten. Entsprechend können Organisationen, die SQL Server verwenden, überlegen, ob sie ihre Server unter dem Linux-Betriebssystem ausführen. Aber warum sollten sie eine solche Änderung vornehmen?
Als Systemadministrator für Wide World Importers sind Sie für die Linux-Server zuständig, auf denen alle Front-End-Webserver und die Back-End-Windows-Datenbankfarm des Unternehmens gehostet werden. Sie möchten Ihre Linux-Erfahrung nutzen, um SQL Server für Linux bereitzustellen. Daher informieren Sie sich über die wichtigsten Vorteile der Verwendung von SQL Server für Linux. Sie möchten eine Präsentation für Ihren CTO entwickeln. Darin möchten Sie die Vorteile von SQL Server für Linux und die Auswirkungen einer Installation unter Linux erläutern.
Hier erfahren Sie, warum Sie überlegen sollten, SQL Server für Linux zu verwenden.
Gründe für die Verwendung von SQL Server für Linux
Bei Linux handelt es sich um eine Sammlung von Betriebssystemen (oder Distributionen), die im Linux-Kernel ausgeführt werden. Es wird gern als Betriebssystem für lokale und cloudbasierte Bereitstellungen gewählt. SQL Server ist ein beliebtes Managementsystem für relationale Datenbanken (Relational Database Management System, RDBMS), das üblicherweise nur unter dem Windows-Betriebssystem ausgeführt wurde. Seit SQL Server 2017 unterstützt Microsoft SQL Server-Installationen unter Linux-Betriebssystemen.
Denken Sie daher daran, dass Sie nicht auf die Windows-Plattform beschränkt sind, wenn Sie überlegen, ob Sie SQL Server verwenden möchten. Da es sich um Open-Source-Software handelt, können Sie Linux auf kostengünstiger Standardhardware installieren und dadurch die Kosten für die Betriebssystemlizenzierung senken. Linux hat zudem einen geringeren Ressourcenbedarf und niedrigere Hardwareanforderungen, wodurch das Einrichten Linux-basierter VMs über Windows-basierte Server beschleunigt wird.
SQL Server für Linux unterstützt Ubuntu, Red Hat Enterprise Linux und SUSE.
Warum SQL Server?
Wenn Sie sich für SQL Server für Linux als Datenplattform für Wide World Importers entscheiden, können Sie alle Ihre vorhandenen SQL Server-Datenbanken, die derzeit auf der Windows-Plattform ausgeführt werden, unter Linux bereitstellen. Außerdem können Sie Ihre vorhandenen Anwendungen mit der Linux-Version von SQL Server ausführen, und Ihre Organisation kann die vorhandenen DBA- und Anwendungsentwicklungskenntnisse weiter nutzen.
Es wird eine einfache Sicherung und Wiederherstellung in der neuen Linux-Umgebung geben. Ein Ansatz mit niedrigerem Risiko besteht darin, eine nicht geschäftskritische Datenbank nach Linux zu verschieben und ihre Features und Leistung direkt mit Windows zu vergleichen. Wenn es sich bewährt, können Sie eine detaillierte Migrationsstrategie erstellen, um den gesamten Datenbestand zu migrieren. Vergleichen Sie diese Arbeit mit dem Ansatz, der für den Wechsel zu einer anderen Datenbanktechnologie und einem anderen Betriebssystem erforderlich ist.
SQL Server für Linux bietet darüber hinaus auch alle Vorteile einer branchenführenden Leistungsfähigkeit. Die Lösung steht für ihre Leistungsfähigkeit im TPC-E-Leistungsvergleichstest und auch in den TPC-H 1 TB-, 10 TB- und 30 TB-Leistungsvergleichstests an erster Stelle. Das National Institute of Standards and Technology (NIST) hat SQL Server für Linux als sicherste Datenbank bewertet.
Ein weiterer guter Grund für die Verwendung von SQL Server ist das PolyBase-Feature. Mit PolyBase können Sie externe Datenquellen einrichten, die externen Tabellen Daten bereitstellen. Beim Übermitteln von Abfragen können Sie Daten von diesen externen Tabellen auf die gleiche Weise zurückgeben, als wären sie in regulären Tabellen in Ihrer SQL Server-Datenbank gespeichert. Bei den externen Datenquellen kann es sich um Hadoop, Azure Blob Storage-Konten, Oracle, PostgreSQL, MongoDB und viele andere handeln. Nachdem Sie externe Tabellen eingerichtet haben, können Sie diese verwenden, um Daten aus SQL Server zu exportieren oder in SQL Server zu importieren, ohne ein ETL-Paket (Exportieren, Transformieren, Laden) oder ein separates Tool zum Importieren oder Exportieren verwenden zu müssen. Sie können auch PolyBase verwenden, um externe Datenquellen in die SQL Server Business Intelligence-Tools zu integrieren.
Neben SQL Server-Datenbanken verwendet Wide World Importers auch Datenbanken in Oracle und SAP HANA. Sie haben überlegt, ob Sie ETL-Tools verwenden sollen, um ein Data Warehouse mit Daten aus all diesen Quellen aufzufüllen, sodass Sie entsprechende Berichte schreiben können. Wenn Sie SQL Server mit PolyBase bereitstellen, können Sie sich stattdessen überlegen, ob Sie Oracle und SAP HANA als externe Datenquellen in SQL Server verwenden, um die drei Systeme zusammenzuführen. Auf diese Weise können Ihre Berichte alle Abfragen an SQL Server übermitteln und dennoch in Oracle und SAP HANA gespeicherte Daten enthalten. In dieser Konfiguration fungiert SQL Server als Datenvirtualisierungshub.
Freigegebene Codebasis
SQL Server verwendet unter Linux und Windows die SQL-Plattformabstraktionsschicht (SQL Platform Abstraction Layer, SQLPAL), die die Ausführung von SQL Server auf allen unterstützten Betriebssystemen ermöglicht. Daher können Entwickler Anwendungen in der von ihnen bevorzugten Programmiersprache (.NET, PHP, node.JS, Java oder Python) schreiben und erwarten, dass die Anwendungen überall gleich ausgeführt werden, ganz gleich, ob diese SQL Server unter Windows, Linux, in Linux-Containern, Azure SQL Edge oder Azure SQL-Datenbank nutzen.
Container
Ein Nachteil bei der Verwendung von VMs ist, dass jede alle Ressourcen des Betriebssystems benötigt, unabhängig davon, ob die ausgeführten Dienste sie erfordern. Ein Virtualisierungssystem im Container vermeidet diesen Nachteil durch gemeinsame Nutzung des Hostbetriebssystems, während die einzelnen Anwendungen und Dienste weiterhin isoliert sind. Ein Dienst, der in einem Container ausgeführt wird, ist von einem Dienst in einem anderen isoliert. Es sieht so aus, als ob die Dienste auf separaten VMs ausgeführt werden, aber stattdessen nutzen sie gemeinsam den Arbeitsspeicher und die Prozessoren eines einzigen Betriebssystems.
Sie können SQL Server in Linux-Containern ausführen. Wenn Sie viele dieser Container verwalten müssen, können Sie ein Orchestrierungstool wie Kubernetes oder Docker Swarm verwenden. Sie können dies aus Gründen der Hochverfügbarkeit tun, oder um DevOps-Teams dabei zu unterstützen, Continuous Integration oder Continuous Delivery durch die Bereitstellung von neuem Code in Containern zu implementieren.