Co je prediktivní I/O?

Prediktivní vstupně-výstupní operace je kolekce optimalizací Azure Databricks, které zlepšují výkon interakcí s daty. Prediktivní vstupně-výstupní funkce jsou seskupené do následujících kategorií:

  • Zrychlené čtení zkracuje dobu potřebnou ke skenování a čtení dat.
  • Akcelerované aktualizace snižují množství dat, která je potřeba při aktualizacích, odstraňování a slučování přepsat.

Prediktivní vstupně-výstupní operace jsou exkluzivní pro modul Photon v Azure Databricks.

Zrychlení čtení pomocí prediktivních vstupně-výstupních operací

Prediktivní vstupně-výstupní operace se používají ke zrychlení prohledávání dat a filtrování výkonu pro všechny operace na podporovaných výpočetních typech.

Important

Prediktivní čtení vstupně-výstupních operací jsou podporovány bezserverovými a profesionálními typy SQL warehouse a Photon-akcelerovanými clustery spuštěnými modulem Databricks Runtime 11.3 LTS a vyšší verzí.

Prediktivní vstupně-výstupní operace vylepšují výkon skenování použitím technik hlubokého učení k provedení následujících kroků:

  • Určete nejúčinnější vzor přístupu ke čtení dat a kontrolujte pouze data, která jsou skutečně potřebná.
  • Eliminujte dekódování sloupců a řádků, které nejsou potřeba k vygenerování výsledků dotazu.
  • Vypočítejte pravděpodobnosti, že kritéria vyhledávání v selektivních dotazech odpovídají řádku. Při spouštění dotazů používáme tyto pravděpodobnosti k předvídání toho, kde by došlo k dalšímu odpovídajícímu řádku, a pouze ke čtení těchto dat z cloudového úložiště.

Zrychlení aktualizací pomocí prediktivních vstupně-výstupních operací

Prediktivní vstupně-výstupní operace pro aktualizace se používají automaticky pro všechny tabulky s povolenými vektory odstranění pomocí následujících výpočetních typů s podporou Photon:

  • Bezserverové sklady SQL.
  • Sklady Pro SQL.
  • Clustery s Modulem Databricks Runtime 14.0 a novějším

Note

Podpora prediktivních vstupně-výstupních operací pro aktualizace je k dispozici v Databricks Runtime 12.2 LTS a vyšší, ale Databricks doporučuje pro zajištění nejlepšího výkonu používat verzi 14.0 a vyšší.

Viz vektory odstranění v Databricks.

Important

Nastavení správce pracovního prostoru určuje, jestli jsou vektory odstranění pro nové tabulky Delta povolené automaticky. Viz automatické povolení vektorů odstranění.

Podporu vektorů odstranění v tabulce Delta Lake povolíte nastavením vlastnosti tabulky Delta Lake. Při vytváření tabulky nebo úpravě existující tabulky povolíte vektory odstranění, jak je znázorněno v následujících příkladech:

CREATE TABLE <table-name> [options] TBLPROPERTIES ('delta.enableDeletionVectors' = true);

ALTER TABLE <table-name> SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);

Warning

Když povolíte vektory odstranění, upgraduje se verze protokolu tabulky. Po upgradu nebude tabulka čitelná klienty Delta Lake, kteří nepodporují vektory odstranění. Viz kompatibilita a protokoly funkcí Delta Lake.

Seznam klientů, kteří podporují vektory odstranění, naleznete v tématu Kompatibilita klientů.

V Databricks Runtime 14.1 a novější můžete zrušit funkci tabulky pro mazací vektory, což umožní kompatibilitu s jinými klienty Delta. Viz Smazat tabulku Delta Lake a snížit protokol tabulky.

Prediktivní vstupně-výstupní operace využívá vektory odstranění k urychlení aktualizací snížením četnosti přepisů souborů během úprav dat v tabulkách Delta. Prediktivní vstupně-výstupní operace optimalizují DELETEMERGEa UPDATE provoz.

Místo přepsání všech záznamů v datovém souboru při aktualizaci nebo odstranění jakéhokoli záznamu používá prediktivní vstupně-výstupní vektory k označení, že se z cílových datových souborů odebraly záznamy. Doplňkové datové soubory slouží k označení aktualizací.

Následná čtení na tabulce vyřeší aktuální stav tabulky aplikováním uvedených změn na nejnovější verzi tabulky.

Important

Prediktivní aktualizace vstupně-výstupních operací sdílejí všechna omezení s vektory odstranění. Ve službě Databricks Runtime 12.2 LTS a vyšší existují následující omezení:

  • Delta Sharing není podporováno u tabulek s povolenými vektory odstranění.
  • Nelze vygenerovat soubor manifestu pro tabulku s přítomnými vektory odstranění. Spusťte REORG TABLE ... APPLY (PURGE) a ujistěte se, že nejsou spuštěny žádné souběžné operace zápisu, aby se vygeneroval manifest.
  • Soubory manifestu nelze přírůstkově generovat pro tabulku s povolenými vektory odstranění.