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.
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. .
Poziom powiększenia można zmienić, klikając ,
albo używając suwaka. Kliknij
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 w prawej części kanwy. Aby odblokować układ tabel, kliknij przycisk
.
Opcje menu na pasku narzędzi umożliwiają automatyczne dobranie układu:
Element interfejsu użytkownika | Nazwy | Opisu |
---|---|---|
|
Układ siatki | Rozmieszcza tabele na siatce. |
|
Autom. układ | Dopasowuje rozmieszczenie tabel do rozmiaru okna. |
|
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:
Element interfejsu użytkownika | Nazwy | Opisu |
---|---|---|
|
Zwiń wszystko | Minimalizuje wszystkie tabele, aby były widoczne tylko ich nazwy. |
|
Pokaż połączone pola | Zmniejsza obszar zajmowany przez tabele, wyświetlając jedynie nazwę tabeli i pola skojarzone z innymi tabelami. |
|
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.
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. |
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 |
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ć |
Stosowanie plików QVDs tam, gdzie jest to możliwe |
|
Optymalizacja plików QVD podczas ładowania |
Pliki Istnieją pewne ograniczenia dotyczące ładowania zoptymalizowanego. Istnieje możliwość zmiany nazw pól, ale każda z tych operacji spowoduje standardowe ładowanie:
|
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. |
Konsolidacja modelu |
W przypadku modelu danych płatka śniegu można zmniejszyć liczbę tabel danych poprzez użycie prefiksu |
Tabele z małą ilością pól są zdenormalizowane |
W przypadku dwóch tabel z kilkoma polami połączenie ich może poprawić wydajność. |
Zdenormalizowane tabele wyszukiwania (liść) z mapowaniem ładowania |
Nie należy używać prefiksu |
Usunięcie lub odłączenie znaczników czasu od pola daty |
Pola daty mogą wypełniać przestrzeń, gdy występuje znacznik czasu, ponieważ posiada on większe wartości i niepotrzebną unikalność w wyniku różnych wartości znacznika czasu. Jeśli znacznik czasu nie jest potrzebny do analizy, można go usunąć za pomocą funkcji Date(Floor(YourDateField)). 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 znacznikiem czasu, używając na przykład: Time(Frac(Timestamp#(YourDateField,'MM/DD/YYYY h:mm:ss TT'))) |
Usunięcie niepotrzebnych pól z modelu danych |
Do modelu danych należy ładować tylko niezbędne pola. Należy unikać funkcji
|
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 ilość unikalnych 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. |
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.