Freigeben über


Sicherheit, Zugriff und Vorgänge für Netezza-Migrationen

Dieser Artikel ist Teil drei einer siebenteiligen Reihe, die Anleitungen zum Migrieren von Netezza zu Azure Synapse Analytics bietet. In diesem Artikel liegt der Schwerpunkt auf bewährten Methoden für Sicherheitszugriffsoperationen.

Sicherheitsüberlegungen

In diesem Artikel werden Verbindungsmethoden für vorhandene Netezza-Umgebungen und deren Migration zu Azure Synapse Analytics mit minimalen Risiken und Benutzerauswirkungen erläutert.

In diesem Artikel wird davon ausgegangen, dass die vorhandenen Methoden der Verbindung und der Benutzer-/Rollen-/Berechtigungsstruktur unverändert migriert werden müssen. Verwenden Sie andernfalls das Azure-Portal, um ein neues Sicherheitssystem zu erstellen und zu verwalten.

Weitere Informationen zu den Sicherheitsoptionen von Azure Synapse finden Sie im Whitepaper "Sicherheit".

Verbindung und Authentifizierung

Tipp

Die Authentifizierung in Netezza und Azure Synapse kann "in der Datenbank" oder über externe Methoden erfolgen.

Netezza-Autorisierungsoptionen

Das IBM Netezza-System bietet verschiedene Authentifizierungsmethoden für Netezza-Datenbankbenutzer:

  • Lokale Authentifizierung: Netezza-Administratoren definieren Datenbankbenutzer und ihre Kennwörter mithilfe des CREATE USER Befehls oder über Netezza-Verwaltungsschnittstellen. Verwenden Sie in der lokalen Authentifizierung das Netezza-System zum Verwalten von Datenbankkonten und Kennwörtern und zum Hinzufügen und Entfernen von Datenbankbenutzern aus dem System. Diese Methode ist die Standardauthentifizierungsmethode.

  • LDAP-Authentifizierung: Verwenden Sie einen LDAP-Namensserver, um Datenbankbenutzer zu authentifizieren und Kennwörter, Datenbankkontoaktivierungen und Deaktivierungen zu verwalten. Das Netezza-System verwendet ein pluggable Authentication Module (PAM), um Benutzer auf dem LDAP-Namensserver zu authentifizieren. Microsoft Active Directory entspricht dem LDAP-Protokoll, sodass es wie ein LDAP-Server für die LDAP-Authentifizierung behandelt werden kann.

  • Kerberos-Authentifizierung: Verwenden Sie einen Kerberos-Verteilungsserver, um Datenbankbenutzer zu authentifizieren und Kennwörter, Datenbankkontoaktivierungen und Deaktivierungen zu verwalten.

Die Authentifizierung ist eine systemweite Einstellung. Benutzer müssen entweder lokal authentifiziert oder mithilfe der LDAP- oder Kerberos-Methode authentifiziert werden. Wenn Sie LDAP- oder Kerberos-Authentifizierung auswählen, erstellen Sie Benutzer mit lokaler Authentifizierung pro Benutzer. LDAP und Kerberos können nicht gleichzeitig zum Authentifizieren von Benutzern verwendet werden. Netezza-Host unterstützt die LDAP- oder Kerberos-Authentifizierung nur für Datenbankbenutzeranmeldungen, nicht für Betriebssystemanmeldungen auf dem Host.

Autorisierungsoptionen von Azure Synapse

Azure Synapse unterstützt zwei grundlegende Optionen für die Verbindung und Autorisierung:

  • SQL-Authentifizierung: Die SQL-Authentifizierung erfolgt über eine Datenbankverbindung, die einen Datenbankbezeichner, eine Benutzer-ID und ein Kennwort sowie andere optionale Parameter enthält. Dies entspricht funktional den lokalen Netezza-Verbindungen.

  • Microsoft Entra-Authentifizierung: Mit der Microsoft Entra-Authentifizierung können Sie die Identitäten von Datenbankbenutzern und anderen Microsoft-Diensten zentral verwalten. Die zentrale ID-Verwaltung bietet einen zentralen Ort zum Verwalten von Azure Synapse-Benutzern und vereinfacht die Berechtigungsverwaltung. Microsoft Entra-ID kann auch Verbindungen mit LDAP- und Kerberos-Diensten unterstützen, z. B. kann Microsoft Entra-ID verwendet werden, um eine Verbindung mit vorhandenen LDAP-Verzeichnissen herzustellen, wenn diese nach der Migration der Datenbank vorhanden bleiben sollen.

Benutzer, Rollen und Berechtigungen

Überblick

Tipp

Die allgemeine Planung ist für ein erfolgreiches Migrationsprojekt unerlässlich.

Sowohl Netezza als auch Azure Synapse implementieren die Datenbankzugriffskontrolle über eine Kombination aus Benutzern, Rollen (Gruppen in Netezza) und Berechtigungen. Beide verwenden standard SQL CREATE USER und CREATE ROLE/GROUP Anweisungen zum Definieren von Benutzern und Rollen sowie GRANTREVOKE Anweisungen zum Zuweisen oder Entfernen von Berechtigungen für diese Benutzer und/oder Rollen.

