Gå till huvudinnehåll Gå till ytterligare innehåll

Hierarkier

Obalanserade hierarkier på n-nivå används ofta för att visa till exempel geografiska eller organisatoriska dimensioner i data. Denna typ av hierarkier lagras normalt i en ”adjacent nodes”-tabell, d.v.s. en tabell där varje post motsvaras av en nod och har ett fält som innehåller en referens till modernoden.

Example adjacent nodes table, with NodeID, ParentNodeID, and Title headings

I en sådan tabell lagras noden i en post men kan ha valfritt antal döttrar. Tabellen kan självklart innehålla ytterligare fält som beskriver nodernas attribut.

En “adjacent nodes”-tabell är utmärkt ur ett underhållsperspektiv men svårhanterad i det dagliga arbetet. I sökningar och analyser används därför andra motsvarigheter. “Expanded nodes”-tabeller är vanliga. Där lagras varje nivå i hierarkin i ett separat fält. Nivåerna i en utvidgad nodtabell kan enkelt användas exempelvis i en trädstruktur. Nyckelordet hierarchy kan användas i laddningsskriptet för att omvandla en tabell med angränsade noder till en tabell med expanderade noder.

Exempel:  

Hierarchy (NodeID, ParentNodeID, Title, 'Manager') LOAD NodeID, ParentNodeID, Title FROM 'hierarchy.txt' (txt, codepage is 1252, embedded labels, delimiter is ',', msq);

Example expanded nodes table, with NodeID, ParentNodeID, and multiple hierarchical Title headings

En nackdel med utvidgade nodtabeller är att du inte enkelt kan använda nivåfälten för sökningar eller urval, eftersom det krävs förkunskaper om vilken nivå du ska söka eller välja i. Förfaderstabellen är upplagd på ett annat sätt, vilket löser problemet. Tabellen på bilden kallas även ”bridge table”.

Förfaderstabellen innehåller en post för varje dotter/mor-relation som finns i informationen. Den innehåller nycklar och namn för både döttrar och mödrar. Med andra ord beskriver varje post vilken nod en viss nod hör ihop med. Nyckelordet hierarchybelongsto kan användas i laddningsskriptet för att förvandla en tabell med angränsade noder till en förfaderstabell.

Mer information

 

Var den här sidan till hjälp för dig?

Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!

Gå med i programmet Analytics Modernization

Remove banner from view

Modernisera utan att kompromissa med dina värdefulla QlikView-appar med programmet för analysmodernisering. Klicka här för mer information eller ta kontakt: ampquestions@qlik.com