Udostępnij przez


Optymalizacja i buforowanie zestawów danych

Pulpity nawigacyjne sztucznej inteligencji/analizy biznesowej to cenne narzędzia do analizy danych i podejmowania decyzji, a efektywne czasy ładowania mogą znacznie poprawić środowisko użytkownika. W tym artykule wyjaśniono, jak buforowanie i optymalizacje zestawów danych sprawiają, że pulpity nawigacyjne są bardziej wydajne i wydajne.

Wydajność zapytań

Zapytania i ich wydajność można sprawdzić w historii zapytań obszaru roboczego. Historia zapytań przedstawia zapytania SQL wykonywane przy użyciu magazynów SQL. Kliknij ikonę Historia.Historia zapytań na pasku bocznym, aby wyświetlić historię zapytań. Zobacz Historia zapytań.

W przypadku zestawów danych pulpitu nawigacyjnego usługa Azure Databricks stosuje optymalizacje wydajności w zależności od rozmiaru wyniku zestawu danych. Aby uzyskać informacje na temat progów wydajności zestawu danych, zobacz Progi wydajności zestawu danych.

Optymalizacje zestawów danych

Pulpity nawigacyjne są optymalizowane pod kątem szybkości, wykonując operacje filtrowania i agregacji oparte na filtrach lub ustawieniach wizualizacji bezpośrednio w przeglądarce, jeśli to możliwe. Te optymalizacje wydajności mają następujące limity:

Rozmiar zestawu danych Przebieg przetwarzania
Małe (≤ 100 000 wierszy i ≤ 100 MB) Aby uzyskać optymalną szybkość pulpitu nawigacyjnego, filtrowanie i agregacja są uruchamiane w przeglądarce po załadowaniu początkowego zestawu danych. Ponieważ te operacje są przetwarzane lokalnie, unikają dalszej interakcji z magazynem danych i nie są wyświetlane w historii zapytań.
Duży (> 100 tys. wierszy lub > 100 MB) Filtrowanie i agregacja są obsługiwane na serwerze zaplecza zamiast w przeglądarce. Początkowe zapytanie zestawu danych jest opakowane w klauzulę SQL WITH , a wynikowe zapytanie pojawia się w historii zapytań.
Połączone zapytania (duże zestawy danych) W przypadku zapytań wizualizacji wysyłanych do zaplecza oddzielne zapytania wizualizacji względem tego samego zestawu danych, które współużytkują te same GROUP BY klauzule i predykaty filtrów, są łączone w pojedyncze zapytanie do przetwarzania. W takim przypadku użytkownicy mogą zobaczyć połączone zapytanie w historii zapytań, które pobiera wyniki dla wielu wizualizacji lub filtrów.

Uwaga / Notatka

Parametry zastępują wartości bezpośrednio w zapytaniu w czasie wykonywania, więc te operacje zawsze pojawiają się w historii zapytań.

Buforowanie i świeżość danych

Pulpity nawigacyjne obsługują 24-godzinną pamięć podręczną wyników w celu zoptymalizowania początkowych czasów ładowania, działających w oparciu o najlepsze wysiłki. Oznacza to, że podczas gdy system zawsze próbuje użyć historycznych wyników zapytań połączonych z poświadczeniami pulpitu nawigacyjnego w celu zwiększenia wydajności, w niektórych przypadkach nie można utworzyć lub zachować buforowanych wyników. Buforowane dane nie mają określonego limitu pamięci ani stałej liczby zapytań.

Aby poprawić czas ładowania, pulpity nawigacyjne najpierw sprawdzają pamięć podręczną pulpitu nawigacyjnego. Jeśli żadne wyniki pamięci podręcznej nie są dostępne, sprawdzają ogólną pamięć podręczną wyników zapytania. Chociaż pamięć podręczna pulpitu nawigacyjnego może zwracać nieaktualne wyniki przez maksymalnie 24 godziny, pamięć podręczna wyników zapytania nigdy nie zwraca nieaktualnych danych. Po zmianie danych bazowych wszystkie wpisy pamięci podręcznej wyników zapytania są unieważniane.

W przypadku pulpitów nawigacyjnych wielostronicowych mają zastosowanie następujące elementy:

  • Edytowanie roboczego pulpitu nawigacyjnego ładuje i buforuje wszystkie zestawy danych.
  • Gdy osoby przeglądające otwierają opublikowany pulpit nawigacyjny, są uruchamiane i buforowane tylko zestawy danych, które obsługują aktywną stronę.
  • Jeśli harmonogram jest ustawiony, wszystkie zestawy danych są odświeżane zgodnie z harmonogramem, a wyniki te są buforowane.

W poniższej tabeli wyjaśniono, jak buforowanie różni się w zależności od stanu pulpitu nawigacyjnego i poświadczeń:

Typ pulpitu nawigacyjnego Typ buforowania
Panel sterowania opublikowany z uprawnieniami udostępnionych danych Udostępniona pamięć podręczna. Wszyscy widzowie widzą te same wyniki.
Wersja robocza pulpitu nawigacyjnego lub opublikowany pulpit nawigacyjny z indywidualnymi pozwoleniami na dostęp do danych Pamięć podręczna użytkownika. Osoby przeglądające widzą wyniki na podstawie ich uprawnień do danych.

Pulpity nawigacyjne automatycznie używają wyników buforowanych zapytań, jeśli dane bazowe pozostają niezmienione po ostatnim zapytaniu lub jeśli wyniki zostały pobrane mniej niż 24 godziny temu. Jeśli istnieją nieaktualne wyniki i parametry są stosowane do pulpitu nawigacyjnego, zapytania zostaną uruchomione ponownie, chyba że te same parametry zostały użyte w ciągu ostatnich 24 godzin. Podobnie stosowanie filtrów do zestawów danych przekraczających 100 000 wierszy powoduje wyświetlenie monitów o ponowne uruchomienie zapytań, chyba że te same filtry zostały wcześniej zastosowane w ciągu ostatnich 24 godzin.

Bieżące funkcje znacznika czasu i unieważnienie pamięci podręcznej

Użycie current_timestamp() lub podobnych funkcji w zapytaniu SQL nie powoduje unieważnienia pamięci podręcznej na poziomie pulpitu nawigacyjnego. Jednak te funkcje unieważniają pamięć podręczną wyników zapytania, która sprawdza zapytanie SQL i wyzwala odświeżanie pamięci podręcznej.

Zaplanowane zapytania

Dodanie harmonogramu do pulpitu nawigacyjnego opublikowanego z uprawnieniami do udostępnionych danych może znacznie przyspieszyć początkowy proces ładowania dla wszystkich osób przeglądających pulpit nawigacyjny.

Dla każdej zaplanowanej aktualizacji pulpitu nawigacyjnego są wykonywane następujące czynności:

  • Cała logika SQL, która definiuje zestawy danych, jest uruchamiana w wyznaczonym przedziale czasu.
  • Wyniki wypełniają pamięć podręczną wyników zapytania i pomagają poprawić początkowy czas ładowania pulpitu nawigacyjnego.