Zabezpieczenia, dostęp i operacje migracji Netezza
Ten artykuł jest trzecią częścią siedmioczęściowej serii, która zawiera wskazówki dotyczące migracji z platformy Netezza do usługi Azure Synapse Analytics. Celem tego artykułu są najlepsze rozwiązania dotyczące operacji dostępu do zabezpieczeń.
Zagadnienia dotyczące zabezpieczeń
W tym artykule omówiono metody połączeń dla istniejących starszych środowisk Netezza oraz sposób ich migracji do usługi Azure Synapse Analytics z minimalnym ryzykiem i wpływem użytkowników.
W tym artykule przyjęto założenie, że istnieje wymóg migrowania istniejących metod połączenia i struktury użytkownika/roli/uprawnień zgodnie z oczekiwaniami. Jeśli nie, użyj witryny Azure Portal, aby utworzyć nowy system zabezpieczeń i zarządzać nim.
Aby uzyskać więcej informacji na temat opcji zabezpieczeń usługi Azure Synapse, zobacz Oficjalny dokument dotyczący zabezpieczeń.
Połączenie i uwierzytelnianie
Napiwek
Uwierzytelnianie zarówno w netezza, jak i w usłudze Azure Synapse może być "w bazie danych" lub za pośrednictwem metod zewnętrznych.
Opcje autoryzacji Netezza
System IBM Netezza oferuje kilka metod uwierzytelniania dla użytkowników bazy danych Netezza:
Uwierzytelnianie lokalne: administratorzy Netezza definiują użytkowników bazy danych i ich hasła przy użyciu polecenia lub za pośrednictwem
CREATE USER
interfejsów administracyjnych Netezza. W przypadku uwierzytelniania lokalnego użyj systemu Netezza, aby zarządzać kontami bazy danych i hasłami oraz dodawać i usuwać użytkowników bazy danych z systemu. Ta metoda jest domyślną metodą uwierzytelniania.Uwierzytelnianie LDAP: użyj serwera nazw LDAP, aby uwierzytelnić użytkowników bazy danych i zarządzać hasłami, aktywacjami kont bazy danych i dezaktywacjami. System Netezza używa modułu pluggable Authentication Module (PAM) do uwierzytelniania użytkowników na serwerze nazw LDAP. Usługa Microsoft Active Directory jest zgodna z protokołem LDAP, więc może być traktowana jak serwer LDAP na potrzeby uwierzytelniania LDAP.
Uwierzytelnianie Kerberos: użyj serwera dystrybucji Kerberos do uwierzytelniania użytkowników bazy danych i zarządzania hasłami, aktywacjami kont bazy danych i dezaktywacjami.
Uwierzytelnianie jest ustawieniem obejmującym cały system. Użytkownicy muszą być uwierzytelniani lokalnie lub uwierzytelniani przy użyciu metody LDAP lub Kerberos. Jeśli wybierzesz uwierzytelnianie LDAP lub Kerberos, utwórz użytkowników z uwierzytelnianiem lokalnym dla poszczególnych użytkowników. Protokoły LDAP i Kerberos nie mogą być używane jednocześnie do uwierzytelniania użytkowników. Host Netezza obsługuje uwierzytelnianie LDAP lub Kerberos tylko dla identyfikatorów logowania użytkowników bazy danych, a nie dla logowań systemu operacyjnego na hoście.
Opcje autoryzacji usługi Azure Synapse
Usługa Azure Synapse obsługuje dwie podstawowe opcje połączenia i autoryzacji:
Uwierzytelnianie SQL: uwierzytelnianie SQL odbywa się za pośrednictwem połączenia z bazą danych, które zawiera identyfikator bazy danych, identyfikator użytkownika i hasło oraz inne parametry opcjonalne. Jest to funkcjonalnie równoważne z połączeniami lokalnymi Netezza.
Uwierzytelnianie firmy Microsoft Entra: za pomocą uwierzytelniania firmy Microsoft Entra można centralnie zarządzać tożsamościami użytkowników bazy danych i innymi usługi firmy Microsoft w jednej centralnej lokalizacji. Centralne zarządzanie identyfikatorami zapewnia jedno miejsce do zarządzania użytkownikami usługi Azure Synapse i upraszcza zarządzanie uprawnieniami. Identyfikator Entra firmy Microsoft może również obsługiwać połączenia z usługami LDAP i Kerberos — na przykład identyfikator Entra firmy Microsoft może służyć do nawiązywania połączenia z istniejącymi katalogami LDAP, jeśli mają one pozostać w miejscu po migracji bazy danych.
Użytkownicy, role i uprawnienia
Omówienie
Napiwek
Planowanie wysokiego poziomu jest niezbędne dla pomyślnego projektu migracji.
Zarówno Netezza, jak i Azure Synapse implementują kontrolę dostępu do bazy danych za pomocą kombinacji użytkowników, ról (grup w netezza) i uprawnień. Obie metody używają standardowego języka SQL CREATE USER
i CREATE ROLE/GROUP
instrukcji do definiowania użytkowników i ról oraz GRANT
REVOKE
instrukcji w celu przypisywania lub usuwania uprawnień do tych użytkowników i/lub ról.
Napiwek
Automatyzacja procesów migracji jest zalecana, aby skrócić czas i zakres błędów.
Koncepcyjnie dwie bazy danych są podobne i może być możliwe zautomatyzowanie migracji istniejących identyfikatorów użytkowników, grup i uprawnień do pewnego stopnia. Przeprowadź migrację takich danych, wyodrębniając istniejące informacje o starszych użytkownikach i grupach z tabel katalogu systemu Netezza i generując pasujące równoważne CREATE USER
instrukcje i CREATE ROLE
uruchamiane w usłudze Azure Synapse w celu ponownego utworzenia tej samej hierarchii użytkownika/roli.
Po wyodrębnieniu danych użyj tabel wykazu systemowego Netezza, aby wygenerować równoważne GRANT
instrukcje w celu przypisania uprawnień (gdzie istnieje odpowiednik). Na poniższym diagramie pokazano, jak używać istniejących metadanych do generowania niezbędnego kodu SQL.
Więcej szczegółów można znaleźć w poniższych sekcjach.
Użytkownicy i role
Napiwek
Migracja magazynu danych wymaga więcej niż tylko tabel, widoków i instrukcji SQL.
Informacje o bieżących użytkownikach i grupach w systemie Netezza są przechowywane w widokach _v_users
katalogu systemu i _v_groupusers
. Użyj narzędzia lub narzędzi nzsql, takich jak Netezza Performance, Nz Administracja lub Netezza Utility skrypty, aby wyświetlić listę uprawnień użytkownika. Na przykład użyj poleceń i dpgu
w narzędziu dpu
nzsql, aby wyświetlić użytkowników lub grupy z ich uprawnieniami.
Użyj lub zmodyfikuj skrypty nz_get_users
narzędzi i nz_get_user_groups
pobierz te same informacje w wymaganym formacie.
Wykonywanie zapytań dotyczących widoków wykazu systemu bezpośrednio (jeśli użytkownik ma SELECT
dostęp do tych widoków), aby uzyskać bieżące listy użytkowników i ról zdefiniowanych w systemie. Zobacz przykłady, aby wyświetlić listę użytkowników, grup lub użytkowników i skojarzonych z nimi grup:
-- 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;
Zmodyfikuj przykładową SELECT
instrukcję, aby wygenerować zestaw wyników, który jest serią instrukcji CREATE USER
i CREATE GROUP
, uwzględniając odpowiedni tekst jako literał w instrukcji SELECT
.
Nie ma możliwości pobrania istniejących haseł, dlatego należy zaimplementować schemat przydzielania nowych haseł początkowych w usłudze Azure Synapse.
Uprawnienia
Napiwek
Istnieją równoważne uprawnienia usługi Azure Synapse dla podstawowych operacji bazy danych, takich jak DML i DDL.
W systemie Netezza tabela _t_usrobj_priv
systemowa zawiera prawa dostępu dla użytkowników i ról. Wykonaj zapytanie względem tych tabel (jeśli użytkownik ma SELECT
dostęp do tych tabel), aby uzyskać bieżące listy praw dostępu zdefiniowanych w systemie.
W netezza poszczególne uprawnienia są reprezentowane jako pojedyncze bity w ramach uprawnień pola lub g_privileges. Zobacz przykład instrukcję SQL w sekcji Uprawnienia grupy użytkowników
Najprostszym sposobem uzyskania skryptu DDL zawierającego GRANT
polecenia replikacji bieżących uprawnień dla użytkowników i grup jest użycie odpowiednich skryptów narzędzi Netezza:
--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;
Plik wyjściowy można zmodyfikować w celu utworzenia skryptu, który jest serią instrukcji GRANT
dla usługi Azure Synapse.
Platforma Netezza obsługuje dwie klasy praw dostępu, Administracja i Object. Zobacz poniższe tabele, aby zapoznać się z listą praw dostępu Netezza i ich odpowiednikami w usłudze Azure Synapse.
uprawnienia Administracja | opis | Odpowiednik usługi Azure Synapse |
---|---|---|
Wykonywanie kopii zapasowej | Umożliwia użytkownikowi tworzenie kopii zapasowych. Użytkownik może uruchamiać kopie zapasowe. Użytkownik może uruchomić polecenie nzbackup . |
1 |
[Utwórz] Agregacji | Umożliwia użytkownikowi tworzenie agregacji zdefiniowanych przez użytkownika (UA). Uprawnienie do działania na istniejących obiektach zdefiniowanych przez użytkownika jest kontrolowane przez uprawnienia obiektu. | CREATE, FUNKCJA 3 |
[Utwórz] Bazy danych | Umożliwia użytkownikowi tworzenie baz danych. Uprawnienia do działania na istniejących bazach danych są kontrolowane przez uprawnienia obiektu. | CREATE DATABASE |
[Utwórz] Tabela zewnętrzna | Umożliwia użytkownikowi tworzenie tabel zewnętrznych. Uprawnienia do działania w istniejących tabelach są kontrolowane przez uprawnienia obiektu. | CREATE TABLE |
[Utwórz] Funkcja | Umożliwia użytkownikowi tworzenie funkcji zdefiniowanych przez użytkownika (UDF). Uprawnienie do działania na istniejących funkcjach zdefiniowanych przez użytkownika jest kontrolowane przez uprawnienia obiektu. | CREATE FUNCTION |
[Utwórz] Grupa | Umożliwia użytkownikowi tworzenie grup. Uprawnienia do działania w istniejących grupach są kontrolowane przez uprawnienia obiektu. | TWORZENIE ROLI |
[Utwórz] Indeks | Tylko w przypadku systemu. Użytkownicy nie mogą tworzyć indeksów. | CREATE INDEX |
[Utwórz] Biblioteki | Umożliwia użytkownikowi tworzenie bibliotek udostępnionych. Uprawnienia do działania na istniejących bibliotekach udostępnionych są kontrolowane przez uprawnienia obiektu. | 1 |
[Utwórz] Zmaterializowany widok | Umożliwia użytkownikowi tworzenie zmaterializowanych widoków. | TWORZENIE WIDOKU |
[Utwórz] Procedura | Umożliwia użytkownikowi tworzenie procedur składowanych. Uprawnienia do wykonywania istniejących procedur składowanych są kontrolowane przez uprawnienia obiektu. | TWORZENIE PROCEDURY |
[Utwórz] Schematu | Umożliwia użytkownikowi tworzenie schematów. Uprawnienia do działania na istniejących schematach są kontrolowane przez uprawnienia obiektu. | TWORZENIE SCHEMATU |
[Utwórz] Sekwencji | Umożliwia użytkownikowi tworzenie sekwencji baz danych. | 1 |
[Utwórz] Synonim | Umożliwia użytkownikowi tworzenie synonimów. | TWORZENIE SYNONIMU |
[Utwórz] Tabeli | Umożliwia użytkownikowi tworzenie tabel. Uprawnienia do działania w istniejących tabelach są kontrolowane przez uprawnienia obiektu. | CREATE TABLE |
[Utwórz] Tabela tymczasowa | Umożliwia użytkownikowi tworzenie tabel tymczasowych. Uprawnienia do działania w istniejących tabelach są kontrolowane przez uprawnienia obiektu. | CREATE TABLE |
[Utwórz] Użytkownika | Umożliwia użytkownikowi tworzenie użytkowników. Uprawnienia do działania na istniejących użytkownikach są kontrolowane przez uprawnienia obiektu. | TWORZENIE UŻYTKOWNIKA |
[Utwórz] Widok | Umożliwia użytkownikowi tworzenie widoków. Uprawnienia do obsługi istniejących widoków są kontrolowane przez uprawnienia obiektu. | TWORZENIE WIDOKU |
[Zarządzanie sprzętem | Umożliwia użytkownikowi wykonywanie następujących operacji związanych ze sprzętem: wyświetlanie stanu sprzętu, zarządzanie jednostkami SPU, zarządzanie topologią i dublowaniem oraz uruchamianie testów diagnostycznych. Użytkownik może uruchamiać następujące polecenia: nzhw i nzds. | 4 |
[Zarządzanie zabezpieczeniami | Umożliwia użytkownikowi uruchamianie poleceń i operacji związanych z następującymi zaawansowanymi opcjami zabezpieczeń, takimi jak zarządzanie bazami danych historii i konfigurowanie ich, zarządzanie obiektami zabezpieczeń na poziomie oraz określanie zabezpieczeń dla użytkowników i grup, zarządzanie magazynami kluczy bazy danych oraz kluczami i magazynami kluczy na potrzeby cyfrowego podpisywania danych inspekcji. | 4 |
[Zarządzanie systemem | Umożliwia użytkownikowi wykonywanie następujących operacji zarządzania: uruchamianie/zatrzymywanie/wstrzymywanie/wznawianie systemu, przerwanie sesji, wyświetlanie mapy dystrybucji, statystyk systemowych i dzienników. Użytkownik może użyć tych poleceń: nzsystem, nzstate, nzstats i nzsession. | 4 |
Przywracanie | Umożliwia użytkownikowi przywrócenie systemu. Użytkownik może uruchomić polecenie nzrestore. | 2 |
Niezauważalne | Umożliwia użytkownikowi tworzenie lub zmienianie zdefiniowanej przez użytkownika funkcji lub agregacji w trybie nieufenced. | 1 |
Przerwanie uprawnień obiektu | opis | Odpowiednik usługi Azure Synapse |
---|---|---|
Przerwij | Umożliwia użytkownikowi przerwanie sesji. Dotyczy grup i użytkowników. | ZABIJ POŁĄCZENIE Z BAZĄ DANYCH |
Modyfikowanie | Umożliwia użytkownikowi modyfikowanie atrybutów obiektu. Dotyczy wszystkich obiektów. | ZMIENIANIE |
Delete | Umożliwia użytkownikowi usuwanie wierszy tabeli. Dotyczy tylko tabel. | USUŃ |
Porzuć | Umożliwia użytkownikowi usuwanie obiektów. Dotyczy wszystkich typów obiektów. | DROP |
Wykonywanie | Umożliwia użytkownikowi uruchamianie funkcji zdefiniowanych przez użytkownika, agregacji zdefiniowanych przez użytkownika lub procedur składowanych. | WYKONAJ |
GenStats | Umożliwia użytkownikowi generowanie statystyk dotyczących tabel lub baz danych. Użytkownik może uruchomić polecenie GENERATE STATISTICS. | 2 |
Pana młodego | Umożliwia użytkownikowi odzyskanie miejsca na dysku dla usuniętych lub nieaktualnych wierszy oraz reorganizację tabeli za pomocą kluczy organizacyjnych lub migrację danych dla tabel z wieloma przechowywanymi wersjami. | 2 |
Insert | Umożliwia użytkownikowi wstawianie wierszy do tabeli. Dotyczy tylko tabel. | INSERT |
List | Umożliwia użytkownikowi wyświetlanie nazwy obiektu na liście lub w inny sposób. Dotyczy wszystkich obiektów. | LISTA |
Wybierz pozycję | Umożliwia użytkownikowi wybieranie (lub wykonywanie zapytań) wierszy w tabeli. Dotyczy tabel i widoków. | WYBIERZ |
Truncate | Umożliwia użytkownikowi usunięcie wszystkich wierszy z tabeli. Dotyczy tylko tabel. | OBCIĄĆ |
Zaktualizuj | Umożliwia użytkownikowi modyfikowanie wierszy tabeli. Dotyczy tylko tabel. | AKTUALIZUJ |
Uwagi dotyczące tabeli:
Nie ma bezpośredniego odpowiednika tej funkcji w usłudze Azure Synapse.
Te funkcje Netezza są obsługiwane automatycznie w usłudze Azure Synapse.
Funkcja usługi Azure Synapse
CREATE FUNCTION
obejmuje funkcję agregacji Netezza.Te funkcje są zarządzane automatycznie przez system lub za pośrednictwem witryny Azure Portal w usłudze Azure Synapse. Zobacz następną sekcję dotyczącą zagadnień operacyjnych.
Zapoznaj się z tematem Azure Synapse Analytics security permissions (Uprawnienia zabezpieczeń usługi Azure Synapse Analytics).
Zagadnienia operacyjne
Napiwek
Zadania operacyjne są niezbędne do wydajnego działania magazynu danych.
W tej sekcji omówiono sposób implementowania typowych zadań operacyjnych Netezza w usłudze Azure Synapse z minimalnym ryzykiem i wpływem na użytkowników.
Podobnie jak w przypadku wszystkich produktów magazynu danych, gdy w środowisku produkcyjnym istnieją bieżące zadania zarządzania, które są niezbędne do wydajnego działania systemu i zapewnienia danych na potrzeby monitorowania i inspekcji. Wykorzystanie zasobów i planowanie pojemności na potrzeby przyszłego wzrostu również należy do tej kategorii, podobnie jak tworzenie kopii zapasowych/przywracanie danych.
Zadania administracyjne Netezza zwykle należą do dwóch kategorii:
Administracja systemem, która zarządza sprzętem, ustawieniami konfiguracji, stanem systemu, dostępem, miejscem na dysku, użyciem, uaktualnieniami i innymi zadaniami.
Administracja bazą danych, która zarządza bazami danych użytkowników i ich zawartością, ładowaniem danych, tworzeniem kopii zapasowych danych, przywracaniem danych i kontrolowaniem dostępu do danych i uprawnień.
Ibm Netezza oferuje kilka sposobów lub interfejsów, których można użyć do wykonywania różnych zadań zarządzania systemami i bazami danych:
Polecenia Netezza (
nz*
polecenia) są instalowane w/nz/kit/bin
katalogu na hoście Netezza. W przypadku wielunz*
poleceń musisz mieć możliwość zalogowania się do systemu Netezza, aby uzyskać dostęp do tych poleceń i uruchomić te polecenia. W większości przypadków użytkownicy loguje się jako domyślnenz
konto użytkownika, ale możesz utworzyć inne konta użytkowników systemu Linux w systemie. Niektóre polecenia wymagają określenia konta użytkownika bazy danych, hasła i bazy danych, aby upewnić się, że masz uprawnienia do wykonania tego zadania.Zestawy klienta interfejsu wiersza polecenia Netezza pakują podzbiór
nz*
poleceń, które można uruchamiać z systemu Windows i system UNIX systemów klienckich. Polecenia klienta mogą również wymagać określenia konta użytkownika bazy danych, hasła i bazy danych, aby upewnić się, że masz uprawnienia administracyjne i obiekty bazy danych do wykonania zadania.Polecenia SQL obsługują zadania administracyjne i zapytania w ramach sesji bazy danych SQL. Polecenia SQL można uruchamiać z interpretera poleceń Netezza nzsql lub za pośrednictwem interfejsów API SQL, takich jak ODBC, JDBC i dostawca OLE DB. Musisz mieć konto użytkownika bazy danych, aby uruchamiać polecenia SQL z odpowiednimi uprawnieniami dla wykonywanych zapytań i zadań.
Narzędzie Nz Administracja to interfejs Netezza działający na stacjach roboczych klienta systemu Windows do zarządzania systemami Netezza.
Chociaż koncepcyjnie zadania związane z zarządzaniem i operacjami dla różnych magazynów danych są podobne, poszczególne implementacje mogą się różnić. Ogólnie rzecz biorąc, nowoczesne produkty oparte na chmurze, takie jak Azure Synapse, mają tendencję do uwzględnienia bardziej zautomatyzowanego i "zarządzanego przez system" podejścia (w przeciwieństwie do bardziej "ręcznego" podejścia w starszych magazynach danych, takich jak Netezza).
W poniższych sekcjach porównaliśmy opcje Netezza i Azure Synapse dla różnych zadań operacyjnych.
Zadania sprzątania
Napiwek
Zadania utrzymania domu umożliwiają wydajne działanie magazynu produkcyjnego i optymalizowanie wykorzystania zasobów, takich jak magazyn.
W większości starszych środowisk magazynu danych regularne zadania "sprzątania" są czasochłonne. Odzyskiwanie miejsca do magazynowania na dysku przez usunięcie starych wersji zaktualizowanych lub usuniętych wierszy albo reorganizację danych, plików dziennika lub bloków indeksu w celu zwiększenia wydajności (GROOM
i VACUUM
w netezza). Zbieranie statystyk jest również potencjalnie czasochłonnym zadaniem wymaganym po pozyskiwaniu zbiorczych danych w celu udostępnienia optymalizatorowi zapytań aktualnych danych, na których mają być oparte plany wykonywania zapytań.
Netezza zaleca zbieranie statystyk w następujący sposób:
Zbierz statystyki dotyczące niepopulatowanych tabel, aby skonfigurować histogram interwału używany w przetwarzaniu wewnętrznym. Ta początkowa kolekcja sprawia, że kolejne kolekcje statystyk są szybsze. Pamiętaj, aby ponownie tworzyć statystyki po dodaniu danych.
Zbieranie statystyk fazy prototypu dla nowo wypełnionych tabel.
Zbierz statystyki fazy produkcji po znacznej wartości procentowej zmiany tabeli lub partycji (ok. 10% wierszy). W przypadku dużych ilości wartości niepowiązanych, takich jak daty lub znaczniki czasu, korzystne może być ponowne zbieranie na poziomie 7%.
Zbierz statystyki fazy produkcji po utworzeniu użytkowników i zastosowaniu rzeczywistych obciążeń zapytań do bazy danych (do około trzech miesięcy wykonywania zapytań).
Zbierz statystyki w ciągu pierwszych kilku tygodni po uaktualnieniu lub migracji w okresach niskiego wykorzystania procesora CPU.
Baza danych Netezza zawiera wiele tabel dzienników w słowniku danych, które gromadzą dane automatycznie lub po włączeniu niektórych funkcji. Ponieważ dane dziennika rosną wraz z upływem czasu, przeczyść starsze informacje, aby uniknąć używania stałego miejsca. Dostępne są opcje automatyzacji konserwacji tych dzienników.
Napiwek
Automatyzowanie i monitorowanie zadań utrzymywania domu na platformie Azure.
Usługa Azure Synapse ma możliwość automatycznego tworzenia statystyk, dzięki czemu mogą być używane zgodnie z potrzebami. Wykonaj defragmentację indeksów i bloków danych ręcznie, zgodnie z harmonogramem lub automatycznie. Wykorzystanie natywnych wbudowanych funkcji platformy Azure może zmniejszyć nakład pracy wymagany w ćwiczeniu migracji.
Monitorowanie i inspekcja
Napiwek
Portal wydajności Netezza to zalecana metoda monitorowania i rejestrowania dla systemów Netezza.
Netezza udostępnia portal Netezza Performance Portal do monitorowania różnych aspektów co najmniej jednego systemu Netezza, w tym działań, wydajności, kolejkowania i wykorzystania zasobów. Netezza Performance Portal to interaktywny graficzny interfejs użytkownika, który umożliwia użytkownikom przechodzenie do szczegółów niskiego poziomu dla dowolnego wykresu.
Napiwek
Witryna Azure Portal udostępnia interfejs użytkownika do zarządzania zadaniami monitorowania i inspekcji dla wszystkich danych i procesów platformy Azure.
Podobnie usługa Azure Synapse udostępnia zaawansowane środowisko monitorowania w witrynie Azure Portal, aby zapewnić wgląd w obciążenie magazynu danych. Witryna Azure Portal jest zalecanym narzędziem do monitorowania magazynu danych, ponieważ zapewnia konfigurowalne okresy przechowywania, alerty, zalecenia i dostosowywalne wykresy i pulpity nawigacyjne dla metryk i dzienników.
Portal umożliwia również integrację z innymi usługami monitorowania platformy Azure, takimi jak Operations Management Suite (OMS) i Azure Monitor (dzienniki), aby zapewnić całościowe środowisko monitorowania nie tylko dla magazynu danych, ale także całej platformy analizy Azure na potrzeby zintegrowanego środowiska monitorowania.
Napiwek
Metryki niskiego poziomu i całego systemu są automatycznie rejestrowane w usłudze Azure Synapse.
Statystyki wykorzystania zasobów dla usługi Azure Synapse są automatycznie rejestrowane w systemie. Metryki dla każdego zapytania obejmują statystyki użycia procesora CPU, pamięci, pamięci podręcznej, operacji we/wy i tymczasowego obszaru roboczego, a także informacje o łączności, takie jak nieudane próby połączenia.
Usługa Azure Synapse udostępnia zestaw dynamicznych widoków zarządzania (DMV). Te widoki są przydatne podczas aktywnego rozwiązywania problemów i identyfikowania wąskich gardeł wydajności w obciążeniu.
Aby uzyskać więcej informacji, zobacz Azure Synapse operations and management options (Operacje i opcje zarządzania w usłudze Azure Synapse).
Wysoka dostępność (HA) i odzyskiwanie po awarii (DR)
Urządzenia Netezza są nadmiarowe, odporne na uszkodzenia systemy, a w systemie Netezza dostępne są różne opcje umożliwiające wysoką dostępność i odzyskiwanie po awarii.
Dodanie usług replikacji IBM Netezza na potrzeby odzyskiwania po awarii zwiększa odporność na uszkodzenia dzięki rozszerzeniu nadmiarowości w sieciach lokalnych i szerokich.
Usługi replikacji IBM Netezza chronią przed utratą danych przez synchronizowanie danych w systemie podstawowym (w węźle podstawowym) z danymi na co najmniej jednym węźle docelowym (podrzędnych). Te węzły tworzą zestaw replikacji.
System Linux o wysokiej dostępności (nazywany również linux-HA) zapewnia możliwości trybu failover z podstawowego lub aktywnego hosta Netezza do pomocniczego lub rezerwowego hosta Netezza. Główny demon zarządzania klastrem w rozwiązaniu Linux-HA jest nazywany pulsem. Puls monitoruje hosty i zarządza sprawdzaniem komunikacji i stanu usług.
Każda usługa jest zasobem.
Netezza grupuje usługi specyficzne dla platformy Netezza w grupie zasobów nps. Gdy puls wykrywa problemy, które sugerują, że stan awarii hosta lub utrata usługi dla użytkowników Netezza, puls może zainicjować przejście w tryb failover do hosta rezerwowego.
Rozproszone replikowane urządzenie blokowe (DRBD) to sterownik urządzenia blokowego, który odzwierciedla zawartość urządzeń blokowych (dysków twardych, partycji i woluminów logicznych) między hostami. Netezza używa replikacji DRBD tylko w partycjach /nz i /export/home . Ponieważ nowe dane są zapisywane w partycji /nz i /export/home partycji na hoście podstawowym, oprogramowanie DRBD automatycznie wprowadza te same zmiany w partycji /nz i /export/home hosta rezerwowego.
Napiwek
Usługa Azure Synapse automatycznie tworzy migawki w celu zapewnienia szybkiego czasu odzyskiwania.
Usługa Azure Synapse używa migawek baz danych w celu zapewnienia wysokiej dostępności magazynu. Migawka magazynu danych tworzy punkt przywracania, którego można użyć do odzyskania lub skopiowania magazynu danych do poprzedniego stanu. Ponieważ usługa Azure Synapse jest systemem rozproszonym, migawka magazynu danych składa się z wielu plików, które znajdują się w usłudze Azure Storage. Migawki przechwytują przyrostowe zmiany danych przechowywanych w magazynie danych.
Napiwek
Użyj migawek zdefiniowanych przez użytkownika, aby zdefiniować punkt odzyskiwania przed aktualizacjami klucza.
Napiwek
Platforma Microsoft Azure udostępnia automatyczne kopie zapasowe do oddzielnej lokalizacji geograficznej w celu włączenia odzyskiwania po awarii.
Usługa Azure Synapse automatycznie tworzy migawki przez cały dzień, tworząc punkty przywracania, które są dostępne przez siedem dni. Nie można zmienić tego okresu przechowywania. Usługa Azure Synapse obsługuje ośmiogodzinny cel punktu odzyskiwania (RPO). Magazyn danych można przywrócić w regionie podstawowym z dowolnej migawki wykonanej w ciągu ostatnich siedmiu dni.
Obsługiwane są również punkty przywracania zdefiniowane przez użytkownika, co umożliwia ręczne wyzwalanie migawek w celu utworzenia punktów przywracania magazynu danych przed dużymi modyfikacjami. Ta funkcja gwarantuje, że punkty przywracania są logicznie spójne, co zapewnia dodatkową ochronę danych w przypadku przerw w obciążeniu lub błędów użytkownika dla żądanego celu punktu odzyskiwania krótszego niż 8 godzin.
Oprócz opisanych wcześniej migawek usługa Azure Synapse również wykonuje standardowa geograficzną kopię zapasową raz dziennie w sparowanym centrum danych. Cel punktu odzyskiwania dla przywracania geograficznego wynosi 24 godziny. Możesz przywrócić geograficzną kopię zapasową na serwer w dowolnym innym regionie, w którym jest obsługiwana usługa Azure Synapse. Geograficzna kopia zapasowa gwarantuje, że magazyn danych można przywrócić w przypadku niedostępności punktów przywracania w regionie podstawowym.
Zarządzanie obciążeniami
Napiwek
W magazynie danych produkcyjnych zwykle występują mieszane obciążenia z różnymi charakterystykami użycia zasobów uruchomionymi współbieżnie.
Platforma Netezza obejmuje różne funkcje zarządzania obciążeniami:
Technika | opis |
---|---|
Reguły harmonogramu | Reguły harmonogramu wpływają na planowanie planów. Każda reguła harmonogramu określa warunek lub zestaw warunków. Za każdym razem, gdy harmonogram otrzymuje plan, ocenia wszystkie modyfikujące reguły harmonogramu i wykonuje odpowiednie akcje. Za każdym razem, gdy harmonogram wybiera plan wykonania, ocenia wszystkie reguły harmonogramu ograniczające. Plan jest wykonywany tylko wtedy, gdy nie przekroczy limitu nałożonego przez regułę harmonogramu ograniczającego. W przeciwnym razie plan czeka. Zapewnia to sposób klasyfikowania i manipulowania planami w sposób, który wpływa na inne techniki WLM (SQB, GRA i PQE). |
Gwarantowana alokacja zasobów (GRA) | Do jednostek nazywanych grupami zasobów można przypisać minimalny udział i maksymalny procent całkowitych zasobów systemowych. Harmonogram zapewnia, że każda grupa zasobów odbiera zasoby systemowe proporcjonalnie do jego minimalnego udziału. Grupa zasobów otrzymuje większy udział zasobów, gdy inne grupy zasobów są bezczynne, ale nigdy nie otrzymuje więcej niż skonfigurowany maksymalny procent. Każdy plan jest skojarzony z grupą zasobów, a ustawienia tej grupy zasobów określają ułamek dostępnych zasobów systemowych, które mają zostać udostępnione do przetworzenia planu. |
Krótka stronnicza stronnicza kwerenda (SQB) | Zasoby (czyli planowanie miejsc, pamięci i preferencyjnej kolejki) są zarezerwowane dla krótkich zapytań. Krótkie zapytanie to zapytanie, dla którego szacowany koszt jest mniejszy niż określona wartość maksymalna (wartość domyślna to dwie sekundy). Dzięki funkcji SQB krótkie zapytania mogą być uruchamiane nawet wtedy, gdy system jest zajęty przetwarzaniem innych, dłuższych zapytań. |
Priorytetowe wykonywanie zapytań (PQE) | Na podstawie skonfigurowanych ustawień system przypisuje priorytet — krytyczny, wysoki, normalny lub niski — do każdego zapytania. Priorytet zależy od czynników, takich jak użytkownik, grupa lub sesja skojarzona z zapytaniem. System może następnie używać priorytetu jako podstawy do przydzielania zasobów. |
Usługa Azure Synapse automatycznie rejestruje statystyki wykorzystania zasobów. Metryki obejmują statystyki użycia procesora CPU, pamięci, pamięci podręcznej, operacji we/wy i tymczasowego obszaru roboczego dla każdego zapytania. Usługa Azure Synapse rejestruje również informacje o łączności, takie jak nieudane próby połączenia.
Napiwek
Metryki niskiego poziomu i całego systemu są automatycznie rejestrowane na platformie Azure.
W usłudze Azure Synapse klasy zasobów są wstępnie określonymi limitami zasobów, które zarządzają zasobami obliczeniowymi i współbieżnością na potrzeby wykonywania zapytań. Klasy zasobów mogą ułatwić zarządzanie obciążeniem, ustawiając limity liczby zapytań uruchamianych współbieżnie i zasobów obliczeniowych przypisanych do każdego zapytania. Istnieje kompromis między pamięcią a współbieżnością.
Usługa Azure Synapse obsługuje następujące podstawowe pojęcia dotyczące zarządzania obciążeniami:
Klasyfikacja obciążeń: możesz przypisać żądanie do grupy obciążeń w celu ustawienia poziomów ważności.
Ważność obciążenia: możesz wpływać na kolejność, w jakiej żądanie uzyskuje dostęp do zasobów. Domyślnie zapytania są zwalniane z kolejki w pierwszej kolejności, gdy zasoby stają się dostępne. Ważność obciążenia umożliwia wykonywanie zapytań o wyższym priorytcie natychmiast odbierać zasoby niezależnie od kolejki.
Izolacja obciążenia: możesz zarezerwować zasoby dla grupy obciążeń, przypisać maksymalne i minimalne użycie dla różnych zasobów, ograniczyć zasoby, z których może korzystać grupa żądań, i ustawić wartość limitu czasu, aby automatycznie zabić zapytania uruchamiania.
Uruchamianie mieszanych obciążeń może stanowić wyzwanie dla zasobów w systemach zajętych. Pomyślny schemat zarządzania obciążeniami skutecznie zarządza zasobami, zapewnia wysoce wydajne wykorzystanie zasobów i maksymalizuje zwrot z inwestycji (ROI). Klasyfikacja obciążeń, ważność obciążenia i izolacja obciążenia zapewnia większą kontrolę nad sposobem korzystania z zasobów systemowych przez obciążenie.
W przewodniku zarządzania obciążeniami opisano techniki analizowania obciążenia, zarządzania i monitorowania ważności obciążenia](.. /.. /sql-data-warehouse/sql-data-warehouse-how-to-manage-and-monitor-workload-importance.md) oraz kroki konwertowania klasy zasobów na grupę obciążeń. Użyj witryny Azure Portal i zapytań T-SQL w widokach DMV, aby monitorować obciążenie w celu zapewnienia efektywnego wykorzystania odpowiednich zasobów. Usługa Azure Synapse udostępnia zestaw dynamicznych widoków zarządzania (DMV) do monitorowania wszystkich aspektów zarządzania obciążeniami. Te widoki są przydatne podczas aktywnego rozwiązywania problemów i identyfikowania wąskich gardeł wydajności w obciążeniu.
Te informacje mogą być również używane do planowania pojemności, określania zasobów wymaganych dla dodatkowych użytkowników lub obciążeń aplikacji. Dotyczy to również planowania skalowania w górę/w dół zasobów obliczeniowych pod kątem ekonomicznej obsługi "ostrych" obciążeń, takich jak obciążenia z tymczasowymi, intensywnymi wzrostami aktywności otoczonymi okresami rzadkich działań.
Aby uzyskać więcej informacji na temat zarządzania obciążeniami w usłudze Azure Synapse, zobacz Zarządzanie obciążeniami przy użyciu klas zasobów.
Skalowanie zasobów obliczeniowych
Napiwek
Główną zaletą platformy Azure jest możliwość niezależnego skalowania zasobów obliczeniowych w górę i w dół na żądanie w celu efektywnego obsługi obciążeń szczytowych.
Architektura usługi Azure Synapse oddziela magazyn i zasoby obliczeniowe, co pozwala na niezależne skalowanie każdego z nich. W związku z tym zasoby obliczeniowe można skalować w celu spełnienia wymagań dotyczących wydajności niezależnie od magazynu danych. Można również wstrzymywać i wznawiać działanie zasobów obliczeniowych. Naturalną zaletą tej architektury jest to, że rozliczenia dla zasobów obliczeniowych i magazynu są oddzielne. Jeśli magazyn danych nie jest używany, możesz zaoszczędzić na kosztach obliczeń, wstrzymując obliczenia.
Zasoby obliczeniowe można skalować w górę lub skalować z powrotem, dostosowując ustawienie jednostek magazynu danych dla magazynu danych. Wydajność ładowania i wykonywania zapytań zwiększa się liniowo w miarę dodawania większej liczby jednostek magazynu danych.
Dodanie większej liczby węzłów obliczeniowych zwiększa moc obliczeniową i możliwość korzystania z bardziej przetwarzania równoległego. Wraz ze wzrostem liczby węzłów obliczeniowych liczba dystrybucji na węzeł obliczeniowy zmniejsza się, zapewniając większą moc obliczeniową i przetwarzanie równoległe zapytań. Podobnie zmniejszenie liczby jednostek magazynu danych zmniejsza liczbę węzłów obliczeniowych, co zmniejsza zasoby obliczeniowe zapytań.
Następne kroki
Aby dowiedzieć się więcej na temat wizualizacji i raportowania, zobacz następny artykuł z tej serii: Wizualizacja i raportowanie migracji netezza.