Tipp

Die Automatisierung von Migrationsprozessen wird empfohlen, die verstrichene Zeit und den Umfang für Fehler zu reduzieren.

Konzeptionell sind die beiden Datenbanken ähnlich, und es kann möglich sein, die Migration vorhandener Benutzer-IDs, Gruppen und Berechtigungen zu einem gewissen Grad zu automatisieren. Migrieren Sie diese Daten, indem Sie die vorhandenen Legacy-Benutzer- und Gruppeninformationen aus den Netezza-Systemkatalogtabellen extrahieren und entsprechende CREATE USER- und CREATE ROLE-Anweisungen erstellen, die in Azure Synapse ausgeführt werden sollen, um dieselbe Benutzer-/Rollenhierarchie nachzubilden.

Verwenden Sie nach der Datenextraktion Netezza-Systemkatalogtabellen, um entsprechende GRANT Anweisungen zu generieren, um Berechtigungen zuzuweisen (sofern eine entsprechende vorhanden ist). Das folgende Diagramm zeigt, wie vorhandene Metadaten zum Generieren der erforderlichen SQL-Daten verwendet werden.

Chart, dass zeigt, wie die Migration von Privilegien von einem existierenden System automatisiert wird.

Weitere Informationen finden Sie in den folgenden Abschnitten.

Benutzer und Rollen

Tipp

Die Migration eines Data Warehouse erfordert mehr als nur Tabellen, Ansichten und SQL-Anweisungen.

Die Informationen über die aktuellen Benutzer und Gruppen in einem Netezza-System werden in den Systemkatalogsichten _v_users und _v_groupusers gespeichert. Verwenden Sie das Hilfsprogramm nzsql oder Tools wie netezza Performance, NzAdmin oder Netezza Utility-Skripts, um Benutzerberechtigungen auflisten. Verwenden Sie beispielsweise die dpu Befehle und dpgu Befehle in nzsql, um Benutzer oder Gruppen mit ihren Berechtigungen anzuzeigen.

Verwenden oder bearbeiten Sie die Hilfsprogrammskripts nz_get_users und nz_get_user_groups, um dieselben Informationen im erforderlichen Format abzurufen.

Direktes Abfragen von Systemkatalogansichten (wenn der Benutzer SELECT Zugriff auf diese Ansichten hat), um aktuelle Listen von Benutzern und Rollen abzurufen, die im System definiert sind. Beispiele zum Auflisten von Benutzern, Gruppen oder Benutzern und den zugehörigen Gruppen finden Sie unter:

-- List of users
SELECT USERNAME FROM _V_USER;

--List of groups
SELECT DISTINCT(GROUPNAME) FROM _V_USERGROUPS;

--List of users and their associated groups
SELECT USERNAME, GROUPNAME FROM _V_GROUPUSERS;

Ändern Sie die Beispielanweisung SELECT, um eine Ergebnismenge zu erzeugen, die aus einer Reihe von CREATE USER- und CREATE GROUP-Anweisungen besteht, indem Sie den entsprechenden Text als Literal in die SELECT-Anweisung einfügen.

Es gibt keine Möglichkeit zum Abrufen vorhandener Kennwörter, daher müssen Sie ein Schema zum Zuordnen neuer anfänglicher Kennwörter in Azure Synapse implementieren.

Erlaubnisse

Tipp

Es gibt gleichwertige Azure Synapse-Berechtigungen für grundlegende Datenbankvorgänge wie DML und DDL.

In einem Netezza-System enthält die Systemtabelle _t_usrobj_priv die Zugriffsrechte für Benutzer und Rollen. Fragen Sie diese Tabellen ab (wenn der Benutzer Zugriff auf diese Tabellen hat SELECT ), um aktuelle Listen der im System definierten Zugriffsberechtigungen abzurufen.

In Netezza werden die einzelnen Berechtigungen als einzelne Bits innerhalb von Feldberechtigungen oder g_privileges dargestellt. Siehe Beispiel-SQL-Anweisung bei Benutzergruppenberechtigungen

Die einfachste Möglichkeit zum Abrufen eines DDL-Skripts, das die GRANT Befehle zum Replizieren der aktuellen Berechtigungen für Benutzer und Gruppen enthält, besteht darin, die entsprechenden Netezza-Hilfsskripts zu verwenden:

--List of group privileges
nz_ddl_grant_group -usrobj dbname > output_file_dbname;

--List of user privileges
nz_ddl_grant_user -usrobj dbname > output_file_dbname;

Die Ausgabedatei kann geändert werden, um ein Skript zu erstellen, das eine Reihe von GRANT Anweisungen für Azure Synapse ist.

Netezza unterstützt zwei Klassen von Zugriffsrechten, Administrator und Objekt. In den folgenden Tabellen finden Sie eine Liste der Netezza-Zugriffsrechte und deren Entsprechung in Azure Synapse.

Administratorrechte Description Azure Synapse-Entsprechung
Datensicherung Ermöglicht benutzern das Erstellen von Sicherungen. Der Benutzer kann Sicherungen ausführen. Der Benutzer kann den Befehl nzbackupausführen. 1
[Ein Aggregat erstellen] Ermöglicht es dem Benutzer, benutzerdefinierte Aggregate (USER-Defined Aggregate, UDAs) zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen UDAs wird durch Objektberechtigungen gesteuert. CREATE FUNCTION 3
[Erstellen] Datenbank Ermöglicht es dem Benutzer, Datenbanken zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen Datenbanken wird über Objektberechtigungen gesteuert. DATENBANK ERSTELLEN
[Erstellen] Externe Tabelle Ermöglicht es dem Benutzer, externe Tabellen zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen Tabellen wird über Objektberechtigungen gesteuert. TABELLE ERSTELLEN
[Funktion erstellen] Ermöglicht es dem Benutzer, benutzerdefinierte Funktionen (UDFs) zu erstellen. Die Berechtigung zur Nutzung bestehender UDFs wird durch Objektberechtigungen geregelt. CREATE FUNCTION
[Erstellen] Gruppe Ermöglicht dem Benutzer das Erstellen von Gruppen. Die Berechtigung zum Arbeiten mit vorhandenen Gruppen wird über Objektberechtigungen gesteuert. ROLLE ERSTELLEN
[Erstellen] Index Nur zur Systemverwendung. Benutzer können keine Indizes erstellen. INDEX ERSTELLEN
Bibliothek erstellen Ermöglicht es dem Benutzer, freigegebene Bibliotheken zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen freigegebenen Bibliotheken wird durch Objektrechte gesteuert. 1
[Erstellen] Materialisierte Ansicht Ermöglicht es dem Benutzer, materialisierte Ansichten zu erstellen. ANSICHT ERSTELLEN
[Erstellen] Verfahren Ermöglicht es dem Benutzer, gespeicherte Prozeduren zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen gespeicherten Prozeduren wird über Objektberechtigungen gesteuert. PROZEDUR ERSTELLEN
[Erstellen] Schema Ermöglicht es dem Benutzer, Schemas zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen Schemas wird über Objektberechtigungen gesteuert. SCHEMA ERSTELLEN
[Sequenz] erstellen Ermöglicht es dem Benutzer, Datenbanksequenzen zu erstellen. 1
[Erstellen] Synonym Ermöglicht es dem Benutzer, Synonyme zu erstellen. SYNONYM ERSTELLEN
[Erstellen] Tabelle Ermöglicht dem Benutzer das Erstellen von Tabellen. Die Berechtigung zum Arbeiten mit vorhandenen Tabellen wird über Objektberechtigungen gesteuert. TABELLE ERSTELLEN
[Erstellen] Temporäre Tabelle Ermöglicht es dem Benutzer, temporäre Tabellen zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen Tabellen wird über Objektberechtigungen gesteuert. TABELLE ERSTELLEN
[Benutzer erstellen] Ermöglicht es dem Benutzer, Benutzer zu erstellen. Die Berechtigung zum Arbeiten mit vorhandenen Benutzern wird über Objektberechtigungen gesteuert. BENUTZER ERSTELLEN
[Erstellen] Ansehen Ermöglicht dem Benutzer das Erstellen von Ansichten. Die Berechtigung zum Arbeiten mit vorhandenen Ansichten wird über Objektberechtigungen gesteuert. ANSICHT ERSTELLEN
[Hardware verwalten Ermöglicht dem Benutzer, die folgenden hardwarebezogenen Vorgänge auszuführen: Anzeigen des Hardwarestatus, Verwalten von SPUs, Verwalten von Topologie und Spiegelung und Ausführen von Diagnosetests. Der Benutzer kann diese Befehle ausführen: nzhw und nzds. 4
[Sicherheit verwalten Ermöglicht dem Benutzer das Ausführen von Befehlen und Vorgängen, die sich auf die folgenden erweiterten Sicherheitsoptionen beziehen, z. B.: Verwalten und Konfigurieren von Verlaufsdatenbanken, Verwalten von Sicherheitsobjekten auf mehreren Ebenen und Angeben von Sicherheit für Benutzer und Gruppen, Verwalten von Datenbankschlüsselspeichern und Schlüsselspeichern für die digitale Signierung von Überwachungsdaten. 4
[System verwalten Ermöglicht es dem Benutzer, die folgenden Verwaltungsvorgänge auszuführen: Starten/Beenden/Anhalten/Fortsetzen des Systems, Sitzungen abbrechen, Anzeigen der Verteilungszuordnung, der Systemstatistiken und der Protokolle. Der Benutzer kann diese Befehle verwenden: nzsystem, nzstate, nzstats und nzsession. 4
Wiederherstellen Ermöglicht es dem Benutzer, das System wiederherzustellen. Der Benutzer kann den Befehl nzrestore ausführen. 2
Entsperren Ermöglicht es dem Benutzer, eine benutzerdefinierte Funktion oder ein Aggregat zu erstellen oder zu ändern, um im nicht eingeschlossenen Modus ausgeführt zu werden. 1
Abbruch der Objektberechtigung Description Azure Synapse-Entsprechung
Abbruch Ermöglicht es dem Benutzer, Sitzungen abzubrechen. Gilt für Gruppen und Benutzer. KILL DATABASE CONNECTION
Ändern Ermöglicht es dem Benutzer, Objektattribute zu ändern. Gilt für alle Objekte. ALTER
Löschen Ermöglicht es dem Benutzer, Tabellenzeilen zu löschen. Gilt nur für Tabellen. ENTF
Verwerfen Ermöglicht dem Benutzer das Ablegen von Objekten. Gilt für alle Objekttypen. DROP
Ausführen Ermöglicht es dem Benutzer, benutzerdefinierte Funktionen, benutzerdefinierte Aggregate oder gespeicherte Prozeduren auszuführen. AUSFÜHREN
GenStats Ermöglicht es dem Benutzer, Statistiken zu Tabellen oder Datenbanken zu generieren. Der Benutzer kann den Befehl "STATISTIK GENERIEREN" ausführen. 2
Bräutigam Ermöglicht es dem Benutzer, Speicherplatz für gelöschte oder veraltete Zeilen freizufordern und eine Tabelle durch die Strukturierungsschlüssel neu zu organisieren oder Daten für Tabellen mit mehreren gespeicherten Versionen zu migrieren. 2
Einfügen Ermöglicht dem Benutzer das Einfügen von Zeilen in eine Tabelle. Gilt nur für Tabellen. INSERT
List Ermöglicht es dem Benutzer, einen Objektnamen entweder in einer Liste oder auf eine andere Weise anzuzeigen. Gilt für alle Objekte. LISTE
Auswählen Ermöglicht es dem Benutzer, Zeilen in einer Tabelle auszuwählen (oder abzufragen). Gilt für Tabellen und Ansichten. Auswählen
Truncate Ermöglicht dem Benutzer, alle Zeilen aus einer Tabelle zu löschen. Gilt nur für Tabellen. TRUNCATE
Update Ermöglicht es dem Benutzer, Tabellenzeilen zu ändern. Gilt nur für Tabellen. Aktualisierung

Tabellennotizen:

  1. Es gibt keine direkte Entsprechung zu dieser Funktion in Azure Synapse.

  2. Diese Netezza-Funktionen werden automatisch in Azure Synapse behandelt.

  3. Das Azure Synapse-Feature CREATE FUNCTION enthält die Aggregatfunktionen von Netezza.

  4. Diese Features werden automatisch vom System oder über das Azure-Portal in Azure Synapse verwaltet. Weitere Informationen finden Sie im nächsten Abschnitt zu betrieblichen Überlegungen.

Weitere Informationen finden Sie unter Azure Synapse Analytics-Sicherheitsberechtigungen.

Überlegungen zur Verwendung

Tipp

Für den effizienten Betrieb eines Data Warehouse müssen operative Aufgaben ausgeführt werden.

In diesem Abschnitt wird erläutert, wie Typische operative Netezza-Aufgaben in Azure Synapse mit minimalem Risiko und Auswirkungen für Benutzer implementiert werden.

Sobald sich das System in der Produktion befindet, gibt es wie bei allen Data Warehouse-Produkten laufende Verwaltungsaufgaben, die erforderlich sind, um das System effizient zu betreiben und Daten für die Überwachung und Überprüfung bereitzustellen. Die Ressourcenauslastung und Kapazitätsplanung für zukünftiges Wachstum fällt ebenfalls in diese Kategorie, ebenso wie Sicherung/Wiederherstellung von Daten.

Netezza-Verwaltungsaufgaben fallen in der Regel in zwei Kategorien:

  • Systemverwaltung, die die Hardware, Konfigurationseinstellungen, Systemstatus, Zugriff, Speicherplatz, Verwendung, Upgrades und andere Aufgaben verwaltet.

  • Datenbankverwaltung, die Benutzerdatenbanken und deren Inhalte verwaltet, Daten lädt, Daten sichern, Daten wiederherstellen und den Zugriff auf Daten und Berechtigungen steuern.

IBM Netezza bietet verschiedene Möglichkeiten oder Schnittstellen, mit denen Sie die verschiedenen System- und Datenbankverwaltungsaufgaben ausführen können:

  • Netezza-Befehle (nz* Befehle) werden im /nz/kit/bin Verzeichnis auf dem Netezza-Host installiert. Für viele der nz* Befehle müssen Sie sich beim Netezza-System anmelden können, um auf diese Befehle zuzugreifen und sie auszuführen. In den meisten Fällen melden sich Benutzer als Standardbenutzerkonto nz an, aber Sie können andere Linux-Benutzerkonten auf Ihrem System erstellen. Bei einigen Befehlen müssen Sie ein Datenbankbenutzerkonto, ein Kennwort und eine Datenbank angeben, um sicherzustellen, dass Sie über die Berechtigung zum Ausführen der Aufgabe verfügen.

  • Die Netezza CLI-Clientkits verpacken eine Teilmenge der nz* Befehle, die von Windows- und UNIX-Clientsystemen ausgeführt werden können. Die Clientbefehle erfordern möglicherweise auch, dass Sie ein Datenbankbenutzerkonto, ein Kennwort und eine Datenbank angeben, um sicherzustellen, dass Sie über Administrator- und Objektberechtigungen für die Ausführung der Aufgabe verfügen.

  • Die SQL-Befehle unterstützen Verwaltungsaufgaben und Abfragen innerhalb einer SQL-Datenbanksitzung. Sie können die SQL-Befehle mit dem Netezza nzsql-Befehlsinterpreter oder über SQL-APIs wie ODBC, JDBC und den OLE DB-Anbieter ausführen. Sie müssen über ein Datenbankbenutzerkonto verfügen, um die SQL-Befehle mit entsprechenden Berechtigungen für die von Ihnen ausgeführten Abfragen und Aufgaben auszuführen.

  • Das NzAdmin-Tool ist eine Netezza-Schnittstelle, die auf Windows-Clientarbeitsstationen ausgeführt wird, um Netezza-Systeme zu verwalten.

Während die Verwaltungs- und Betriebsaufgaben für verschiedene Data Warehouses konzeptionell ähnlich sind, können sich die einzelnen Implementierungen unterscheiden. Im Allgemeinen integrieren moderne cloudbasierte Produkte wie Azure Synapse eher einen automatisierten und "systemverwalteten" Ansatz (im Gegensatz zu einem manuelleren Ansatz in älteren Data Warehouses wie Netezza).

In den folgenden Abschnitten werden netezza- und Azure Synapse-Optionen für verschiedene operative Aufgaben verglichen.

Housekeepingaufgaben

Tipp

Haushaltungsaufgaben führen ein Produktionslager effizient aus und optimieren den Einsatz von Ressourcen wie z. B. Lagerung.

In den meisten Legacy-Data Warehouse-Umgebungen sind normale "Housekeeping"-Aufgaben zeitaufwändig. Geben Sie Speicherplatz frei, indem Sie alte Versionen von aktualisierten oder gelöschten Zeilen entfernen oder Daten, Protokolldateien oder Indexblöcke für Effizienz (GROOM und VACUUM in Netezza) neu organisieren. Das Sammeln von Statistiken ist auch eine potenziell zeitaufwendige Aufgabe, die nach einem Massendatenimport erforderlich ist, um dem Abfrageoptimierer aktuelle Daten bereitzustellen, auf denen die Abfrageausführungspläne basieren.

Netezza empfiehlt, Statistiken wie folgt zu sammeln:

  • Sammeln Sie Statistiken zu nicht aufgefüllten Tabellen, um das Intervall histogramm einzurichten, das in der internen Verarbeitung verwendet wird. Diese anfängliche Sammlung beschleunigt nachfolgende Statistikensammlungen. Stellen Sie sicher, dass Statistiken nach dem Hinzufügen von Daten erneut erfasst werden.

  • Sammeln Sie Prototypphasenstatistiken für neu ausgefüllte Tabellen.

  • Erfassen Sie in der Produktionsphase Statistiken, nachdem eine signifikante prozentuale Änderung an der Tabelle oder Partition vorgenommen wurde (~10 % der Zeilen). Bei hohen Mengen von nicht eindeutigen Werten, z. B. Datums- oder Zeitstempeln, kann es vorteilhaft sein, diese bei 7 % erneut zu erfassen.

  • Erfassen Sie Statistiken in der Produktionsphase, nachdem Sie Benutzer erstellt und realistische Abfragelasten für die Datenbank ausgeführt haben (Abfragen von bis zu drei Monaten).

  • Sammeln Sie Statistiken in den ersten Wochen nach einem Upgrade oder einer Migration in Zeiträumen mit geringer CPU-Auslastung.

Die Netezza-Datenbank enthält viele Protokolltabellen im Datenwörterbuch, die Daten sammeln, entweder automatisch oder nach aktivierung bestimmter Features. Da Protokolldaten im Laufe der Zeit an Umfang zunehmen, sollten Sie ältere Informationen löschen, damit sie nicht permanent Speicherplatz belegen. Es gibt Optionen zum Automatisieren der Wartung dieser Protokolle.

Tipp

Automatisieren und überwachen Sie Housekeepingaufgaben in Azure.

Azure Synapse verfügt über eine Option zum automatischen Erstellen von Statistiken, damit sie bei Bedarf verwendet werden können. Durchführen der Defragmentierung von Indizes und Datenblöcken manuell, auf geplanter Basis oder automatisch. Durch die Nutzung nativer integrierter Azure-Funktionen kann der aufwand für eine Migrationsübung verringert werden.

Überwachung und Prüfung

Tipp

Netezza Performance Portal ist die empfohlene Methode zur Überwachung und Protokollierung für Netezza-Systeme.

Netezza bietet das Netezza Performance Portal, um verschiedene Aspekte eines oder mehrerer Netezza-Systeme zu überwachen, einschließlich Aktivität, Leistung, Warteschlangen und Ressourcennutzung. Netezza Performance Portal ist eine interaktive GUI, mit der Benutzer einen Drilldown zu Details auf niedriger Ebene für jedes Diagramm ausführen können.

Tipp

Das Azure-Portal bietet eine Benutzeroberfläche zum Verwalten von Überwachungs- und Überprüfungsaufgaben für alle Azure-Daten und -Prozesse.

Ebenso bietet Azure Synapse eine umfassende Überwachungserfahrung im Azure-Portal, um Einblicke in Ihre Workload im Data Warehouse zu bieten. Das Azure-Portal ist das empfohlene Tool, wenn Sie Ihr Data Warehouse überwachen, da es konfigurierbare Aufbewahrungszeiträume, Warnungen, Empfehlungen und anpassbare Diagramme und Dashboards für Metriken und Protokolle bereitstellt.

Das Portal ermöglicht auch die Integration in andere Azure-Überwachungsdienste wie Operations Management Suite (OMS) und Azure Monitor (Protokolle), um eine ganzheitliche Überwachungserfahrung für nicht nur das Data Warehouse, sondern auch die gesamte Azure-Analyseplattform für eine integrierte Überwachungserfahrung bereitzustellen.

Tipp

Low-Level- und systemweite Metriken werden automatisch in Azure Synapse protokolliert.

Ressourcenauslastungsstatistiken für Azure Synapse werden automatisch im System protokolliert. Zu den Metriken für jede Abfrage gehören Nutzungsstatistiken für CPU, Arbeitsspeicher, Cache, E/A und temporäre Arbeitsbereiche sowie Konnektivitätsinformationen wie fehlerhafte Verbindungsversuche.

Azure Synapse bietet eine Reihe von dynamischen Verwaltungsansichten (Dynamic Management Views, DMVs). Diese Sichten sind nützlich für die aktive Problembehandlung und das Identifizieren von Leistungsengpässen in Ihrer Workload.

Weitere Informationen finden Sie unter Optionen für Vorgänge und die Verwaltung in Azure Synapse.

Hohe Verfügbarkeit (HA) und Notfallwiederherstellung (DR)

Netezza-Appliances sind redundante, fehlertolerante Systeme, und es gibt verschiedene Optionen in einem Netezza-System, um hohe Verfügbarkeit und Notfallwiederherstellung zu ermöglichen.

Durch das Hinzufügen von IBM Netezza Replication Services für die Notfallwiederherstellung wird die Fehlertoleranz verbessert, indem Redundanz über lokale und breite Netzwerke erweitert wird.

IBM Netezza Replication Services schützt vor Datenverlust, indem Daten in einem primären System (dem primären Knoten) mit Daten auf einem oder mehreren Zielknoten (untergeordnete Knoten) synchronisiert werden. Diese Knoten bilden einen Replikationssatz.

High-Availability Linux (auch als Linux-HA bezeichnet) bietet die Failoverfunktionen von einem primären oder aktiven Netezza-Host zu einem sekundären oder Standby-Netezza-Host. Der Haupt-Clusterverwaltungsdaemon in der Linux-HA Lösung heißt Heartbeat. Heartbeat überwacht die Hosts und verwaltet die Kommunikations- und Statusprüfungen von Diensten.

Jeder Dienst ist eine Ressource.

Netezza gruppiert die Netezza-spezifischen Dienste in der nps-Ressourcengruppe. Wenn Heartbeat Probleme erkennt, die eine Hostfehlerbedingung oder einen Dienstverlust für die Netezza-Benutzer bedeuten, kann Heartbeat ein Failover auf den Standbyhost initiieren.

Distributed Replicated Block Device (Verteiltes repliziertes Blockgerät, DRBD) ist ein Blockgerätetreiber, der den Inhalt von Blockgeräten (Festplatten, Partitionen und logischen Volumes) zwischen den Hosts spiegelt. Netezza verwendet die DRBD-Replikation nur für die Partitionen "/nz " und "/export/home ". Da neue Daten in die Partition "/nz " und die Partition "/export/home " auf dem primären Host geschrieben werden, nimmt die DRBD-Software automatisch dieselben Änderungen an der Partition "/nz " und "/export/home " des Standbyhosts vor.

Tipp

Azure Synapse erstellt automatisch Momentaufnahmen, um schnelle Wiederherstellungszeiten sicherzustellen.

Azure Synapse verwendet Datenbankmomentaufnahmen, um eine hohe Verfügbarkeit des Lagers bereitzustellen. Eine Data Warehouse-Momentaufnahme erstellt einen Wiederherstellungspunkt, der zum Wiederherstellen oder Kopieren eines Data Warehouse in einen vorherigen Zustand verwendet werden kann. Da Azure Synapse ein verteiltes System ist, besteht eine Data Warehouse-Momentaufnahme aus vielen Dateien, die sich in Azure Storage befinden. Momentaufnahmen erfassen inkrementelle Änderungen der Daten, die in Ihrem Data Warehouse gespeichert sind.

Tipp

Verwenden Sie benutzerdefinierte Momentaufnahmen, um einen Wiederherstellungspunkt vor wichtigen Updates zu definieren.

Tipp

Microsoft Azure bietet automatische Sicherungen an einem separaten geografischen Standort zur Unterstützung der Notfallwiederherstellung an.

Azure Synapse nimmt während des tages automatisch Momentaufnahmen und erstellt Wiederherstellungspunkte, die sieben Tage lang verfügbar sind. Sie können diesen Aufbewahrungszeitraum nicht ändern. Azure Synapse unterstützt eine Wiederherstellungspunktvorgabe (Recovery Point Objective, RPO) von acht Stunden. Ein Datenlager kann in der primären Region aus einer der in den letzten sieben Tagen erstellten Momentaufnahmen wiederhergestellt werden.

Benutzerdefinierte Wiederherstellungspunkte werden ebenfalls unterstützt, sodass Wiederherstellungspunkte manuell durch Auslösen von Momentaufnahmen eines Data Warehouse vor und nach großen Änderungen erstellt werden können. Diese Funktion stellt sicher, dass Wiederherstellungspunkte logisch konsistent sind und bietet zusätzlichen Datenschutz im Falle von Unterbrechungen von Arbeitslasten oder Benutzerfehlern für einen gewünschten Wiederherstellungszielzeitpunkt (RPO) von weniger als 8 Stunden.

Ebenso wie die zuvor beschriebenen Momentaufnahmen führt Azure Synapse auch einmal pro Tag eine Geosicherung als Standard für ein gekoppeltes Rechenzentrum aus. Die RPO für eine Geowiederherstellung beträgt 24 Stunden. Sie können die Geosicherung auf einem Server in jeder anderen Region wiederherstellen, in der Azure Synapse unterstützt wird. Eine Geosicherung stellt sicher, dass ein Data Warehouse wiederhergestellt werden kann, falls die Wiederherstellungspunkte in der primären Region nicht verfügbar sind.

Arbeitslastmanagement

Tipp

In einem Produktionsdatenlager gibt es in der Regel gemischte Workloads mit unterschiedlichen Ressourcennutzungsmerkmalen, die gleichzeitig ausgeführt werden.

Netezza enthält verschiedene Features zum Verwalten von Workloads:

Technique Description
Zeitplanregeln Regeln des Schedulers beeinflussen die Zeitplanung. Jede Planerregel gibt eine Bedingung oder einen Satz von Bedingungen an. Jedes Mal, wenn der Planer einen Plan empfängt, wertet er alle Änderungen der Zeitplanregeln aus und führt die entsprechenden Aktionen aus. Jedes Mal, wenn der Planer einen Plan für die Ausführung auswählt, wertet er alle einschränkenden Zeitplanregeln aus. Der Plan wird nur ausgeführt, wenn dies nicht einen Grenzwert überschreitet, der durch eine begrenzungsmäßige Zeitplanregel auferlegt wird. Andernfalls wartet der Plan ab. Auf diese Weise können Sie Pläne auf eine Weise klassifizieren und bearbeiten, die sich auf die anderen WLM-Techniken (SQB, GRA und PQE) auswirkt.
Garantierte Ressourcenzuordnung (GRA) Sie können entitäten, die als Ressourcengruppen bezeichnet werden, einen minimalen Anteil und einen maximalen Prozentsatz der Gesamten Systemressourcen zuweisen. Der Scheduler stellt sicher, dass jede Ressourcengruppe Systemressourcen im Verhältnis zu ihrer Mindestfreigabe empfängt. Eine Ressourcengruppe erhält einen größeren Anteil an Ressourcen, wenn andere Ressourcengruppen im Leerlauf sind, aber nie mehr als den konfigurierten maximalen Prozentsatz erhalten. Jeder Plan ist einer Ressourcengruppe zugeordnet, und die Einstellungen dieser Ressourcengruppeneinstellungen bestimmen, welcher Bruchteil der verfügbaren Systemressourcen für die Verarbeitung des Plans zur Verfügung gestellt werden soll.
Kurze Abfrageverzerrung (SQB) Ressourcen (d. h. Zeitpläne, Speicher und bevorzugte Warteschlangen) sind für kurze Abfragen reserviert. Eine kurze Abfrage ist eine Abfrage, für die die Kostenschätzung kleiner als ein angegebener Maximalwert ist (der Standardwert ist zwei Sekunden). Mit SQB können kurze Abfragen auch dann ausgeführt werden, wenn das System andere, längere Abfragen verarbeitet.
Priorisierte Abfrageausführung (PQE) Basierend auf den von Ihnen konfigurierten Einstellungen weist das System jeder Abfrage eine Priorität – kritisch, hoch, normal oder niedrig – zu. Die Priorität hängt von Faktoren wie Dem Benutzer, der Gruppe oder der Sitzung ab, die der Abfrage zugeordnet ist. Das System kann dann die Priorität als Grundlage für die Zuordnung von Ressourcen verwenden.

Azure Synapse protokolliert automatisch Ressourcennutzungsstatistiken. Zu den Metriken gehören Nutzungsstatistiken für CPU, Arbeitsspeicher, Cache, E/A und temporären Arbeitsbereich für jede Abfrage. Azure Synapse protokolliert auch Verbindungsinformationen, z. B. fehlgeschlagene Verbindungsversuche.

Tipp

Low-Level- und systemweite Metriken werden automatisch in Azure protokolliert.

In Azure Synapse sind Ressourcenklassen vorab festgelegte Ressourcenlimits, die die Computeressourcen und die Parallelität bei der Abfrageausführung regeln. Ressourcenklassen können Ihnen helfen, Ihre Workload zu verwalten, indem Sie Grenzwerte für die Anzahl der Abfragen festlegen, die gleichzeitig und auf den Computeressourcen ausgeführt werden, die den einzelnen Abfragen zugewiesen sind. Dabei erfolgt ein Ausgleich zwischen Speicher und Parallelität.

Azure Synapse unterstützt diese grundlegenden Workloadverwaltungskonzepte:

  • Workloadklassifizierung: Sie können eine Anforderung einer Workloadgruppe zuweisen, um Wichtigkeitsstufen festzulegen.

  • Workloadpriorität: Sie können die Reihenfolge beeinflussen, in der eine Anforderung Zugriff auf Ressourcen erhält. Standardmäßig werden Abfragen nach dem First-In-First-Out-Prinzip aus der Warteschlange freigegeben, wenn Ressourcen verfügbar werden. Die Workloadpriorität ermöglicht es Abfragen mit höherer Priorität, Ressourcen unabhängig von der Warteschlange sofort zu erhalten.

  • Workloadisolation: Sie können Ressourcen für eine Workloadgruppe reservieren, maximale und minimale Nutzung für unterschiedliche Ressourcen zuweisen, die Ressourcen begrenzen, die eine Gruppe von Anforderungen verbrauchen kann, und einen Zeitüberschreitungswert festlegen, um außer Kontrolle geratene Abfragen automatisch zu beenden.

Das Ausführen gemischter Workloads kann bei ausgelasteten Systemen zu Ressourcenproblemen führen. Ein erfolgreiches Workload-Management-Schema verwaltet Ressourcen effektiv, stellt eine hocheffiziente Ressourcennutzung sicher und maximiert die Kapitalrendite (ROI). Die Workload-Klassifizierung, die Workloadpriorität und die Workloadisolation bieten mehr Kontrolle darüber, wie die Workload Systemressourcen nutzt.

Im Workload Management Guide (Handbuch zur Workloadverwaltung) werden die Techniken zur Analyse der Workload, der Verwaltung und Überwachung der Workloadpriorität](../../sql-data-warehouse/sql-data-warehouse-how-to-manage-and-monitor-workload-importance.md) sowie die Schritte zum Konvertieren einer Ressourcenklasse in eine Workload-Gruppe beschrieben. Verwenden Sie das Azure-Portal und T-SQL-Abfragen auf DMVs, um die Workload zu überwachen und sicherzustellen, dass die entsprechenden Ressourcen effizient genutzt werden. Azure Synapse stellt eine Reihe von dynamischen Verwaltungssichten (Dynamic Management Views, DMVs) bereit, um alle Aspekte der Workloadverwaltung zu überwachen. Diese Ansichten sind hilfreich bei der aktiven Problembehandlung und Identifizierung von Leistungsengpässen in Ihrer Workload.

Diese Informationen können auch für die Kapazitätsplanung verwendet werden und bestimmen, welche Ressourcen für zusätzliche Benutzer oder Anwendungsworkloads erforderlich sind. Dies gilt auch für die Planung des Hoch- und Herunterskalierens von Computeressourcen, um Workloads mit Auslastungsspitzen kosteneffizient zu unterstützen, z. B. Workloads mit temporären, intensiven Aktivitätsspitzen zwischen Zeiten mit geringer Aktivität.

Weitere Informationen zur Workloadverwaltung in Azure Synapse finden Sie unter Workloadverwaltung mit Ressourcenklassen.

Skalieren von Computeressourcen

Tipp

Ein großer Vorteil von Azure ist die Möglichkeit, Ressourcen nach Bedarf separat hoch- und herunterzuskalieren, um die Kosten für Workloads mit Auslastungsspitzen zu optimieren.

Die Architektur von Azure Synapse trennt Speicher und Compute, sodass jeder unabhängig skaliert werden kann. Dies ermöglicht die Skalierung von Computeressourcen, um Leistungsanforderungen unabhängig vom Datenspeicher zu erfüllen. Sie können Computeressourcen auch anhalten und fortsetzen. Ein natürlicher Vorteil dieser Architektur ist, dass die Abrechnung für Rechenressourcen und Speicher getrennt erfolgen kann. Wenn ein Data Warehouse nicht verwendet wird, können Sie Rechenleistungskosten sparen, indem Sie die Rechenleistung pausieren.

Computeressourcen können durch Anpassen der Einstellung für die Data Warehouse-Einheiten des Data Warehouse hoch- oder herunterskaliert werden. Die Lade- und Abfrageleistung wird linear erhöht, wenn Sie weitere Data Warehouse-Einheiten hinzufügen.

Durch das Hinzufügen weiterer Computeknoten werden mehr Rechenleistung und mehr Möglichkeiten zur Nutzung der parallelen Verarbeitung hinzugefügt. Da sich die Anzahl der Computeknoten erhöht, verringert sich die Anzahl der Verteilungen pro Computeknoten, wodurch mehr Rechenleistung und parallele Verarbeitung für Abfragen bereitgestellt werden. Entsprechend reduziert das Verringern von Data Warehouse-Einheiten die Anzahl der Computeknoten, wodurch die Computeressourcen für Abfragen reduziert werden.

Nächste Schritte

Weitere Informationen zu Visualisierung und Berichterstellung finden Sie im nächsten Artikel dieser Reihe: Visualisierung und Berichterstellung für Netezza-Migrationen.