Przeskocz do zawartości głównej

Wyświetlanie i przekształcanie modelu danych

NA TEJ STRONIE

POWIĄZANE MATERIAŁY EDUKACYJNE

Wyświetlanie i przekształcanie modelu danych

Przeglądarka modelu danych stanowi przegląd struktury danych aplikacji. Można obejrzeć w niej szczegółowe metadane dotyczące tabel i pól. Dodatkowo można tworzyć nowe wymiary i miary z pól danych.

Kliknij pozycję Przeglądarka modelu danych na karcie Przygotuj na pasku nawigacyjnym, aby otworzyć przeglądarkę modelu danych.

Każda tabela danych jest reprezentowana przez pole zawierające nazwę tabeli jako tytuł i listę wszystkich pól z tabeli. Asocjacje w tabeli są przedstawione za pomocą linii, a linia kropkowana oznacza odwołanie cykliczne. W przypadku wyboru tabeli lub pola podświetlenie asocjacji natychmiast przedstawia obraz powiązań pól i tabel. Konkretne tabele i pola można wyszukiwać, klikając pozycję Search data model.

W trybie danych wyświetlana jest struktura danych aplikacji.

Data model viewer.

Poziom powiększenia można zmienić, klikając zoom in, zoom out albo używając suwaka. Kliknij Home w celu przywrócenia poziomu powiększenia do 1:1.

Panel podglądu umożliwia zapoznanie się z zawartością tabeli lub pola. Po wybraniu pola można też dodawać do aplikacji wymiary i miary. Więcej informacji zawiera temat Podgląd tabel i pól w przeglądarce modelu danych.

Przenoszenie tabel

Tabele można przenosić, przeciągając je po kanwie. Pozycje tabel są zapisywane w chwili zapisania aplikacji.

Układ tabel, czyli ich pozycje i rozmiary, można zablokować, klikając przycisk Locked w prawej części kanwy. Aby odblokować układ tabel, kliknij przycisk Unlocked.

Opcje menu Grid View na pasku narzędzi umożliwiają automatyczne dobranie układu:

Opcje przeznaczone do przenoszenia tabel
Element interfejsu użytkownika Nazwy Opisu
Grid View Układ siatki Rozmieszcza tabele na siatce.
auto Autom. układ Dopasowuje rozmieszczenie tabel do rozmiaru okna.
Time Przywróć układ Przywraca stan układu z chwili ostatniego otwarcia przeglądarki modelu danych.

Zmiana rozmiaru tabel

Ikona strzałki w prawym dolnym rogu tabeli umożliwia zmianę rozmiaru ekranowego tabeli. Rozmiar ekranowy nie jest zapisywany w chwili zapisania aplikacji.

Na pasku narzędzi są też dostępne opcje automatycznego rozmiaru ekranowego:

Opcje przeznaczone do zmiany rozmiaru tabeli
Element interfejsu użytkownika Nazwy Opisu
Collapse Zwiń wszystko Minimalizuje wszystkie tabele, aby były widoczne tylko ich nazwy.
Reduce Pokaż połączone pola Zmniejsza obszar zajmowany przez tabele, wyświetlając jedynie nazwę tabeli i pola skojarzone z innymi tabelami.
Expand Rozwiń wszystkie Maksymalizuje wszystkie tabele, aby były widoczne wszystkie ich pola.

Wydajność modelu danych

Są to wskaźniki, które mogą mieć wpływ na wydajność modelu danych. Każdy z nich stanowi najlepszą praktykę, która poprawia użyteczność aplikacji.

Najlepsze praktyki w zakresie wydajności modelu danych
Działanie Opis

Usunięcie kluczy syntetycznych

Qlik Sense tworzy klucze syntetyczne, gdy co najmniej dwie tabele danych mają dwa lub więcej wspólnych pól. Może to oznaczać, że w skrypcie lub modelu danych występuje błąd. Diagnostyka kluczy syntetycznych, patrz Klucze syntetyczne.

Usunięcie odwołań cyklicznych z modelu danych

Odwołania cykliczne występują, gdy dwa pola mają więcej niż jedną asocjację. Qlik Sense spróbuje je rozwiązać poprzez zmianę połączenia z jedną z tabel. Należy jednak rozwiązywać wszystkie ostrzeżenia związane z odwołaniami cyklicznymi, patrz Rozpoznawanie i naprawianie odwołań cyklicznych.

Odpowiednia szczegółowość danych

Należy ładować tylko te dane, które są niezbędne. Na przykład: grupa użytkowników potrzebuje tylko danych podzielonych według tygodnia, miesiąca i roku. W celu oszczędzenia w pamięci można załadować dane zagregowane lub zagregować dane w skrypcie ładowania. Jeśli użytkownik potrzebuje wizualizacji danych na niższym poziomie szczegółowość, można użyć ODAG lub powiązać łańcuchowego łączenia dokumentów.

Stosowanie plików QVDs tam, gdzie jest to możliwe

QVD to plik zawierający tabelę danych wyeksportowanych z programu Qlik Sense. Ten format pliku jest zoptymalizowany pod kątem szybkości odczytu danych ze skryptu, ale nadal jest bardzo kompaktowy. Odczyt danych z pliku QVD jest zazwyczaj 10–100 razy szybszy niż odczyt z innych źródeł danych. Więcej informacji zawiera temat: Praca z plikami QVD.

Optymalizacja plików QVD podczas ładowania

Dostępne są dwa tryby odczytu plików QVD: standardowy (szybki) i zoptymalizowany (szybszy). Wybrany tryb jest automatycznie określany przez silnik obsługi skryptów.

Istnieją pewne ograniczenia dotyczące ładowania zoptymalizowanego. Istnieje możliwość zmiany nazw pól, ale każda z tych operacji spowoduje standardowe ładowanie:

  • Jakiekolwiek transformacje pól, które są ładowane.
  • Użycie klauzuli where, co spowoduje, że program Qlik Sense rozpakuje rekordy.
  • Użycie polecenia Map względem ładowanego pola.

Wykorzystanie ładowania przyrostowego

Jeśli aplikacja łączy się z dużą ilością danych z baz danych, które są na bieżąco aktualizowane, przeładowanie całego zestawu danych może być czasochłonne. Zamiast tego do pobierania nowych lub zmienionych rekordów z bazy danych należy używać ładowania przyrostowego. Więcej informacji można znaleźć w temacie Ładowanie nowych i zaktualizowanych rekordów za pomocą funkcji ładowania przyrostowego.

Konsolidacja modelu Snowflake

W przypadku modelu danych płatka śniegu można zmniejszyć liczbę tabel danych, łącząc niektóre z nich przy użyciu prefiksu Join lub innego mapowania. Jest to szczególnie ważne w przypadku dużych tabel faktów. Dobrą zasadą ogólną jest stosowanie tylko jednej dużej tabeli. Więcej informacji w temacie Łączyć, czy nie łączyć.

Tabele z małą ilością pól są zdenormalizowane

W przypadku dwóch tabel z kilkoma polami połączenie ich może poprawić wydajność. Więcej informacji zawiera temat Łączenie tabel operatorami Join i Keep.

Zdenormalizowane tabele wyszukiwania (liść) z mapowaniem ładowania

Nie należy używać prefiksu Join , jeśli chce się tylko dodać jedno pole z jednej tabeli do drugiej. Należy użyć funkcji wyszukiwania ApplyMap , patrz Nie łącz – używaj funkcji ApplyMap.

Usunięcie lub odłączenie znaczników czasu od pola daty

Pola dat mogą wypełniać przestrzeń, gdy obecny jest znacznik czasu, ponieważ reprezentacja w postaci ciągu i liczba odrębnych wartości są większe. Jeśli precyzja nie jest konieczna do analizy, możesz zaokrąglić znacznik czasu do np. najbliższej godziny za pomocą funkcji Timestamp(Floor(YourTimestamp,1/24)) lub całkowicie usunąć składnik czasu za pomocą funkcji Date(Floor(YourTimestamp)).

Jeśli znacznik czasu ma być obecny, można go odłączyć od samej daty. Można użyć tej samej funkcji Floor(), a następnie utworzyć nowe pole z wyodrębnionym czasem, używając na przykład: Time(Frac(YourTimestamp)).

Usunięcie niepotrzebnych pól z modelu danych

Do modelu danych należy ładować tylko niezbędne pola. Należy unikać Load * i SELECT. Pamiętaj, aby zachować:

  • Pola, które są niezbędne do analizy.
  • Pola, które są faktycznie używane w aplikacji.

Unikanie tabel łączy w przypadku dużych ilości danych

W miarę możliwości należy korzystać z tabel łączy. Jednakże w przypadku dużych ilości danych skonkatenowane tabele mogą zapewniać wyższą wydajność niż tabele łączy.

Rozdzielanie skonkatenowanych wymiarów na nowe pola

Skonkatenowane wymiary należy rozdzielać na osobne pola. Zmniejsza to liczbę unikatowych wystąpień wartości w polach. Jest to podobne do optymalizacji znaczników czasu.

Używanie funkcji AutoNumber, gdy jest to możliwe

Ładowanie zoptymalizowane można utworzyć, najpierw ładując dane z pliku QVD, a następnie używając instrukcji AutoNumber celem przekształcenia wartości na klucze symboli. Więcej informacji zawiera temat AutoNumber.

Unikanie wysp danych

Wyspy danych mogą być użyteczne, ale zazwyczaj wpływają na wydajność. W przypadku tworzenia wysp dla wartości wyboru należy używać zmiennych.

Przechowywanie plików QVD w oparciu o przyrostowe przedziały czasu

Pliki QVD należy przechowywać w segmentach, np. miesięcznych. Te mniejsze miesięczne pliki QVD mogą następnie obsługiwać wiele różnych aplikacji, które niekoniecznie będą potrzebować wszystkich danych.

Więcej informacji dotyczących najlepszych praktyk zawiera temat Najlepsze praktyki w zakresie modelowania danych.