Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Použijte notebookutils.lakehouse pro programové řízení položek v Lakehouse v Fabric notebooks. Můžete vytvářet, získávat, aktualizovat, mazat a nabízet jezerní domy přímo z kódu notebooku.
Lakehouse utility jsou dostupné v noteboích Python, PySpark, Scala a R. Příklady na této stránce používají Python jako primární jazyk s ekvivalenty Jazyka Scala a R zobrazenými pro klíčové metody.
Poznámka:
Služby v Lakehouse jsou podporovány pouze ve Fabric. Nejsou dostupné ve službě Azure Synapse Analytics.
Chcete-li zobrazit dostupné metody a jejich popisy, zavolejte notebookutils.lakehouse.help().
Přehled metod
Následující tabulka shrnuje dostupné metody:
| Metoda | Description | Návraty |
|---|---|---|
create |
Vytvoří nový jezerní dům s volitelnou podporou schémat. |
Artifact objekt s vlastnostmi: id, displayName, descriptiona workspaceId. |
get |
Získá jezeřský domek jménem. |
Artifact objekt se základními metadaty. |
getWithProperties |
Získá domek u jezera s rozšířenými pozemky. |
Artifact objekt s rozšířenými metadaty a podrobnostmi o připojení. |
update |
Aktualizuje stávající název nebo popis jezerního domu. | Aktualizovaný Artifact objekt. |
delete |
Smaže jezerní domek. |
Boolean. Je-li úspěšné, je True; v opačném případě False. |
list |
Uvádí domky u jezera v pracovním prostoru. | Pole objektů Artifact. |
listTables |
Uvádí stoly v chatě u jezera. | Pole objektů Table. |
loadTable |
Spustí operaci nakládání stolu v jezeře. |
Boolean. Je-li úspěšné, je True; v opačném případě False. |
# Method signatures
notebookutils.lakehouse.create(name: String, description: String = "", definition: Object = {}, workspaceId: String = ""): Artifact
notebookutils.lakehouse.get(name: String = "", workspaceId: String = ""): Artifact
notebookutils.lakehouse.getWithProperties(name: String, workspaceId: String = ""): Artifact
notebookutils.lakehouse.update(name: String, newName: String, description: String = "", workspaceId: String = ""): Artifact
notebookutils.lakehouse.delete(name: String, workspaceId: String = ""): Boolean
notebookutils.lakehouse.list(workspaceId: String = "", maxResults: Int = 1000): Array[Artifact]
notebookutils.lakehouse.listTables(lakehouse: String = "", workspaceId: String = "", maxResults: Int = 1000): Array[Table]
notebookutils.lakehouse.loadTable(loadOption: Object, table: String, lakehouse: String = "", workspaceId: String = ""): Boolean
Všechny metody přijímají volitelný workspaceId parametr. Pokud tento parametr vynecháte, operace cílí na aktuální pracovní prostor. Zadejte ID pracovního prostoru pro přístup mezi pracovními prostory. V cílovém pracovním prostoru musíte mít odpovídající oprávnění.
Vytvořte jezerní dům
Použijte notebookutils.lakehouse.create() k vytvoření nového jezerního domu v současném pracovním prostoru nebo v určeném pracovním prostoru. Názvy lakehouse musí být v rámci pracovního prostoru jedinečné.
Parametry
| Parameter | Typ | Povinné | Description |
|---|---|---|---|
name |
String | Ano | Zobrazovací název jezerního domu. Musí být v rámci pracovního prostoru jedinečný. |
description |
String | Ne | Textový popis jezerního domu. |
definition |
Objekt | Ne | Strukturovaný definační objekt pro jezerní domek. Předáním {"enableSchemas": True} nebo ekvivalentního objektu odpovídajícího vašemu jazyku povolíte podporu schématu. |
workspaceId |
String | Ne | ID cílového pracovního prostoru. Výchozí hodnota aktuálního pracovního prostoru. |
Vytvoření základního lakehouse
artifact = notebookutils.lakehouse.create("lakehouse_name", "Description of the Lakehouse")
Poznámka:
Předejte definition jako strukturovaný objekt pro jazyk poznámkového bloku, jako je slovník Pythonu, Map Scala nebo seznam R.
Vytvořte jezerní domek s podporou schématu
Když povolíte podporu schémat, lakehouse podporuje více schémat pro organizaci tabulek. Předejte {"enableSchemas": True} jako definition parametr:
artifact = notebookutils.lakehouse.create(
"SalesAnalyticsWithSchema",
"Lakehouse with schema support for multi-tenant data",
{"enableSchemas": True}
)
print(f"Created lakehouse with schema support: {artifact.displayName}")
print(f"Lakehouse ID: {artifact.id}")
Vytvořte lakehouse v jiném pracovním prostoru
workspace_id = "aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb"
artifact = notebookutils.lakehouse.create(
name="SharedAnalytics",
description="Shared analytics lakehouse",
workspaceId=workspace_id
)
print(f"Created lakehouse in workspace: {workspace_id}")
Hromadně zakládají jezerní domy
Můžete vytvořit více jezerních domů v smyčce pro nastavení prostředí pro různé týmy nebo projekty:
departments = ["Sales", "Marketing", "Finance", "Operations"]
created_lakehouses = []
for dept in departments:
lakehouse = notebookutils.lakehouse.create(
name=f"{dept}Analytics",
description=f"Analytics lakehouse for {dept} department"
)
created_lakehouses.append(lakehouse)
print(f"Created: {lakehouse.displayName}")
print(f"Created {len(created_lakehouses)} lakehouses")
Návod
Používejte popisná jména, která odrážejí účel jezerního domu. Zvažte konvence pojmenování pro oddělení prostředí, jako jsou vývoj, testování a produkci.
Pořiďte si domek u jezera
Použil jsem notebookutils.lakehouse.get() k získání jezerního domu podle jména. Pokud vynecháte název, NotebookUtils používá aktuální výchozí jezerní dom.
Parametry
| Parameter | Typ | Povinné | Description |
|---|---|---|---|
name |
String | Ne | Název jezerního domu k vyzvednutí. Pokud je vynechán, výchozí je aktuální jezerní domek. |
workspaceId |
String | Ne | ID cílového pracovního prostoru. Výchozí hodnota aktuálního pracovního prostoru. |
artifact = notebookutils.lakehouse.get("lakehouse_name", "optional_workspace_id")
print(f"Lakehouse Name: {artifact.displayName}")
print(f"Lakehouse ID: {artifact.id}")
print(f"Workspace ID: {artifact.workspaceId}")
Pořiďte si jezerní dům s rozšířenými pozemky
Použijte notebookutils.lakehouse.getWithProperties() , když potřebujete rozšířené vlastnosti nad rámec základních metadat, jako jsou připojovací řetězce nebo podrobnosti o konfiguraci:
artifact = notebookutils.lakehouse.getWithProperties("lakehouse_name", "optional_workspace_id")
print(f"Lakehouse: {artifact.displayName}")
print(f"Properties: {artifact.properties}")
Kupte si domek u jezera z jiného pracoviště
workspace_id = "bbbbbbbb-2222-3333-4444-cccccccccccc"
artifact = notebookutils.lakehouse.get("SharedData", workspaceId=workspace_id)
print(f"Retrieved: {artifact.displayName} from workspace {workspace_id}")
Aktualizace lakehouse
Použijte k notebookutils.lakehouse.update() aktualizaci názvu nebo popisu stávajícího jezerního domu.
Důležité
Přejmenování jezerního domu může zrušit závislosti na proudu, jako jsou zápisníky, potrubí nebo zkratky odkazující na původní název. Před použitím nich můžete koordinovat přejmenování s týmem.
Parametry
| Parameter | Typ | Povinné | Description |
|---|---|---|---|
name |
String | Ano | Současný název jezerního domu. |
newName |
String | Ano | Nový název pro jezerní domek. |
description |
String | Ne | Aktualizovaný popis |
workspaceId |
String | Ne | ID cílového pracovního prostoru. Výchozí hodnota aktuálního pracovního prostoru. |
updated_artifact = notebookutils.lakehouse.update(
"old_name",
"new_name",
"Updated description",
"optional_workspace_id"
)
print(f"Updated lakehouse: {updated_artifact.displayName}")
Odstranit lakehouse
Použijte notebookutils.lakehouse.delete() k trvalému odstranění jezerního domu z pracovního prostoru.
Upozornění
Odstranění je trvalé a nedá se vrátit zpět. Před smazáním ověřte název lakehouse a zkontrolujte, zda se na něj neodkazují závislé zápisníky, pipeline nebo workflowy.
Parametry
| Parameter | Typ | Povinné | Description |
|---|---|---|---|
name |
String | Ano | Název jezerního domu smazat. |
workspaceId |
String | Ne | ID cílového pracovního prostoru. Výchozí hodnota aktuálního pracovního prostoru. |
is_deleted = notebookutils.lakehouse.delete("lakehouse_name", "optional_workspace_id")
if is_deleted:
print("Lakehouse deleted successfully")
else:
print("Failed to delete lakehouse")
Seznam jezerních domů
Použijte notebookutils.lakehouse.list() k vyjmenování jezerních domů v pracovním prostoru.
Parametry
| Parameter | Typ | Povinné | Description |
|---|---|---|---|
workspaceId |
String | Ne | ID cílového pracovního prostoru. Výchozí hodnota aktuálního pracovního prostoru. |
maxResults |
int | Ne | Maximální počet vrácených položek Výchozí nastavení je 1000. |
artifacts_list = notebookutils.lakehouse.list("optional_workspace_id")
print(f"Found {len(artifacts_list)} lakehouses:")
for lh in artifacts_list:
print(f" - {lh.displayName} (ID: {lh.id})")
Poznámka:
V jazyce Scala list metoda podporuje maxResults stejným způsobem jako jiné jazyky v poznámkovém bloku. Například použijte list(workspaceId, maxResults).
Seznam tabulek
Používejte notebookutils.lakehouse.listTables() všechny stoly v jezerním domku.
Parametry
| Parameter | Typ | Povinné | Description |
|---|---|---|---|
lakehouse |
String | Ne | Název jezerního domu. Pokud je vynechán, výchozí je aktuální jezerní domek. |
workspaceId |
String | Ne | ID cílového pracovního prostoru. Výchozí hodnota aktuálního pracovního prostoru. |
maxResults |
int | Ne | Maximální počet vrácených položek Výchozí nastavení je 1000. |
artifacts_tables_list = notebookutils.lakehouse.listTables("lakehouse_name", "optional_workspace_id")
Načtení tabulky
Používá se notebookutils.lakehouse.loadTable() k načtení dat ze souborů do tabulky Lakehouse.
Parametry
| Parameter | Typ | Povinné | Description |
|---|---|---|---|
loadOption |
Objekt | Ano | Možnosti strukturovaného načtení, které určují cestu k souboru, režim, formát a další nastavení načítání. |
table |
String | Ano | Název cílové tabulky. |
lakehouse |
String | Ne | Název jezerního domu. Pokud je vynechán, výchozí je aktuální jezerní domek. |
workspaceId |
String | Ne | ID cílového pracovního prostoru. Výchozí hodnota aktuálního pracovního prostoru. |
Objekt loadOption podporuje následující klíče:
| Klíč | Description |
|---|---|
relativePath |
Cesta ke zdrojovému souboru vzhledem ke kořeni jezerního domu (například Files/myFile.csv). |
pathType |
Typ cesty. Použijte File pro jeden soubor. |
mode |
Režim načítání, například Overwrite nebo Append. |
recursive |
Nastavte na True zahrnutí souborů do podsložek. |
formatOptions |
Slovník s nastavením specifickým pro formát, jako format, header a delimiter. |
Příklad:
result = notebookutils.lakehouse.loadTable(
{
"relativePath": "Files/myFile.csv",
"pathType": "File",
"mode": "Overwrite",
"recursive": False,
"formatOptions": {
"format": "Csv",
"header": True,
"delimiter": ","
}
}, "table_name", "lakehouse_name", "optional_workspace_id")
if result:
print("Table loaded successfully")
else:
print("Table load failed")