Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Hierarchie

Niezrównoważone hierarchie n-poziomowe często występują w danych na przykład jako reprezentacje organizacyjnych lub geograficznych wymiarów w danych. Hierarchie tego typu są zazwyczaj zapisywane w postaci tabeli węzłów sąsiadujących, w której każdy rekord odpowiada jednemu węzłowi, a jedno z pól stanowi odniesienie do węzła macierzystego.

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

W takiej tabeli każdy węzeł jest zapisany tylko w jednym rekordzie, ale mimo to może mieć dowolną liczbę węzłów potomnych. Tabela może oczywiście zawierać dodatkowe pola opisujące atrybuty węzłów.

Tabela węzłów sąsiadujących jest optymalną strukturą z punktu widzenia utrzymania danych, ale korzystanie z niej jest niewygodne. Na potrzeby zapytań i analiz używane są inne reprezentacje. Często stosowaną reprezentacją jest tabela rozwiniętych węzłów, w której każdy poziom hierarchii jest zapisany w odrębnym polu. Poszczególnych poziomów tabeli węzłów sąsiadujących można w prosty sposób używać na przykład w ramach struktury drzewiastej. Aby przekształcić tabelę węzłów sąsiadujących w tabelę węzłów rozwiniętych, należy użyć w skrypcie ładowania słowa kluczowego hierarchy.

Przykład:  

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

Tabela węzłów rozwiniętych jest jednak niewygodna w przypadku używania pól poziomów w wyszukiwaniach i selekcjach, gdyż konieczna jest wcześniejsza znajomość poziomu, którego będzie dotyczyć wyszukiwanie lub selekcja. Problem ten rozwiązuje jeszcze inna reprezentacja — tabela węzłów macierzystych. Inna nazwa tej reprezentacji to tabela pomostowa.

Tabela węzłów macierzystych zawiera jeden rekord dla każdej występującej w danych relacji potomny-macierzysty. Znajdują się w niej klucze i nazwy elementów potomnych i macierzystych. Oznacza to, że każdy rekord wskazuje węzeł macierzysty danego węzła. Aby przekształcić tabelę węzłów sąsiadujących w tabelę węzłów macierzystych, należy w skrypcie ładowania użyć słowa kluczowego hierarchybelongsto.

Dowiedz się więcej

 

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!

Dołącz do Programu Modernizacji Analityki

Remove banner from view

Przeprowadź modernizację bez szkody dla Twoich cennych aplikacji QlikView za pomocą programu Analytics Modernization Program. Kliknij tutaj aby uzyskać więcej informacji lub skontaktuj się z nami: ampquestions@qlik.com