SAP HANA Architecture, Landscape, Dimension: Komplett handledning

SAP HANA Database är Main-Memory-centrerad datahanteringsplattform. SAP HANA Database körs på SUSE Linux Enterprises Server och bygger på C++ Språk.

SAP HANA Database kan distribueras till flera maskiner.

SAP HANA fördelar är som nämns nedan -

  • SAP HANA är användbart eftersom det är mycket snabbt på grund av all data som laddas i minnet och inget behov av att ladda data från disken.
  • SAP HANA kan användas för OLAP (On-line analytic) och OLTP (On-Line Transaction) på en enda databas.

SAP HANA Database består av en uppsättning bearbetningsmotorer i minnet. Beräkningsmotorn är den huvudsakliga bearbetningsmotorn i minnet SAP HANA. Det fungerar med andra bearbetningsmotorer som relationsdatabasmotor (rad- och kolumnmotor), OLAP-motor, etc.

Relationsdatabastabellen finns i kolumn- eller radlager.

Det finns två förvaringstyper för SAP HANA bord.

  1. Lagring av radtyp (för radtabell).
  2. Lagring av kolumntyp (för kolumntabell).

Textdata och Graph-data finns i Text Engine respektive Graph Engine. Det finns några fler motorer i SAP HANA Databas. Data får lagras i dessa motorer så länge det finns tillräckligt med utrymme.

SAP HANA Architecture

Data komprimeras med olika komprimeringstekniker (t.ex. ordbokskodning, körlängdskodning, sparsam kodning, klusterkodning, indirekt kodning) i SAP HANA Kolumnbutik.

När huvudminnesgränsen nås in SAP HANA, hela databasobjekt (tabell, vy, etc.) som inte används kommer att laddas ur från huvudminnet och sparas på disken.

Dessa objekts namn definieras av applikationssemantik och laddas om till huvudminnet från disken när det behövs igen. Under normala omständigheter SAP HANA-databasen hanterar avlastning och laddning av data automatiskt.

Däremot kan användaren ladda och ta bort data från individuell tabell manuellt genom att välja en tabell i SAP HANA studio i respektive Schema- genom att högerklicka och välja alternativet "Unload/Load".

SAP HANA Server består av

  1. Indexserver
  2. Förprocessorserver
  3. Namn Server
  4. Statistikserver
  5. XS motor

    SAP HANA Architecture

  1. SAP HANA Index Server SAP HANA Database Huvudservern är indexserver. Detalj av varje server är som nedan-
  • Det är det viktigaste SAP HANA databaskomponent
  • Den innehåller faktiska datalager och motorn för bearbetning av data.
  • Indexserver bearbetar inkommande SQL eller MDX-sats.

Nedan är arkitekturen för Index Server.

SAP HANA Architecture

