SAP HANA Archistruktura: Przegląd bazy danych

⚡ Inteligentne podsumowanie

SAP HANA ArchiStruktura, krajobraz i rozmiar stanowią podstawę platformy danych w pamięci zbudowanej na systemie SUSE Linux i C++W tym artykule wyjaśniono serwer indeksów, silniki pamięci masowej, magazyny wierszy i kolumn, scalanie delta oraz metody określania rozmiaru sprzętu.

  • ???? Platforma podstawowa: SAP HANA to baza danych w pamięci głównej, która obsługuje obciążenia OLAP i OLTP na jednym silniku.
  • 🏗️. Komponenty serwera: Serwery indeksu, preprocesora, nazwy, statystyk i XS koordynują zapytania, metadane i usługi HTTP.
  • 📊 Model pamięci masowej: Magazyn wierszowy odzwierciedla tradycyjne systemy RDBMS; magazyn kolumnowy umożliwia kompresję, szybkie odczyty i analizę.
  • 🔄 Delta Łączyć: Dane zapisywane są w pamięci masowej delta (L1, L2), a następnie scalane z pamięcią główną zgodnie z harmonogramem lub na żądanie.
  • 📏 Sterowniki do określania rozmiaru: Podstawowym czynnikiem decydującym o rozmiarze jest pamięć, a kolejnym procesor. Dysk obsługuje trwałość i rejestrowanie danych.
  • 🛠️. Metody określania rozmiarów: Użyj raportów ABAP, skryptów DB lub SAP Narzędzie Quick Sizer do szacowania wymagań sprzętowych.

SAP HANA Archiarchitektura, krajobraz, rozmiary

Czym jest SAP Baza danych HANA?

SAP HANA to platforma zarządzania danymi oparta na pamięci głównej. Baza danych działa na serwerze SUSE Linux Enterprise Server (SLES) i Red Hat Enterprise Linux (RHEL) i jest napisany w C++. Można go skalować na wiele maszyn w przypadku bardzo dużych obciążeń.

Kluczowe zalety SAP HANA:

  • Niezwykle szybka wydajność zapytań, ponieważ wszystkie dane są ładowane do pamięci, co eliminuje powolne operacje wejścia/wyjścia na dysku z krytycznej ścieżki.
  • Mieszane przetwarzanie OLAP (Online Analytical Processing) i OLTP (Online Transaction Processing) w tej samej bazie danych, co upraszcza strukturę danych.

SAP Baza danych HANA zbudowana jest z zestawu silników przetwarzania w pamięci. Silnik Obliczeniowy jest głównym silnikiem i współpracuje z innymi silnikami, takimi jak Silnik Relacyjny (magazyn wierszy i kolumn), Silnik OLAP, Silnik Tekstowy i Silnik Graficzny. Tabela relacyjna znajduje się w magazynie wierszy lub kolumn, a dodatkowe silniki przetwarzają dane tekstowe i graficzne, o ile pamięć jest dostępna.

SAP HANA Architektura

Dane w magazynie kolumnowym są kompresowane przy użyciu technik takich jak kodowanie słownikowe, kodowanie długości serii, kodowanie rzadkie, kodowanie klastrowe i kodowanie pośrednie. Po osiągnięciu limitu pamięci głównej nieużywane obiekty bazy danych (tabele, widoki itp.) są automatycznie zgrywane na dysk i ponownie ładowane na żądanie.

Administratorzy mogą również ręcznie ładować i usuwać poszczególne tabele, klikając je prawym przyciskiem myszy. SAP Studio HANA i wybór Rozładować or Załadować.

SAP Serwer HANA składa się z:

  1. Serwer indeksowania
  2. Serwer preprocesora
  3. Nazwa serwera
  4. Serwer statystyk
  5. Silnik XS

SAP Diagram architektury HANA przedstawiający główne komponenty serwera

1. SAP Serwer indeksowania HANA

Serwer indeksowy jest głównym SAP Komponent bazy danych HANA:

  • To jest serce SAP Silnik bazy danych HANA.
  • Zawiera rzeczywiste magazyny danych i silniki przetwarzające dane.
  • Wykonuje przychodzące polecenia SQL i MDX.

Poniżej przedstawiono architekturę serwera indeksowego.

SAP Architektura wewnętrzna serwera indeksów HANA

SAP Omówienie serwera indeksowania HANA

  • Menedżer sesji i transakcji: Komponent Sesja zarządza połączeniami i sesjami bazy danych. Menedżer Transakcji koordynuje i kontroluje wszystkie transakcje.
  • Procesor SQL i MDX: Procesor SQL wysyła zapytania do odpowiedniego silnika (SQL / SQL Script / R / Calc Engine). Procesor MDX obsługuje zapytania wielowymiarowe (na przykład do widoku analitycznego).
  • SQL / Skrypt SQL / R / Silnik Calc: Wykonuje polecenia SQL, skrypty SQL, R i modele obliczeniowe na danych.
  • Magazyn: Utrzymuje wersjonowanie dla SAP Obiekty metadanych HANA, takie jak widoki atrybutów, widoki analityczne i procedury składowane.
  • Warstwa trwałości: Zapewnia wbudowaną funkcję odzyskiwania po awarii poprzez zapisywanie punktów zapisu i dzienników na woluminie danych na dysku.

