Skriva De Bearbetade Uppgifterna till en Tabell
Svep för att visa menyn
Att skriva data är processen att flytta en DataFrame från klustrets temporära minne till permanent lagring i Catalog. Genom att använda metoden saveAsTable() säkerställer du att dina rensade och aggregerade resultat bevaras och är tillgängliga för andra användare och verktyg.
Allt du har gjort hittills har varit "i minnet". Om du skulle stänga av ditt kluster nu skulle dina transformerade DataFrames försvinna. För att göra ditt arbete permanent måste du skriva tillbaka datan till Lakehouse. I Databricks är det standard att göra detta genom att spara din DataFrame som en Delta Table.
Syntax för saveAsTable()
För att spara ditt arbete kedjar du metoden write till din DataFrame. Det mest direkta tillvägagångssättet är:
# Save the 'summary_df' we created earlier as a permanent table
summary_df.write.mode("overwrite").saveAsTable("workspace.default.diamonds_summary”)
- write: öppnar DataFrame-skrivargränssnittet;
- mode("overwrite"): Anger för Databricks vad som ska göras om en tabell med det namnet redan finns. "Overwrite" ersätter den gamla datan med den nya. Andra alternativ inkluderar "append" (för att lägga till nya rader till slutet av den befintliga tabellen);
- saveAsTable: anger det tre-delade namnet (
catalog.schema.table) där datan kommer att lagras.
Delta Lake: Standardformatet
När du använder saveAsTable sparar Databricks automatiskt datan i Delta-format. Som vi diskuterade i avsnitt 1 ger Delta Lake tillförlitlighet. Det säkerställer att även om klustret kraschar mitt under en "write"-operation så blir inte din tabell korrupt. Det möjliggör även "Time Travel", vilket innebär att du kan titta tillbaka på tidigare versioner av tabellen om du gör ett misstag.
Verifiera skrivningen i katalogen
När kommandot har körts klart bör du kontrollera att data har lagrats korrekt:
- Navigera till fliken Catalog i sidopanelen till vänster;
- Gå ner i
main-katalogen ochdefault-schemat; - Leta efter ditt nya tabellnamn (t.ex.
regional_summary); - Du kan klicka på tabellen för att se dess schema, exempeldata och metadata, såsom när den skapades och vem som skapade den.
Läsa din sparade tabell
När en tabell finns i Catalog kan alla auktoriserade användare komma åt den utan att behöva din notebook. De kan enkelt köra en SQL-fråga eller använda spark.table() för att ladda in den i sin egen miljö:
# In a new notebook, anyone can now access your processed data
new_df = spark.table("main.default.regional_summary")
Bästa praxis: Rensa upp
Efter att du har sparat dina slutresultat i en permanent tabell är det en professionell vana att avsluta din kluster eller åtminstone "Rensa tillstånd". Eftersom dina data nu är säkert lagrade i Katalogen behöver du inte längre behålla de temporära DataFrames som tar upp plats i klustrets RAM.
1. Vilket "mode" ska du använda om du vill ersätta en befintlig tabell med helt nya data från din DataFrame?
2. Vad är den främsta fördelen med att spara en DataFrame med saveAsTable()?
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal