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.

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:
- Serwer indeksowania
- Serwer preprocesora
- Nazwa serwera
- Serwer statystyk
- Silnik XS
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 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 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łó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.
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.
- 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
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.
- Użytkownik uruchamia polecenie UPDATE lub INSERT na tabeli.
- Dane najpierw trafiają do L1-Delta (niezatwierdzone dane).
- Po zatwierdzeniu dane są przenoszone do zorientowanego na kolumny L2-Delta bufor.
- 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:
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:
W magazynie kolumnowym wartości z tej samej kolumny są przechowywane razem:
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.
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:
- Określanie rozmiaru przy użyciu raportu ABAP (kod transakcji) ST03 dane i raport /SDF/HDB_SIZING).
- Określanie rozmiaru za pomocą skryptu bazy danych dla systemów innych niż ABAP.
- 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.












