Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Konserwacja tabel Delta pomaga utrzymać ich wysoką wydajność i efektywne wykorzystanie przestrzeni dyskowej w miarę ich rozrastania się. Z czasem tabele delty mogą gromadzić wiele małych plików, usunięte dane mogą nadal zużywać miejsce do magazynowania, a nieaktualne statystyki mogą zmniejszyć wydajność zapytań. Regularna konserwacja pomaga zwiększyć wydajność odczytu, odzyskać miejsce na dysku i utrzymać metadane tabeli w zgodności ze sposobem, w jaki obciążenia uzyskują dostęp do danych. Skorzystaj z tego artykułu jako krótkiego przewodnika po głównych operacjach konserwacji dostępnych dla tabel delty.
Dlaczego konserwacja ma znaczenie
W miarę zwiększania się tabel delty aktywność zapisu zmienia fizyczny układ tabeli. Powtarzające się zadania ładowania danych mogą tworzyć wiele małych plików, operacje aktualizacji i usuwania mogą pozostawiać pliki bez odwołań lub wiersze oznaczone jako usunięte, a starsze statystyki mogą utrudniać Sparkowi pomijanie niepotrzebnych danych. Jeśli regularnie utrzymujesz tabele, zmniejszasz narzut związany ze skanowaniem, pomagasz platformie Fabric skuteczniej optymalizować zapytania i unikasz płacenia za przechowywanie aktywnych wersji tabel, które nie są już potrzebne.
Użyj OPTIMIZE do zagęszczania pojemników
Użyj polecenia OPTIMIZE, gdy tabela Delta zgromadziła wiele małych plików i chcesz skonsolidować je do mniejszej liczby większych plików. Ta operacja poprawia wydajność odczytu, zmniejszając obciążenie związane z zarządzaniem plikami i zwiększając wydajność skanowania.
OPTIMIZE Obsługuje również inne argumenty i funkcje, takie jak VORDER. Pełną składnię, opcje i przykłady można znaleźć w Table compactaction and V-order.
Czyszczenie magazynu przy użyciu funkcji VACUUM
Użyj polecenia VACUUM, jeśli chcesz usunąć pliki danych, do których nie ma odwołań, starsze niż skonfigurowany okres przechowywania. W usłudze Fabric ta operacja pomaga odzyskać miejsce w magazynie OneLake po aktualizacjach, usunięciach, scalaniu, operacjach nadpisywania i kompaktacji.
VACUUM koncentruje się na oczyszczaniu pamięci masowej, a nie na dostrajaniu zapytań, więc zwykle uzupełnia inne zadania konserwacyjne, a nie je zastępuje. Aby uzyskać wskazówki dotyczące przechowywania i szczegóły wykonywania, zobacz VACUUM.
Użyj REORG do ukierunkowanej reorganizacji
Użyj REORG polecenia , gdy musisz ponownie zapisać stan tabeli dla określonego celu konserwacji zamiast ogólnego kompaktowania plików. W Delta Lake REORG TABLE ... APPLY (PURGE) fizycznie usuwa wiersze oznaczone jako usunięte przez wektory usuwania. Informacje o obsługiwanych opcjach i o tym, kiedy ich używać, znajdują się w temacie Reorganizowanie tabel Delta za pomocą polecenia REORG.
Note
REORG zwykle nie jest potrzebne, ponieważ OPTIMIZE automatycznie usuwa pliki, w których ponad 5% rekordów jest wskazywanych przez wektory usuwania.
Zachowaj aktualność statystyk
Środowisko uruchomieniowe Fabric Spark obsługuje dwa typy statystyk dla tabel Delta: statystyki plików i statystyki tabel.
- Statystyki plików — usługa Delta Lake rejestruje wartości minimalne, maksymalne i zerowe dla indeksowanych kolumn za każdym razem, gdy plik danych jest zapisywany. Silnik Spark używa tych statystyk do pomijania plików, które nie mogą zawierać wierszy spełniających predykat zapytania, co zmniejsza ilość skanowanych danych. Domyślnie statystyki są zbierane dla pierwszych 32 kolumn. Szczegółowe informacje na temat działania pomijania plików oraz dostosowywania, dla których kolumn zbierane są statystyki, można znaleźć w sekcji Pomijanie plików.
- Statystyki tabel — statystyki na poziomie kolumny agregowane we wszystkich plikach w tabeli są zachowywane automatycznie, dzięki czemu platforma Spark ma lepsze metadane na potrzeby planowania zapytań. Te statystyki zwiększają wydajność dzięki lepszym decyzjom optymalizacji filtrów, sprzężeń i agregacji. Aby dowiedzieć się, jak działają zautomatyzowane statystyki i jak skonfigurować, zobacz Zautomatyzowane statystyki dla tabel delty.
Używanie autokompacji do ciągłego zarządzania plikami
Delta Lake obsługuje również automatyczne kompaktowanie po operacjach zapisu, dzięki czemu można utrzymywać tabele w lepszym stanie bez konieczności uruchamiania za każdym razem osobnego zadania ręcznie. To zachowanie można kontrolować za pomocą właściwości tabeli lub ustawień obszaru roboczego, w zależności od sposobu zarządzania obciążeniami platformy Spark. Aby uzyskać szczegółowe informacje na temat sposobu włączania, zobacz Automatyczne kompaktowanie .
Uruchamianie konserwacji z interfejsu użytkownika usługi Lakehouse
Jeśli wolisz workflow oparty na interfejsie użytkownika, możesz uruchamiać działania konserwacyjne bezpośrednio z Lakehouse Explorer, zobacz Lakehouse table maintenance.
Postępuj zgodnie z praktycznym cyklem konserwacji
Uruchamiaj OPTIMIZE po dużym wsadowym imporcie danych lub zawsze, gdy małe pliki zaczynają się gromadzić i spowalniać odczyt. Uruchamiaj VACUUM regularnie, na przykład co tydzień lub po głównych cyklach kompaktowania, aby odzyskać miejsce na dysku z plików, do których tabela już się nie odwołuje.
REORG TABLE ... APPLY (PURGE) nie jest wymagana jako rutynowa konserwacja, ponieważ OPTIMIZE automatycznie czyści pliki, w których więcej niż 5% rekordów są przywoływania przez wektory usuwania. Rezerwa PURGE dla scenariuszy wymagających wyraźnej kontroli, takich jak zgodność lub obowiązki RODO. Monitoruj stan tabeli za pomocą DESCRIBE DETAIL i DESCRIBE HISTORY, dzięki czemu możesz śledzić liczbę plików, rozmiar i historię działań konserwacyjnych przed i po każdej operacji.
-- View current table state
DESCRIBE DETAIL table_name;
-- View history of transactions
DESCRIBE HISTORY table_name;