SAP HANA Index Server översikt

  • Sessions- och transaktionshanterare: Session Component hantera sessioner och anslutningar för SAP HANA databas. Transaction Manager koordinerar och kontrollerar transaktioner.
  • SQL och MDX-processor: SQL-processorkomponenten frågar efter data och skickar till dem i frågebehandlingsmotorn, dvs SQL/SQL Script/R/Calc Engine. MDX-processor frågar och manipulerar flerdimensionell data (t.ex. Analytic View in SAP HANA).
  • SQL / SQL Script / R / Calc Engine: Denna komponent exekverar SQL / SQL-skript och beräkningsdata konverterar i beräkningsmodell.
  • Repository: Repository underhåller versioneringen av SAP HANA-metadataobjekt t.ex. (Attributvy, Analytisk vy, lagrad procedur).
  • Persistensskikt: Detta lager använder den inbyggda funktionen "Disaster Recovery" av SAP HANA databas. Säkerhetskopiering sparas i den som sparpunkter i datavolymen.
    1. Förprocessorserver

    Denna server används i textanalys och extraherar data från en text när sökfunktionen används.

    1. Namn Server

    Denna server innehåller all information om systemlandskapet. I distribuerad server innehåller namnservern information om varje körande komponent och plats för data på servern. Denna server innehåller information om servern som data finns på.

    1. Statistikserver

    Statistikservern ansvarar för att samla in data relaterad till status, resursallokering/förbrukning och prestanda för SAP HANA system.

    1. XS-server

    XS Server innehåller XS Engine. Det tillåter extern applikation och utvecklare att använda SAP HANA-databas via XS Engine-klienten. Den externa klientapplikationen kan använda HTTP för att överföra data via XS-motorn för HTTP-servern.

    SAP HANA Landskap

    "HANA" betyder Högpresterande analytisk apparat är en kombination av hårdvara och mjukvaruplattform.

    • På grund av förändringar i datorarkitekturen är den mer kraftfulla datorn tillgänglig när det gäller CPU, RAM och hårddisk.
    • SAP HANA är lösningen för prestandaflaskhals, där all data lagras i huvudminnet och inget behov av att ofta överföra data från disk I/O till huvudminnet.

    Nedan finns SAP HANA Innovation inom området hårdvara/mjukvara.

    SAP HANA Landskap

    Det finns två typer av relationsdatalager i SAP HANA: Row Store och Column Store.

    Row Store

    • Det är samma som traditionell databas t.ex.Oracle, SQL Server). Den enda skillnaden är att all data lagras i radlagringsområde i minnet av SAP HANA, till skillnad från en traditionell databas, där data lagras på hårddisk.

    Kolumnbutik

    • Kolumn butik är en del av SAP HANA databas och hanterar data i kolumnär väg in SAP HANA minne. Kolumntabeller lagras i kolumnbutiksområdet. Kolumnlagret ger bra prestanda för skrivoperationer och optimerar samtidigt läsoperationen.

    Läs- och skrivdriftsprestanda optimerad med under två datastrukturer.

    SAP HANA Landskap

    Huvudförråd

    Main Storage innehåller huvuddelen av data. I huvudlagring, lämplig datakomprimeringsmetod (Dictionary Encoding, Cluster Encoding, Sparse Encoding, Run Length-kodning, etc.) används för att komprimera data med syftet att spara minne och påskynda sökningar.

    • I huvudminnet kommer skrivoperationer på komprimerade data att vara kostsamma, så skrivoperationer ändrar inte direkt komprimerad data i huvudminnet. Istället skrivs alla ändringar i ett separat område i kolumnlagring som kallas "Delta Lagring."
    • Delta lagring är optimerad för en skrivoperation och använder normal komprimering. Skrivoperationerna är inte tillåtna på huvudminnet men tillåtna på deltaminnet. Läsoperationer är tillåtna på båda lagringarna.

    Vi kan manuellt ladda data i huvudminnet med alternativet "Ladda in i minnet" och ladda ur data från huvudminnet med alternativet "Ta bort från minnet" som visas nedan.

    SAP HANA Landskap

    Delta lagring

    Delta lagring används för en skrivoperation och använder grundläggande komprimering. All oengagerad modifiering i kolumntabelldata lagrad i deltalagring.

    När vi vill flytta dessa ändringar till Main Storage, använd sedan "delta merge operation" från SAP HANA studio enligt nedan –

    SAP HANA Landskap

    • Syftet med deltasammanfogningsoperationen är att flytta förändringar, som samlas in i deltaminnet, till huvudminnet.
    • Efter att ha utfört Delta Sammanfoga operation på sap-kolumntabell, innehållet i huvudminnet sparas på disk och komprimering beräknas om.

    Processen att flytta data från Delta till Main Storage under deltasammanfogning

    SAP HANA Landskap

    Det finns ett buffertlager (L1-Delta) som är radlagring. Så in SAP HANA, kolumntabell fungerar som radlager på grund av L1-delta.

    1. Användaren kör uppdatering/infogningsfråga på tabellen (fysisk Operator är SQL-satser.).
    2. Data går först till L1. När L1 flyttar data längre (L1- Uncommitted data)
    3. Sedan går data till L2-delta buffert, som är kolumnorienterad. (L2- Engagerad data)
    4. När L2-delta-processen är klar, går data till huvudminnet.

    Så kolumnlagring är både skrivoptimerad och läsoptimerad på grund av L1-Delta respektive huvudförråd. L1-Delta innehåller all oengagerad data. Engagerad data flyttas till huvudbutiken via L2-Delta. Från huvudarkivet går data till beständighetslagret (pilen som här indikerar är en fysisk operatör som skickar SQL-satsen i kolumnlager). Efter bearbetning av SQL-satsen i kolumnarkivet går data till persistensskiktet.

    Exempelvis nedan är radbaserad tabell-

    SAP HANA Landskap

    Tabelldata lagras på disk i linjärt format, så nedan är formatera hur data lagras på disk för rad- och kolumntabell –

    In SAP HANA-minne, denna tabell lagras i Row Store på disken som format –

    SAP HANA Landskap
    Minnesadress

    Och i kolumn lagras data på disken som –

    SAP HANA Landskap

    Minnesadress

    Data lagras kolumnvis i linjärt format på disken. Data kan komprimeras med komprimeringsteknik.

    Så, Column Store har en fördel av minnesbesparing.

    SAP HANA Landskap

    SAP HANA Storlek

    Dimensionering är en term som används för att bestämma hårdvarukrav för SAP HANA-system, såsom RAM, hårddisk och CPU, etc.

    Den viktigaste storlekskomponenten är minnet, och den andra viktiga storlekskomponenten är CPU. Den tredje huvudkomponenten är en disk, men storleken är helt beroende av minne och CPU.

    In SAP HANA-implementering, en av de kritiska uppgifterna är att bestämma rätt storlek på en server enligt affärsbehov.

    SAP HANA DB skiljer sig i storlek från normal DBMS när det gäller –

    • Huvudminneskrav för SAP HANA (Minnesstorlek bestäms av metadata och transaktionsdata i SAP HANA)
    • CPU-krav för SAP HANA (Prognos CPU uppskattas inte korrekt).
    • Diskutrymmeskrav för SAP HANA (beräknas för databeständighet och för loggningsdata)

    Applikationsserverns CPU och applikationsserverminnet förblir oförändrade.

    För storleksberäkning SAP har tillhandahållit olika riktlinjer och metoder för att beräkna korrekt storlek.

    Vi kan använda nedanstående metod-

    1. Dimensionering med ABAP-rapport.
    2. Dimensionering med DB-skript.
    3. Dimensionering med Quicksizer Tool.

    Genom att använda Quicksizer-verktyget kommer kravet att visas i nedanstående format-

    SAP HANA Storlek