Architettura SAP HANA, LandScape, Dimensionamento: tutorial completo

Sommario:

Anonim

Il database SAP HANA è una piattaforma di gestione dei dati incentrata sulla memoria principale. Il database SAP HANA viene eseguito su SUSE Linux Enterprises Server e si basa sul linguaggio C ++.

Il database SAP HANA può essere distribuito su più macchine.

I vantaggi di SAP HANA sono i seguenti:

  • SAP HANA è utile in quanto è molto veloce grazie a tutti i dati caricati in memoria e non è necessario caricare i dati dal disco.
  • SAP HANA può essere utilizzato ai fini di OLAP (On-line analytic) e OLTP (On-Line Transaction) su un unico database.

Il database SAP HANA è costituito da un set di motori di elaborazione in memoria. Il motore di calcolo è il principale motore di elaborazione in memoria in SAP HANA. Funziona con altri motori di elaborazione come il motore di database relazionale (motore di riga e colonna), motore OLAP, ecc.

La tabella del database relazionale risiede nell'archivio di colonne o righe.

Esistono due tipi di archiviazione per la tabella SAP HANA.

  1. Archiviazione del tipo di riga (per la tabella di riga).
  2. Archiviazione del tipo di colonna (per la tabella delle colonne).

I dati di testo ei dati di grafici risiedono rispettivamente in Motore di testo e Motore di grafico. Ci sono altri motori nel database SAP HANA. I dati possono essere archiviati in questi motori fintanto che è disponibile spazio sufficiente.

In questo tutorial imparerai-

  • Architettura SAP HANA
  • Panorama di SAP HANA
  • Dimensionamento SAP HANA

Architettura SAP HANA

I dati vengono compressi mediante diverse tecniche di compressione (ad es. Codifica dizionario, codifica run length, codifica sparse, codifica cluster, codifica indiretta) nell'archivio colonne SAP HANA.

Quando il limite di memoria principale viene raggiunto in SAP HANA, tutti gli oggetti del database (tabella, vista, ecc.) Non utilizzati verranno scaricati dalla memoria principale e salvati nel disco.

I nomi di questi oggetti sono definiti dalla semantica dell'applicazione e ricaricati nella memoria principale dal disco quando richiesto nuovamente. In circostanze normali, il database SAP HANA gestisce automaticamente lo scarico e il caricamento dei dati.

Tuttavia, l'utente può caricare e scaricare manualmente i dati dalla singola tabella selezionando una tabella in SAP HANA Studio nel rispettivo schema, facendo clic con il pulsante destro del mouse e selezionando l'opzione "Unload / Load".

SAP HANA Server è costituito da

  1. Index Server
  2. Server preprocessore
  3. Name Server
  4. Server statistico
  5. Motore XS

  1. Index Server SAP HANA

    Il server principale del database SAP HANA è un server di indicizzazione. I dettagli di ciascun server sono i seguenti:

  • È il componente principale del database SAP HANA
  • Contiene archivi dati effettivi e il motore per l'elaborazione dei dati.
  • Index Server elabora l'istruzione SQL o MDX in arrivo.

Di seguito è riportata l'architettura di Index Server.

