Co to jest predykcyjna we/wy?
Predykcyjne we/wy to kolekcja optymalizacji usługi Azure Databricks, które zwiększają wydajność interakcji z danymi. Możliwości we/wy predykcyjne są pogrupowane w następujące kategorie:
- Przyspieszone operacje odczytu skracają czas skanowania i odczytu danych.
- Przyspieszone aktualizacje zmniejszają ilość danych, które należy przepisać podczas aktualizacji, usuwania i scalania.
Predykcyjne we/wy są dostępne wyłącznie dla aparatu Photon w usłudze Azure Databricks.
Przyspieszanie operacji odczytu przy użyciu predykcyjnego we/wy
Predykcyjne operacje we/wy służą do przyspieszania skanowania i filtrowania danych dla wszystkich operacji na obsługiwanych typach obliczeniowych.
Ważne
Odczyty we/wy predykcyjne są obsługiwane przez bezserwerowe i pro typów magazynów SQL oraz klastry przyspieszone przez aplikację Photon z uruchomionym środowiskiem Databricks Runtime 11.3 LTS i nowszymi wersjami.
Predykcyjne we/wy zwiększają wydajność skanowania przez zastosowanie technik uczenia głębokiego w celu wykonania następujących czynności:
- Określ najbardziej wydajny wzorzec dostępu do odczytywania danych i skanowania tylko potrzebnych danych.
- Wyeliminuj dekodowanie kolumn i wierszy, które nie są wymagane do generowania wyników zapytania.
- Oblicz prawdopodobieństwo kryteriów wyszukiwania w zapytaniach selektywnych pasujących do wiersza. W miarę uruchamiania zapytań użyjemy tych prawdopodobieństw, aby przewidzieć, gdzie wystąpi następny pasujący wiersz i tylko odczytać te dane z magazynu w chmurze.
Przyspieszanie aktualizacji za pomocą predykcyjnego we/wy
Predykcyjne operacje we/wy dla aktualizacji są używane automatycznie dla wszystkich tabel z włączonymi wektorami usuwania przy użyciu następujących typów obliczeniowych z obsługą technologii Photon:
- Bezserwerowe magazyny SQL.
- Magazyny Pro SQL Warehouse.
- Klastry z uruchomionym środowiskiem Databricks Runtime 14.0 lub nowszym.
Uwaga
Obsługa predykcyjnego we/wy w przypadku aktualizacji jest obecna w środowisku Databricks Runtime 12.2 LTS lub nowszym, ale usługa Databricks zaleca użycie wersji 14.0 lub nowszej w celu uzyskania najlepszej wydajności.
Zobacz Co to są wektory usuwania?.
Ważne
Ustawienie administratora obszaru roboczego określa, czy wektory usuwania są automatycznie włączone dla nowych tabel delty. Zobacz Automatyczne włączanie wektorów usuwania.
Obsługę wektorów usuwania w tabeli usługi Delta Lake można włączyć, ustawiając właściwość tabeli usługi Delta Lake. Można włączyć wektory usuwania podczas tworzenia tabeli lub zmienić istniejącą tabelę, jak w następujących przykładach:
CREATE TABLE <table-name> [options] TBLPROPERTIES ('delta.enableDeletionVectors' = true);
ALTER TABLE <table-name> SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);
Ostrzeżenie
Po włączeniu wektorów usuwania wersja protokołu tabeli zostanie uaktualniona. Po uaktualnieniu tabela nie będzie czytelna dla klientów usługi Delta Lake, którzy nie obsługują wektorów usuwania. Zobacz artykuł Jak usługa Azure Databricks zarządza zgodnością funkcji usługi Delta Lake?.
Aby uzyskać listę klientów obsługujących wektory usuwania, zobacz Zgodność z klientami różnicowymi.
W środowisku Databricks Runtime 14.1 lub nowszym można usunąć funkcję tabeli wektorów usuwania, aby umożliwić zgodność z innymi klientami delty. Zobacz Usuwanie funkcji tabeli delty.
Predykcyjne operacje we/wy wykorzystują wektory usuwania w celu przyspieszenia aktualizacji przez zmniejszenie częstotliwości ponownego zapisywania pełnych plików podczas modyfikowania danych w tabelach delty. Predykcyjne we/wy optymalizuje operacje DELETE
, MERGE
i UPDATE
.
Zamiast ponownie zapisywać wszystkie rekordy w pliku danych po zaktualizowaniu lub usunięciu dowolnego rekordu, predykcyjne we/wy używa wektorów usuwania, aby wskazać, że rekordy zostały usunięte z plików danych docelowych. Pliki danych uzupełniających służą do wskazywania aktualizacji.
Kolejne operacje odczytu w tabeli rozpoznają bieżący stan tabeli, stosując zanotowane zmiany do najnowszej wersji tabeli.
Ważne
Aktualizacje we/wy predykcyjne współużytkuje wszystkie ograniczenia dotyczące wektorów usuwania. W środowisku Databricks Runtime 12.2 LTS i nowszym istnieją następujące ograniczenia:
- Udostępnianie różnicowe nie jest obsługiwane w tabelach z włączonymi wektorami usuwania.
- Nie można wygenerować pliku manifestu dla tabeli z obecnymi wektorami usuwania. Uruchom
REORG TABLE ... APPLY (PURGE)
polecenie i upewnij się, że nie są uruchomione żadne współbieżne operacje zapisu w celu wygenerowania manifestu. - Nie można przyrostowo wygenerować plików manifestu dla tabeli z włączonymi wektorami usuwania.