2. Serwer preprocesora

Serwer preprocesora jest używany przez analizę tekstu.traci przygotowuje dane z treści tekstowych po wywołaniu funkcji wyszukiwania.

3. Serwer nazw

Serwer nazw przechowuje informacje o całym krajobrazie systemu. W przypadku rozproszonego wdrożenia tracks każdego uruchomionego komponentu i lokalizacji danych w węzłach, dzięki czemu zapytania mogą być kierowane do właściwego serwera.

4. Serwer statystyk

Serwer statystyk zbiera dane dotyczące statusu, alokacji zasobów, zużycia i wydajności. SAP System HANA. Uwaga: w HANA SPS 7 i nowszych wersjach wbudowana usługa statystyczna działa w serwerze indeksowym, a nie jako samodzielny proces.

5. Serwer XS

Serwer XS obsługuje silnik XS, który umożliwia zewnętrznym aplikacjom i deweloperom korzystanie z SAP Baza danych HANA przez HTTP. Sam XS Engine działa jak lekki serwer HTTP, umożliwiając klientom przeglądarkowym i REST bezpośrednią komunikację z HANA.

SAP HANA Krajobraz

„HANA” oznacza Urządzenie analityczne o wysokiej wydajności i jest dostarczany jako połączona platforma sprzętowo-programowa.

  • Współczesny sprzęt oferuje o wiele więcej rdzeni procesora, pamięci RAM i przepustowości pamięci masowej niż te, do których były zaprojektowane starsze serwery baz danych.
  • SAP HANA wykorzystuje to przez keeping wszystkie dane robocze znajdują się w pamięci głównej, co eliminuje wąskie gardło w postaci wejścia/wyjścia na dysku, które ogranicza tradycyjne bazy danych.

Poniższy diagram podsumowuje SAP Innowacje sprzętowe i programowe HANA.

SAP Przegląd innowacji sprzętowych i programowych HANA

SAP HANA obsługuje dwa relacyjne magazyny danych: Sklep rzędowy oraz Sklep kolumnowy.

Sklep rzędowy

Row Store zachowuje się jak tradycyjna baza danych (Oracle, SQL Server). Kluczową różnicą jest to, że wszystkie wiersze znajdują się w pamięci głównej SAP HANA, podczas gdy tradycyjna baza danych przechowuje je głównie na dysku.

Sklep kolumnowy

Magazyn kolumn przechowuje dane w pamięci w formie kolumnowej. Tabele kolumnowe są tu przechowywane, a silnik zapewnia równowagę między dobrą wydajnością zapisu a zoptymalizowaną wydajnością odczytu. Poniższy diagram przedstawia dwie struktury, które zapewniają tę równowagę.

Główne i deltowe struktury magazynowe w SAP Magazyn kolumn HANA

Główny magazyn

Pamięć główna przechowuje większość danych. W celu oszczędzania pamięci i przyspieszenia wyszukiwania stosowane są metody kompresji, takie jak kodowanie słownikowe, kodowanie klastrowe, kodowanie rzadkie i kodowanie sekwencyjne.

  • Modyfikacja skompresowanych danych bezpośrednio w pamięci głównej jest kosztowna, dlatego operacje zapisu nie są wykonywane w pamięci głównej.
  • Zamiast tego każda zmiana jest zapisywana w oddzielnym obszarze o nazwie Delta Dyski. Odczyty mogą trafić do pamięci głównej lub pamięci delta.

Dane można załadować lub rozładować ręcznie za pomocą Załaduj do pamięci oraz Wyładuj z pamięci opcje pokazane poniżej.

Opcje Załaduj do pamięci i Wyładuj z pamięci w SAP Studio HANA

Delta Dyski

Delta Pamięć masowa jest zoptymalizowana pod kątem zapisu i wykorzystuje lżejszą kompresję. Wszystkie niezatwierdzone zmiany w tabeli kolumnowej są tutaj przechowywane. W przypadku konieczności ponownego scalania zmian z pamięcią główną, należy uruchomić Delta Łączyć operacja z SAP Studio HANA.

Delta Opcja scalania w SAP Studio HANA

  • Scalenie delty powoduje przeniesienie zmian zebranych w pamięci masowej delty do pamięci głównej.
  • Po scaleniu nowa zawartość pamięci głównej zostaje zapisana na dysku, a kompresja zostaje przeliczona.

Jak dane są przesyłane z Delta do pamięci głównej

Delta scal przepływ danych z L1 do L2 do pamięci głównej

