Delen via


Voorspellende optimalisatie voor beheerde tabellen in Unity Catalog

Notitie

Databricks maakt voorspellende optimalisatie standaard mogelijk voor alle accounts die na 11 november 2024 zijn gemaakt. Vanaf 7 mei 2025 schakelt Databricks voorspellende optimalisatie standaard in voor alle bestaande Databricks-accounts. Dit wordt geleidelijk geïmplementeerd op basis van uw regio en wordt voltooid op 1 juli 2025. U kunt controleren of voorspellende optimalisatie is ingeschakeld voor uw account.

Met voorspellende optimalisatie hoeft u geen onderhoudsbewerkingen voor beheerde Unity Catalog-tabellen in Azure Databricks handmatig te beheren.

Als voorspellende optimalisatie is ingeschakeld, doet Azure Databricks automatisch het volgende:

  • Identificeert tabellen die baat hebben bij onderhoudsbewerkingen en plaatst deze bewerkingen in een wachtrij om uit te voeren.
  • Verzamelt statistieken wanneer gegevens naar een beheerde tabel worden geschreven.

Onderhoudsbewerkingen worden indien nodig uitgevoerd, waardoor zowel onnodige uitvoeringen voor onderhoudsbewerkingen als de last van het bijhouden en oplossen van problemen worden voorkomen.

Databricks raadt aan om voorspellende optimalisatie te gebruiken voor alle beheerde Unity Catalog-tabellen. Automatische vloeistofclustering heeft bijvoorbeeld intelligente optimalisatie van de gegevensindeling op basis van uw gegevensgebruikspatronen. Zie Liquid Clustering gebruiken voor tabellen.

Belangrijk

Voorspellende optimalisatie wordt alleen uitgevoerd op beheerde tabellen van Unity Catalog.

Voorspellende optimalisatie is niet beschikbaar in alle regio's. Zie Functies met beperkte regionale beschikbaarheid.

Welke bewerkingen worden uitgevoerd voor voorspellende optimalisatie?

Voorspellende optimalisatie voert de volgende bewerkingen automatisch uit voor ingeschakelde tabellen:

Operatie Omschrijving
OPTIMIZE (1) Triggert stapsgewijze clustering van ingeschakelde tabellen. Zie Liquid Clustering gebruiken voor tabellen.
Verbetert de queryprestaties door de bestandsgrootten te optimaliseren. Zie Indeling van gegevensbestand optimaliseren.
VACUUM Vermindert de opslagkosten door gegevensbestanden te verwijderen waarnaar niet meer wordt verwezen door de tabel. Zie Ongebruikte gegevensbestanden verwijderen met vacuüm.
ANALYZE Activeert incrementele update van statistieken om de queryprestaties te verbeteren. Zie ANALYZE TABLE.

(1)OPTIMIZE wordt niet uitgevoerd ZORDER wanneer deze wordt uitgevoerd met voorspellende optimalisatie. In tabellen die gebruikmaken van Z-volgorde, worden de Z-geordende bestanden genegeerd door voorspellende optimalisatie.

Als automatische liquide clustering is ingeschakeld, kan voorspellende optimalisatie nieuwe clusteringsleutels selecteren voordat gegevens worden geclusterd. Zie Automatische vloeistofclustering.

Waarschuwing

Het bewaarvenster voor de opdracht VACUUM wordt bepaald door de eigenschap delta.deletedFileRetentionDuration tabel, die standaard 7 dagen is. Dit betekent dat VACUUM gegevensbestanden verwijdert waarnaar in de afgelopen 7 dagen niet meer wordt verwezen door een Delta-tabelversie. Als u gegevens langer wilt bewaren (zoals het ondersteunen van tijdreizen voor langere duur), moet u deze tabeleigenschap instellen voordat u voorspellende optimalisatie inschakelt, zoals in het volgende voorbeeld:

ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');

Als u onder de standaardwaarde van 7 dagen configureert delta.deletedFileRetentionDuration , wordt voorspellende optimalisatie uitgevoerd VACUUM met een retentieduur van 7 dagen.

Waar wordt voorspellende optimalisatie uitgevoerd?

Voorspellende optimalisatie identificeert tabellen die baat hebben bij ANALYZE, OPTIMIZEen VACUUM bewerkingen en plaatst ze in een wachtrij voor uitvoering met behulp van serverloze rekenkracht voor taken. Uw account wordt gefactureerd voor de compute-resources die aan deze workloads zijn gekoppeld, met behulp van een serverloze taken-SKU.

Zie prijzen voor beheerde Databricks-services. Zie Systeemtabellen gebruiken om voorspellende optimalisatie bij te houden.

Vereisten voor voorspellende optimalisatie

U moet voldoen aan de volgende vereisten om voorspellende optimalisatie in te schakelen:

  • Uw Azure Databricks-werkruimte moet zich in het Premium-abonnement bevinden in een regio die predictive optimization ondersteunt. Zie Functies met beperkte regionale beschikbaarheid.
  • U moet SQL Warehouses of Databricks Runtime 12.2 LTS of hoger gebruiken wanneer u voorspellende optimalisatie inschakelt.
  • Alleen beheerde tabellen in Unity Catalog worden ondersteund.

Voorspellende optimalisatie inschakelen

U kunt voorspellende optimalisatie inschakelen voor een account, een catalogus of een schema. Alle beheerde tabellen van Unity Catalog nemen standaard de accountwaarde over. U kunt de standaardinstelling van het account voor een catalogus of schema overschrijven om voorspellende optimalisatie op dat niveau in of uit te schakelen.

Notitie

Als uw account na 11 november 2024 is gemaakt, is voorspellende optimalisatie standaard ingeschakeld. Vanaf 7 mei 2025 is voorspellende optimalisatie standaard ingeschakeld voor alle bestaande accounts. Dit wordt geleidelijk geïmplementeerd op basis van uw regio en wordt voltooid op 1 juli 2025.

U moet over de volgende bevoegdheden beschikken om voorspellende optimalisatie op het opgegeven niveau in of uit te schakelen:

Unity Catalog-object voorrecht
Gebruikersaccount Accountbeheerder
Catalogus Cataloguseigenaar
Schema Schema-eigenaar

Voorspellende optimalisatie voor uw account in- of uitschakelen

Een accountbeheerder kan de volgende stappen uitvoeren om voorspellende optimalisatie in te schakelen voor alle metastores in een account. Objecten in het account nemen deze instelling standaard over (maar de instelling kan worden overschreven op catalogus- of schemaniveau):

  1. Toegang tot de accountconsole.
  2. Navigeer naar Instellingen en schakel functie in.
  3. Selecteer de optie die u wilt gebruiken (bijvoorbeeld ingeschakeld) naast voorspellende optimalisatie.

Notitie

  • Metastores in regio's die geen ondersteuning bieden voor voorspellende optimalisatie, worden niet ingeschakeld.
  • Als u voorspellende optimalisatie uitschakelt op accountniveau, wordt deze niet uitgeschakeld voor catalogi of schema's waarvoor deze specifiek is ingeschakeld.

Voorspellende optimalisatie voor een catalogus of schema in- of uitschakelen

Voorspellende optimalisatie maakt gebruik van een overnamemodel. Wanneer ze zijn ingeschakeld voor een catalogus, nemen schema's de eigenschap over. Tabellen binnen een ingeschakeld schema nemen voorspellende optimalisatie over. Als u dit overnamegedrag wilt overschrijven, kunt u voorspellende optimalisatie expliciet in- of uitschakelen voor een catalogus of schema.

Notitie

U kunt voorspellende optimalisatie uitschakelen op catalogus- of schemaniveau voordat u deze inschakelt op accountniveau. Als voorspellende optimalisatie later is ingeschakeld voor het account, wordt deze geblokkeerd voor tabellen in deze objecten.

Gebruik de volgende syntaxis om voorspellende optimalisatie in of uit te schakelen of om terug te keren naar de standaardinstelling voor het overnemen van het bovenliggende object:

ALTER CATALOG [catalog_name] { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
ALTER { SCHEMA | DATABASE } schema_name { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;

Controleren of voorspellende optimalisatie is ingeschakeld

Het Predictive Optimization veld is een Unity Catalog-eigenschap die details bevat als voorspellende optimalisatie is ingeschakeld. Als voorspellende optimalisatie wordt overgenomen van een bovenliggend object, wordt dit aangegeven in de veldwaarde.

Gebruik de volgende syntaxis om te zien of voorspellende optimalisatie is ingeschakeld:

DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name

Systeemtabellen gebruiken om voorspellende optimalisatie bij te houden

Azure Databricks biedt de systeemtabel system.storage.predictive_optimization_operations_history voor waarneembaarheid in voorspellende optimalisatiebewerkingen, kosten en impact. Zie tabel met voorspellende optimalisatiesysteemreferenties.

Als de systeemtabel bewerkingen markeert als mislukt met FAILED: PRIVATE_LINK_SETUP_ERROR, hebt u mogelijk geen correct geconfigureerde private link voor serverloze berekeningen. Zie Privéconnectiviteit met Azure-resources configureren.

Beperkingen

Voorspellende optimalisatie is niet beschikbaar in alle regio's. Zie Functies met beperkte regionale beschikbaarheid.

Voor tabellen met een bewaarperiode voor verwijderde bestanden (delta.deletedFileRetentionDuration) van minder dan de standaard van 7 dagen, wordt voorspellende optimalisatie uitgevoerd VACUUM met een retentieduur van 7 dagen. Zie Het configureren van gegevensretentie voor tijdreisqueries.

Voorspellende optimalisatie voert geen onderhoudsbewerkingen uit in de volgende tabellen:

  • Tabellen die als ontvangers van Delta Sharing in een werkruimte zijn geladen.
  • Externe tabellen.