Panoramica di SAP HANA Index Server

  • Session and Transaction Manager: il componente Session gestisce le sessioni e le connessioni per il database SAP HANA. Il gestore delle transazioni coordina e controlla le transazioni.
  • Processore SQL e MDX: il componente SQL Processor interroga i dati e li invia nel motore di elaborazione delle query, ad esempio SQL / SQL Script / R / Calc Engine. Il processore MDX interroga e manipola i dati multidimensionali (ad es. Vista analitica in SAP HANA).
  • SQL / SQL Script / R / Calc Engine: questo componente esegue lo script SQL / SQL e i dati di calcolo vengono convertiti nel modello di calcolo.
  • Repository: il repository mantiene il controllo delle versioni dell'oggetto metadati SAP HANA, ad esempio (visualizzazione attributi, visualizzazione analitica, procedura memorizzata).
  • Livello di persistenza: questo livello utilizza la funzionalità incorporata "Disaster Recovery" del database SAP HANA. Il backup viene salvato al suo interno come punti di salvataggio nel volume di dati.
    1. Server preprocessore

    Questo server viene utilizzato nell'analisi del testo ed estrae i dati da un testo quando viene utilizzata la funzione di ricerca.

    1. Name Server

    Questo server contiene tutte le informazioni sul panorama del sistema. Nel server distribuito, il server dei nomi contiene informazioni su ogni componente in esecuzione e la posizione dei dati sul server. Questo server contiene informazioni sul server su cui esistono i dati.

    1. Server di statistica

    Il server statistico è responsabile della raccolta dei dati relativi allo stato, all'assegnazione / consumo delle risorse e alle prestazioni del sistema SAP HANA.

    1. XS Server

    XS Server contiene XS Engine. Consente ad applicazioni e sviluppatori esterni di utilizzare il database SAP HANA tramite il client XS Engine. L'applicazione client esterna può utilizzare HTTP per trasmettere dati tramite il motore XS per il server HTTP.

    Panorama di SAP HANA

    "HANA" significa High Performance Analytic Appliance è una combinazione di piattaforma hardware e software.

    • A causa del cambiamento nell'architettura del computer, il computer più potente è disponibile in termini di CPU, RAM e disco rigido.
    • SAP HANA è la soluzione per i colli di bottiglia delle prestazioni, in cui tutti i dati sono archiviati nella memoria principale e non è necessario trasferire frequentemente i dati dall'I / O del disco alla memoria principale.

    Di seguito sono riportate le innovazioni SAP HANA nel campo dell'hardware / software.

    Esistono due tipi di archivi dati relazionali in SAP HANA: archivio righe e archivio colonne.

    Row Store

    • È uguale al database tradizionale, ad esempio (Oracle, SQL Server). L'unica differenza è che tutti i dati vengono archiviati nell'area di archiviazione delle righe nella memoria di SAP HANA, a differenza di un database tradizionale, in cui i dati sono archiviati nel disco rigido.

    Archivio colonne

    • L'archivio colonne è la parte del database SAP HANA e gestisce i dati in modo colonnare nella memoria SAP HANA. Le tabelle delle colonne vengono memorizzate nell'area di archiviazione delle colonne. L'archivio colonne fornisce buone prestazioni per le operazioni di scrittura e allo stesso tempo ottimizza l'operazione di lettura.

    Leggere e scrivere prestazioni operative ottimizzate con due strutture dati di seguito.

    Memoria principale

    La memoria principale contiene la parte principale dei dati. Nella memoria principale, viene applicato un metodo di compressione dei dati adeguato (codifica dizionario, codifica cluster, codifica sparse, codifica lunghezza di esecuzione, ecc.) Per comprimere i dati con lo scopo di risparmiare memoria e velocizzare le ricerche.

    • Nella memoria principale le operazioni di scrittura sui dati compressi saranno costose, quindi le operazioni di scrittura non modificano direttamente i dati compressi nella memoria principale. Tutte le modifiche vengono invece scritte in un'area separata nell'archiviazione di colonne nota come "Archiviazione delta".
    • Lo storage Delta è ottimizzato per un'operazione di scrittura e utilizza la normale compressione. Le operazioni di scrittura non sono consentite sulla memoria principale ma sono consentite sulla memoria delta. Le operazioni di lettura sono consentite su entrambi gli archivi.

    Possiamo caricare manualmente i dati nella memoria principale con l'opzione "Carica in memoria" e Scarica i dati dalla memoria principale con l'opzione "Scarica dalla memoria" come mostrato di seguito.

    Archiviazione Delta

    Lo storage delta viene utilizzato per un'operazione di scrittura e utilizza la compressione di base. Tutte le modifiche non salvate nei dati della tabella delle colonne archiviate nella memoria delta.

    Quando si desidera spostare queste modifiche nella memoria principale, utilizzare "operazione di unione delta" da SAP HANA studio come di seguito:

    • Lo scopo dell'operazione di unione delta è spostare le modifiche, raccolte dall'archiviazione delta all'archiviazione principale.
    • Dopo aver eseguito l'operazione di unione delta sulla tabella delle colonne sap, il contenuto della memoria principale viene salvato su disco e la compressione viene ricalcolata.

    Processo di spostamento dei dati da Delta alla memoria principale durante l'unione delta

    C'è un buffer store (L1-Delta) che è l'archiviazione di righe. Quindi in SAP HANA, la tabella delle colonne si comporta come un archivio di righe a causa di L1-delta.

    1. L'utente esegue la query di aggiornamento / inserimento sulla tabella (l'operatore fisico è istruzioni SQL.).
    2. I dati vanno prima a L1. Quando L1 sposta ulteriormente i dati (L1- Dati non confermati)
    3. Quindi i dati vanno al buffer L2-delta, che è orientato alla colonna. (L2- Dati impegnati)
    4. Quando il processo L2-delta è completo, i dati vanno alla memoria principale.

    Pertanto, l'archiviazione delle colonne è ottimizzata per la scrittura e per la lettura grazie rispettivamente a L1-Delta e all'archiviazione principale. L1-Delta contiene tutti i dati non salvati. I dati impegnati vengono spostati nel negozio principale tramite L2-Delta. Dall'archivio principale i dati vanno al livello di persistenza (la freccia che indica qui è un operatore fisico che invia l'istruzione SQL nell'archivio delle colonne). Dopo l'elaborazione dell'istruzione SQL nell'archivio colonne, i dati vengono trasferiti al livello di persistenza.

    Ad esempio, di seguito è riportata una tabella basata su righe

    I dati della tabella sono archiviati su disco in formato lineare, quindi di seguito è riportato il formato in cui i dati vengono archiviati su disco per la tabella di righe e colonne -

    Nella memoria SAP HANA, questa tabella è archiviata in Row Store su disco come formato -

    Indirizzo di memoria

    E in Colonna, i dati vengono archiviati su disco come -

    Indirizzo di memoria

    I dati vengono archiviati a livello di colonna nel formato lineare sul disco. I dati possono essere compressi mediante tecnica di compressione.

    Quindi, l'archivio colonne ha un vantaggio nel risparmio di memoria.

    Dimensionamento SAP HANA

    Il dimensionamento è un termine utilizzato per determinare i requisiti hardware per il sistema SAP HANA, come RAM, disco rigido e CPU, ecc.

    Il principale componente di dimensionamento importante è la memoria e il secondo componente di dimensionamento importante è la CPU. Il terzo componente principale è un disco, ma il dimensionamento dipende completamente dalla memoria e dalla CPU.

    Nell'implementazione di SAP HANA, una delle attività critiche è determinare la dimensione corretta di un server in base ai requisiti aziendali.

    SAP HANA DB differisce nel dimensionamento con il normale DBMS in termini di:

    • Requisito di memoria principale per SAP HANA (il dimensionamento della memoria è determinato dai metadati e dai dati di transazione in SAP HANA)
    • Requisiti CPU per SAP HANA (la CPU di previsione è stimata non accurata).
    • Requisito di spazio su disco per SAP HANA (viene calcolato per la persistenza dei dati e per la registrazione dei dati)

    La CPU del server delle applicazioni e la memoria del server delle applicazioni rimangono invariate.

    Per il calcolo delle taglie SAP ha fornito varie linee guida e metodi per calcolare la taglia corretta.

    Possiamo usare il seguente metodo-

    1. Dimensionamento tramite report ABAP.
    2. Dimensionamento tramite DB Script.
    3. Dimensionamento utilizzando Quicksizer Tool.

    Utilizzando lo strumento Quicksizer, i requisiti verranno visualizzati nel formato seguente: