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.
Na tej stronie opisano optymalizację predykcyjną, która automatycznie uruchamia operacje konserwacji dla tabel zarządzanych przez Unity Catalog w usłudze Azure Databricks.
Uwaga
Optymalizacja predykcyjna jest domyślnie włączona dla kont utworzonych w dniu lub po 11 listopada 2024 r. Usługa Databricks zaczęła włączać istniejące konta 7 maja 2025 r. To wdrożenie jest stopniowe i oczekuje się, że zakończy się do kwietnia 2026 r. Aby sprawdzić, czy twoje konto jest już włączone, zobacz Weryfikowanie, czy optymalizacja predykcyjna jest włączona.
Po włączeniu optymalizacji predykcyjnej usługa Databricks automatycznie wykonuje następujące czynności:
- Identyfikuje tabele, które potrzebują operacji konserwacyjnych i ustawia te operacje w kolejce do uruchomienia.
- Zbiera statystyki, gdy dane są zapisywane w zarządzanej tabeli.
Eliminuje to niepotrzebne przebiegi konserwacji oraz ręczne śledzenie i rozwiązywanie problemów z wydajnością.
Databricks zaleca optymalizację predykcyjną dla wszystkich tabel zarządzanych przez Unity Catalog. Na przykład automatyczne klastrowanie typu liquid wykorzystuje inteligentną optymalizację układu danych na podstawie wzorców użycia tych danych. Zobacz Używaj płynnego grupowania dla tabel.
Jakie operacje są uruchamiane podczas optymalizacji predykcyjnej?
Optymalizacja predyktywna uruchamia następujące operacje w tabelach zarządzanych Unity Catalogu:
| Działanie | opis |
|---|---|
OPTIMIZE |
Inicjuje klastrowanie przyrostowe dla włączonych tabel. Zobacz Używaj płynnego grupowania dla tabel. Zwiększa wydajność zapytań, optymalizując rozmiary plików. Zobacz Optymalizowanie układu pliku danych. |
VACUUM |
Zmniejsza koszty magazynowania, usuwając pliki danych, do których nie odwołuje się tabela. Zobacz Usuwanie nieużywanych plików danych z próżnią. |
ANALYZE |
Wyzwala przyrostowe aktualizowanie statystyk w celu zwiększenia wydajności zapytań. Zobacz ANALYZE TABLE ... STATYSTYKI OBLICZENIOWE. |
Uwaga
OPTIMIZE nie działa ZORDER podczas wykonywania przez optymalizację predykcyjną. W tabelach, które używają kolejności Z, optymalizacja predykcyjna ignoruje pliki uporządkowane w warstwie Z.
Jeśli automatyczne klastrowanie płynne jest włączone, optymalizacja predykcyjna może wybrać nowe klucze klastrowania przed klastrowaniem danych. Zobacz Automatyczne klastrowanie cieczy.
Ostrzeżenie
Okno przechowywania dla VACUUM jest określane przez właściwość tabeli delta.deletedFileRetentionDuration, która domyślnie wynosi 7 dni.
VACUUM Usuwa pliki danych, do których nie odwołuje się już wersja tabeli delty w tym oknie. Aby zachować dane przez dłuższy czas (na przykład w celu obsługi podróży w czasie rozszerzonym), ustaw tę właściwość przed włączeniem optymalizacji predykcyjnej:
ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');
Obliczenia i rozliczenia
Optymalizacja predykcyjna uruchamia operacje ANALYZE, OPTIMIZEi VACUUM przy użyciu bezserwerowych obliczeń dla zadań. Twoje konto jest rozliczane za to środowisko obliczeniowe przy użyciu jednostki SKU zadań bezserwerowych.
Zobacz cennik zarządzanych usług Databricks. Zobacz Śledzenie optymalizacji predykcyjnej przy użyciu tabel systemowych.
Wymagania wstępne
Aby korzystać z optymalizacji predykcyjnej, należy spełnić następujące wymagania:
- Obszar roboczy usługi Azure Databricks musi znajdować się w planie Premium w obsługiwanym regionie.
- Musisz użyć usług SQL Warehouse lub Databricks Runtime 12.2 LTS lub nowszych.
- Obsługiwane są tylko tabele zarządzane przez Unity Catalog.
- Jeśli potrzebujesz łączności prywatnej dla kont magazynu, skonfiguruj bezserwerową łączność prywatną. Zobacz Konfigurowanie łączności prywatnej z zasobami platformy Azure.
Włączanie optymalizacji predykcyjnej
Optymalizację predykcyjną można włączyć dla konta, katalogu lub schematu. Wszystkie tabele zarządzane przez Unity Catalog domyślnie dziedziczą wartość konta. Można nadpisać ustawienie domyślne konta na poziomie katalogu lub schematu.
Aby włączyć lub wyłączyć optymalizację predykcyjną, musisz mieć następujące uprawnienia:
| Obiekt katalogu Unity | Przywilej |
|---|---|
| Konto | Administrator konta |
| Katalog | Właściciel wykazu |
| Schemat | Właściciel schematu |
Włączanie lub wyłączanie optymalizacji predykcyjnej dla konta
Administrator konta może włączyć optymalizację predykcyjną dla wszystkich metastorów na koncie. Katalogi i schematy dziedziczą to ustawienie domyślnie, ale można je zastąpić na poziomie katalogu lub schematu.
- Przejdź do konsoli kont.
- Przejdź do pozycji Ustawienia, a następnie włącz funkcję.
- Wybierz odpowiednią opcję (na przykład Włączono) obok pozycji Optymalizacja predykcyjna.
Uwaga
- Magazyny metadanych w regionach, które nie obsługują optymalizacji predykcyjnej, nie są włączone.
- Wyłączenie optymalizacji predykcyjnej na poziomie konta nie powoduje wyłączenia jej dla wykazów ani schematów, które je specjalnie włączyły.
Włączanie lub wyłączanie optymalizacji predykcyjnej dla wykazu lub schematu
Optymalizacja predykcyjna używa modelu dziedziczenia. Po włączeniu dla katalogu, schematy w tym katalogu dziedziczą to ustawienie, a tabele w aktywnym schemacie również je dziedziczą. Możesz jawnie włączyć lub wyłączyć optymalizację predykcyjną katalogu lub schematu, aby zastąpić to zachowanie.
Uwaga
Optymalizację predykcyjną można wyłączyć na poziomie katalogu lub schematu przed włączeniem jej na poziomie konta. Jeśli optymalizacja predykcyjna zostanie później włączona na poziomie konta, pozostanie ona zablokowana dla tabel w tych obiektach.
Użyj następującej składni, aby włączyć, wyłączyć lub zresetować optymalizację predykcyjną, aby dziedziczyć z obiektu nadrzędnego:
ALTER CATALOG [catalog_name] { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
ALTER { SCHEMA | DATABASE } schema_name { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
Sprawdzanie, czy włączono optymalizację predykcyjną
Pole Predictive Optimization jest właściwością Unity Catalog, pokazujące, czy optymalizacja predykcyjna jest włączona. Jeśli ustawienie jest dziedziczone z obiektu nadrzędnego, wartość pola wskazuje to.
Aby sprawdzić stan, użyj następującej składni:
DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name
Śledzenie optymalizacji predykcyjnej przy użyciu tabel systemowych
Usługa Databricks udostępnia tabelę system.storage.predictive_optimization_operations_history systemu, która umożliwia obserwowanie operacji optymalizacji predykcyjnej, kosztów i wpływu. Zobacz odnośnik do tabeli systemu optymalizacji predykcyjnej .
Komunikat o błędzie łącza prywatnego
Jeśli tabela systemowa oznaczy operacje jako nieudane z usługą FAILED: PRIVATE_LINK_SETUP_ERROR, połączenie prywatne bezserwerowe może nie być poprawnie skonfigurowane. Zobacz Konfigurowanie łączności prywatnej z zasobami platformy Azure.
Ograniczenia
Optymalizacja predykcyjna nie jest uruchamiana w następujących typach tabeli:
- Tabele załadowane do obszaru roboczego jako odbiorcy Delta Sharing
- Tabele zewnętrzne