Bufor uporządkowany wierszowo, zwany L1-Delta znajduje się przed każdą tabelą kolumnową, dlatego tabela kolumnowa może absorbować zapisy o dużej przepustowości.

  1. Użytkownik uruchamia polecenie UPDATE lub INSERT na tabeli.
  2. Dane najpierw trafiają do L1-Delta (niezatwierdzone dane).
  3. Po zatwierdzeniu dane są przenoszone do zorientowanego na kolumny L2-Delta bufor.
  4. Kiedy L2-Delta jest pełny lub gdy zostanie wykonane scalanie, dane zostaną zapisane w pamięci głównej.

Pamięć kolumnowa jest zatem zoptymalizowana zarówno pod kątem zapisu (za pośrednictwem warstwy delta L1 i L2), jak i odczytu (za pośrednictwem pamięci głównej). Po przetworzeniu dane są utrwalane przez warstwę trwałości na dysku.

Przykład tabeli opartej na wierszach:

Przykładowa tabela oparta na wierszach w SAP HANA

Ta sama tabela logiczna jest przechowywana na dysku w różny sposób, w zależności od typu magazynu. W magazynie wierszy wiersze są zapisywane w sposób ciągły:

Układ pamięci magazynu wierszowego w SAP HANA

W magazynie kolumnowym wartości z tej samej kolumny są przechowywane razem:

Układ pamięci magazynu kolumnowego w SAP HANA

Ponieważ wartości kolumn współdzielą typ danych i często się powtarzają, układ kolumn kompresuje się wyjątkowo dobrze — co jest główną zaletą pamięci magazynu kolumnowego.

Zaleta kompresji magazynu kolumnowego w SAP HANA

SAP HANA Rozmiarówka

Określanie rozmiaru to proces polegający na określaniu zasobów sprzętowych — pamięci RAM, dysku i procesora — wymaganych do SAP System HANA. Pamięć jest najważniejszym czynnikiem, procesor jest drugi, a dysk jest pochodną dwóch pierwszych.

W SAP Wdrożenie HANA i dobór odpowiedniej wielkości serwera do obciążenia biznesowego to jedno z najważniejszych zadań. W porównaniu z tradycyjnym systemem DBMS, skalowanie HANA różni się w trzech obszarach:

  • Pamięć główna: napędzane metadanymi oraz ilością danych transakcyjnych i analitycznych przechowywanych w pamięci.
  • PROCESOR: szacowane, a nie mierzone, w oparciu o zapytania prognozowane i wzorce obciążenia.
  • Dysk: dostosowane do trwałości danych i woluminów dzienników, a nie do danych zapytań online.

Procesor i pamięć serwera aplikacji pozostają niezmienione w porównaniu z poprzednią bazą danych, ponieważ HANA zastępuje jedynie warstwę bazy danych.

SAP zapewnia kilka metod obliczania prawidłowego rozmiaru:

  1. Określanie rozmiaru przy użyciu raportu ABAP (kod transakcji) ST03 dane i raport /SDF/HDB_SIZING).
  2. Określanie rozmiaru za pomocą skryptu bazy danych dla systemów innych niż ABAP.
  3. Określanie rozmiaru za pomocą SAP Szybki Sizer narzędzie na SAP Rynek usług.

Po użyciu narzędzia Quick Sizer wymagania są wyświetlane w poniższym formacie.

SAP Przykładowe dane wyjściowe HANA Quick Sizer

FAQ

SAP HANA przechowuje wszystkie dane robocze w pamięci głównej i obsługuje zarówno OLAP, jak i OLTP na tym samym silniku. Tradycyjne bazy danych przechowują dane na dysku i zazwyczaj oddzielają systemy analityczne od transakcyjnych ze względu na wydajność.

Użyj magazynu wierszowego dla małych, często łączonych tabel transakcyjnych. Użyj magazynu kolumnowego dla dużych tabel analitycznych, agregacji i tabel faktów, gdzie kompresja i skanowanie równoległe zapewniają znacznie lepszą wydajność odczytu.

SAP HANA Cloud to zarządzana baza danych jako usługa. SAP zajmuje się łataniem, skalowaniem i infrastrukturą, podczas gdy klienci koncentrują się na danych i aplikacjach. Lokalna platforma HANA zapewnia pełną kontrolę nad sprzętem, skalowaniem i dostrajaniem, ale wymaga większego nakładu pracy administracyjnej.

SAP Platforma HANA jest dostarczana z biblioteką analizy predykcyjnej (PAL), biblioteką automatycznej analizy predykcyjnej (APL) oraz obsługą silnika wektorowego do osadzania. Modele trenują i oceniają bezpośrednio w bazie danych, eliminując przenoszenie danych i umożliwiając wykorzystanie sztucznej inteligencji w czasie rzeczywistym w oparciu o dane operacyjne.

Tak. SAP Agenci Joule i zewnętrzni agenci LLM mogą łączyć się za pomocą interfejsów SQL, REST i wektorowych HANA w celu pobierania, podsumowywania i wnioskowania na podstawie danych biznesowych, respektując jednocześnie natywne mechanizmy autoryzacji, maskowania i kontroli audytu.

Podsumuj ten post następująco: