Dela via


Metodtips för serverlös beräkning

I den här artikeln får du rekommendationer om bästa praxis för att använda serverlös beräkning i dina notebook-filer och jobb.

Genom att följa dessa rekommendationer förbättrar du produktiviteten, kostnadseffektiviteten och tillförlitligheten för dina arbetsbelastningar i Azure Databricks.

Migrera arbetsbelastningar till serverlös beräkning

För att säkerställa isoleringen av användarkod i den delade serverlösa beräkningsmiljön använder Azure Databricks Lakeguard för att isolera användarkod från Spark-motorn och från andra användare.

På grund av detta kräver vissa arbetsbelastningar kodändringar för att fortsätta arbeta med serverlös beräkning. En lista över begränsningar finns i Begränsningar för serverlös beräkning.

Vissa arbetsbelastningar är enklare att migrera än andra. Arbetsbelastningar som uppfyller följande krav är enklast att migrera:

  • Data som används måste lagras i Unity Catalog.
  • Arbetsbelastningen ska vara kompatibel med standardberäkning.
  • Arbetsbelastningen ska vara kompatibel med Databricks Runtime 14.3 eller senare.

Om du vill testa om en arbetsbelastning fungerar med serverlös beräkning kör du den på en klassisk beräkningsresurs med standardåtkomstläge och en Databricks Runtime på 14.3 eller senare. Om körningen lyckas är arbetsbelastningen redo för migrering.

Många äldre arbetsbelastningar migreras inte sömlöst. I stället för att återskapa allt rekommenderar Azure Databricks att du prioriterar serverlös beräkningskompatibilitet när du skapar nya arbetsbelastningar.

Ange Python-paketversioner

När du migrerar till serverlös beräkning fäster du Python-paketen på specifika versioner för att säkerställa reproducerbara miljöer. Om du inte anger någon version kan paketet matchas till en annan version baserat på den serverlösa miljöversionen, vilket kan öka svarstiden när nya paket måste installeras.

Filen bör till exempel requirements.txt innehålla specifika paketversioner, så här:

numpy==2.2.2
pandas==2.2.3

Mata in data från externa system

Eftersom serverlös beräkning inte stöder JAR-filinstallation kan du inte använda en JDBC- eller ODBC-drivrutin för att mata in data från en extern datakälla.

Alternativa strategier som du kan använda för inmatning är:

Alternativ för inmatning

När du använder serverlös beräkning kan du också använda följande funktioner för att köra frågor mot dina data utan att flytta dem.

  • Om du vill begränsa dataduplicering eller garantera att du frågar efter nyaste möjliga data rekommenderar Databricks att du använder Deltadelning. Se Vad innebär deltadelning?.
  • Om du vill göra ad hoc-rapportering och proof of concept-arbete rekommenderar Databricks att du provar det bästa alternativet, som kanske är Lakehouse Federation. Lakehouse Federation möjliggör synkronisering av hela databaser till Azure Databricks från externa system och styrs av Unity Catalog. Se Vad är Lakehouse Federation?.

Prova en eller båda av dessa funktioner och se om de uppfyller dina krav på frågeprestanda.

Spark-konfigurationer som stöds

För att automatisera konfigurationen av Spark på serverlös beräkning har Azure Databricks tagit bort stödet för att manuellt ställa in de flesta Spark-konfigurationer. För att se en lista över stödda Spark-konfigurationsparametrar, se Konfigurera Spark-egenskaper för serverlösa anteckningsböcker och jobb.

Jobbkörningar på serverlös beräkning kommer att misslyckas om du ställer in en ej stödjande Spark-konfiguration.

Övervaka kostnaden för serverlös beräkning

Det finns flera funktioner som du kan använda för att övervaka kostnaden för serverlös beräkning: