SAP HANA Analytic View: Hur man skapar och använder

⚡ Smart sammanfattning

SAP HANA Analytic View modellerar data som ett stjärnschema och ansluter till en central faktatabell för att attributa vyer så att transaktionsdata kan aggregeras direkt för flerdimensionell analys inuti. SAP HANA Studio.

  • 🔘 Strukturera: En faktatabell som innehåller transaktionsdata sitter i mitten, omgiven av dimensionstabeller och återanvändbara attributvyer.
  • ☑️ noder: Data Foundation innehåller faktatabellerna, Star Join kopplar attributvyerna och Semantics definierar utdata.
  • åtgärder: Flera tabeller kan finnas i datagrunden, men mått kan bara väljas från en av dem.
  • 🧪 Exempel: PURCHASE_ORDER och PURCHASE_DETAIL sammanfogas på PO_NUMBER, och attributvyn AT_PRODUCT sammanfogas på PRODUCT_ID.
  • 🛠️ Aktivering: Validering och aktivering publicerar vyn som en kolumnvy i _SYS_BIC-schemat för rapportering.
  • 📈 riktning: Analytiska vyer är föråldrade, så nya kubliknande modeller hör hemma i grafiska beräkningsvyer.

Analytisk vy stjärnschemamodellering i SAP HANA

Vad är en analytisk vy i SAP HANA?

En analytisk synvinkel i SAP HANA är baserat på stjärnschemamodellering och representerar ett OLAP-, eller flerdimensionellt, modelleringsobjekt. Det bildar en kubliknande struktur som används för att analysera data, och det passar alla scenarier där aggregerade data från de underliggande tabellerna behövs.

I en analytisk vy kopplas dimensionstabeller till faktatabellen som innehåller transaktionsdata. En dimensionstabell innehåller beskrivande data såsom produkt, produktnamn, leverantör eller kund. En faktatabell innehåller beskrivande data tillsammans med mätbara data såsom belopp och moms.

Eftersom aggregeringen sker i minnet vid frågetillfället behöver inga aggregerade tabeller lagras. Vyn definieras en gång i SAP HANA-modellering och återanvänds av varje rapport som läser den.

Exempel på SAP HANA analytisk vy

Här skapas en analytisk vy för en inköpsorder, baserad på attributvy ”AT_PRODUCT” skapades tidigare. Tabellerna Inköpsorderrubrik och Inköpsorderdetaljer tillhandahåller transaktionsdata.

Kör båda skripten nedan i SQL konsol av SAP HANA Studio innan modelleringsstegen börjar.

SQL-skript för att skapa tabellen “PURCHASE_ORDER” i “DHK_SCHEMA”

CREATE COLUMN TABLE "DHK_SCHEMA"."PURCHASE_ORDER"					
(		
PO_NUMBER NVARCHAR(10) primary key,							
COMPANY NVARCHAR (4),			
PO_CATEGORY NVARCHAR(2),			
PRODUCT_ID NVARCHAR(10),			
VENDOR NVARCHAR(10),			
TERMS NVARCHAR(4),			
PUR_ORG NVARCHAR(4),			
PUR_GRP NVARCHAR(3),			
CURRENCY NVARCHAR(5),			
QUOTATION_NO NVARCHAR(10),			
PO_STATUS VARCHAR(1),			
CREATED_BY NVARCHAR(20),			
CREATED_AT DATE		
);		

INSERT	INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000001,1000,'MM','A0001','V000001','CASH' ,1000,'GR1','INR',1000011,'A','HANAUSER','2016-01-07');																													
INSERT INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000002,2000,'MM','A0002','V000001','CASH',1000,'GR1','INR',1000012,'A','HANAUSER','2016-01-06');																			
INSERT INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000003,2000,'MM','A0003','V000001','CASH',1000,'GR1','INR',1000013,'A','HANAUSER','2016-01-07');																			
INSERT INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000004,2000,'MM','A0004','V000001','CASH',1000,'GR1','INR',1000014,'A','HANAUSER','2016-01-07');

SQL-skript för att skapa tabellen “PURCHASE_DETAIL” i “DHK_SCHEMA”

CREATE	 COLUMN TABLE "DHK_SCHEMA"."PURCHASE_DETAIL"					
(		
PO_NUMBER NVARCHAR(10) primary key,							
COMPANY NVARCHAR(4),			
PO_CATEGORY NVARCHAR(2),			
PRODUCT_ID NVARCHAR(10),			
PLANT NVARCHAR(4),			
STORAGE_LOC NVARCHAR(4),			
VENDOR NVARCHAR(10),			
TERMS NVARCHAR(4),			
PUR_ORG NVARCHAR(4),			
PUR_GRP NVARCHAR(3),			
CURRENCY NVARCHAR(5),			
QUANTITY SMALLINT,			
QUANTITY_UNIT VARCHAR(4),			
ORDER_PRICE DECIMAL(8,2),			
NET_AMOUNT DECIMAL(8,2),			
GROSS_AMOUNT DECIMAL(8,2),			
TAX_AMOUNT DECIMAL(8,2)			
);		


INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000001,1000,'MM','A0001',1001,101,
'V000001','CASH',1000,'GR1','INR',10,'UNIT',50000.00,40000.00,50000.00,10000.00);																									
INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000002,2000,'MM','A0002',1002,102,
'V000002','CASH',1000,'GR1','INR',10,'UNIT',60000.00,48000.00,60000.00,12000.00);																									
INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000003,2000,'MM','A0003',1003,103,
'V000001','CASH',1000,'GR1','INR',20,'UNIT',40000.00,32000.00,40000.00,8000.00);																									
INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000004,2000,'MM','A0004',1004,104,
'V000002','CASH',1000,'GR1','INR',20,'UNIT',20000.00,16000.00,20000.00,4000.00);																	

De två skripten skapar tabellerna ”PURCHASE_ORDER” och ”PURCHASE_DETAIL” tillsammans med deras data.

Hur man skapar en analytisk vy i SAP HANA

En analytisk vy med namnet ”AN_PURCHASE_ORDERS” skapas nedan från attributvyn ”AT_PRODUCT” och tabellerna ”PURCHASE_ORDER” och ”PURCHASE_DETAIL”. De tio stegen följer ordningen på redigeringsskärmarna.

Steg 1) Skapa en ny analysvy från paketträdet som visas nedan.

  1. Välj underpaketet Modellering under DHK_SCHEMA-paketet.
  2. Högerklicka och välj Nytt.
  3. Välj alternativet Analytisk vy.

Nytt alternativ för analytisk vy i delpaketet Modellering i SAP HANA Studio

Steg 2) Informationsvyredigeraren öppnas för den analytiska vyn. Slutför skapandedialogrutan som visas nedan.

  1. Ange namnet på den analytiska vyn "AN_PURCHASE_ORDERS" och en etikett för den.
  2. Välj vytypen "Analytisk vy".

Dialogruta för att skapa en analytisk vy med namnet AN_PURCHASE_ORDERS och vytyp

När inmatningarna är klara klickar du på knappen Slutför. Informationsvyredigeraren visas sedan för den analytiska vyn.

Steg 3) Lägg till tabellerna från schemat till datafältet Foundation nod under scenariofönstret. Scenariofönstern innehåller tre noder.

  1. Semantik: Denna nod representerar vyns utdatastruktur.
  2. Stjärnanslutning: Den här noden skapar kopplingen som kopplar attributvyerna till faktatabellen.
  3. Data Foundation: Den här noden innehåller faktatabellerna för den analytiska vyn. Flera tabeller kan läggas till, men mått kan bara väljas från en av dem.

Dra och släpp tabellerna "PURCHASE_ORDER" och "PURCHASE_DETAIL" från DHK_SCHEMA till datafältet. Foundation nod, som visas nedan.

Tabellerna PURCHASE_ORDER och PURCHASE_DETAIL har släppts på datafältet Foundation nod

Steg 4) Lägg till attributvyn till Star Join-noden.

  1. Välj attributvyn ”AT_PRODUCT” från modelleringspaketet.
  2. Dra och släpp attributvyn till Star Join-noden, som visas nedan.

Attributvyn AT_PRODUCT dragits till Star Join-noden i scenariorutan

Steg 5) I samma fönster arbetar du i detaljpanelen enligt anvisningarna.

  1. Klicka på Data Foundation nod. Tabellerna som läggs till visas i detaljavsnittet.
  2. Koppla tabellen ”PURCHASE_ORDER” till tabellen ”PURCHASE_DETAIL” i fältet ”PO_NUMBER”.
  3. Ange kopplingstyp och kardinaliteten.

Redigera anslutningsskärmen som ansluter PURCHASE_ORDER till PURCHASE_DETAIL på PO_NUMBER

Klicka på OK-knappen för att behålla kopplingen.

Steg 6) Markera följande kolumner i samma fönster.

  1. Välj PO_NUMBER, COMPANY, PO_CATEGORY, PRODUCT_ID, PLANT och STORAGE_LOC från tabellen ”PURCHASE_DETAIL”.
  2. Välj kolumnen VALUTA från tabellen ”KÖPSDETALJ”.
  3. Välj GROSS_AMOUNT och SKATTEBELOPP.
  4. Välj kolumnerna PO_STATUS, CREATED_BY och CREATED_AT från tabellen ”PURCHASE_ORDER”, som är inköpsorderrubriken.

Utdatakolumner från databasen markerade i orange efter val

Varje vald kolumn, markerad med orange, visas i utdata från den analytiska vyn.

Steg 7) Koppla attributvyn till faktatabellen i datagrunden. Klicka på noden Star Join i scenariofönstret, som visas nedan.

Noden Star Join är vald i scenariofönstret i analysvyredigeraren.

Attributvyn och faktatabellen visas i detaljfönstret. Koppla attributvyn till databasen i kolumnen "PRODUCT_ID", som visas nedan.

Attributvy kopplad till databasen i kolumnen PRODUCT_ID

Klicka på länken för att ansluta. Ett popup-fönster för Redigera koppling visas, där kopplingstypen är definierad som "Referensiell" och kardinaliteten som 1…1.

Redigera popup-fönstret Join med join-typen Referential och kardinalitet 1 till 1

Klicka på OK-knappen för att bekräfta stjärnkopplingen.

Steg 8) Definiera attributen, måtten och nyckeln för vyn. Välj noden Semantik i scenariofönstret, som visas nedan.

Semantiknod vald i scenariofönstret för att definiera attribut och mått

  1. Välj fliken Kolumner i detaljfönstret.
  2. Definiera kolumntypen som attribut eller mått. Varje kolumn här är ett attribut förutom "GROSS_AMOUNT", som definieras som ett mått.

Kolumnfliken markerar GROSS_AMOUNT som ett mått och resten som attribut

Steg 9) Validera och aktivera analysvyn från verktygsfältet.

  1. Validera den analytiska vyn.
  2. Aktivera den analytiska vyn.

Validera och aktivera ikoner i verktygsfältet för den analysvyredigeraren

Den analytiska vyn "AN_PURCHASE_ORDERS" är nu skapad och aktiverad i mappen Analytic i underpaketet Modelling, som visas nedan.

AN_PURCHASE_ORDERS listas under mappen Analytic i modelleringspaketet

Steg 10) Förhandsgranska data i den analytiska vyn.

  1. Gå till verktygsfältet och klicka på ikonen "Förhandsgranskning av data".
  2. Välj Öppna i Data Preview Editor.

Ikon för dataförhandsgranskning som öppnar redigeraren för dataförhandsgranskning för den analytiska vyn

Tre flikar finns tillgängliga i redigeraren för dataförhandsgranskning. Analys Tab hämtar attribut och mått genom att dra och släppa dem till etikettaxeln och värdeaxeln och visar utdata som ett diagram, en tabell, ett rutnät eller HTML, som nedan.

Fliken Analys visar diagram över inköpsordermått mot etikettaxelattribut

Ocuco-landskapet Distinkta värden Fliken visar de distinkta värdena för ett valt attribut åt gången, som nedan.

Fliken Distinkta värden som listar de distinkta posterna för ett valt attribut

Ocuco-landskapet Rådata Fliken visar posterna i tabellformat, enligt nedan.

Fliken Rådata som visar analysvyns poster i tabellformat

Obs: En analytisk vy accepterar endast attributvyer som sina dimensioner och stöder inte fackliga operator. Radnivåbegränsningar på den aktiverade vyn tillämpas via analytiska privilegier.

Attributvyer och analysvyer är föråldrade från och med SAP HANA 2.0 och är inte tillgängliga i SAP HANA Cloud, så nya kubliknande modeller byggs som grafiska beräkningsvyer av datakategorin Kub med stjärnkoppling. Stegen ovan gäller fortfarande för befintliga SAP HANA 2.0-system, och modelleringskoncepten överförs. Mer bakgrund finns i SAP HANA serien.

Vanliga frågor

En analytisk vy modellerar ett stjärnschema med en enda faktatabell som tillhandahåller mått. En beräkningsvy staplar projektioner, kopplingar, unioner och aggregeringar över vilken källa som helst, inklusive andra vyer, så att den hanterar logik som en analytisk vy inte kan uttrycka.

Databasen representerar en faktatabell. Ytterligare tabeller kan sammanfogas för att berika den med attribut, men om man tillåter mått från flera av dem skulle raderna multipliceras under aggregeringen och totalsummorna skulle öka.

Ja. Beräknade kolumner, begränsade mått, inparametrar och variabler definieras i noden Semantics. De utvärderas vid körning, så de underliggande tabellerna förblir oförändrade och varje konsument av vyn ser samma logik.

AI-assistenter i SAP Verktyg som föreslår kopplingsvägar, flaggar oanvända kolumner och förutspår dyra aggregeringar från tidigare frågeplaner. Maskininlärning på arbetsbelastning traces rekommenderar också vilka mått som ska exponeras, även om en modellerare fortfarande validerar varje resultat.

GitHub Copilot utarbetar CREATE COLUMN TABLE- och SELECT-satser som matar eller frågar en vy, och det snabbar upp testdataskript. Genererad SQL måste fortfarande granskas mot verklig HANA-syntax, behörigheter och kolumnnamn.

Analytiska vyer är fortfarande användbara i SAP HANA 2.0 men är föråldrade. SAP HANA Cloud stöder endast beräkningsvyer, så befintliga analysvyer återskapas som grafiska beräkningsvyer av datakategorin Kub med en stjärnkopplingsnod.

Radnivåfiltrering beviljas genom analytiska privilegier, vilka begränsar de värden en användare kan läsa för valda attribut. Själva vyn förblir oförändrad, och objektprivilegier ensamma begränsar aldrig vilka rader som returneras.

Aktivering genererar en kolumnvy i _SYS_BIC-schemat. Vilken SQL-klient som helst, SAP Analysmoln, SAP BusinessObjects eller en ODBC- eller JDBC-rapport kan fråga den kolumnvyn när användaren har de behörigheter som krävs.

Sammanfatta detta inlägg med: