Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Gebruik notebookutils.lakehouse om lakehouse-items programmatisch te beheren in Fabric-notitieboeken. Je kunt lakehouses direct aanmaken, ophalen, bijwerken, verwijderen en vermelden vanuit notebookcode.
De lakehouse-hulpprogramma's zijn beschikbaar in Python, PySpark, Scala en R-notebooks. In de voorbeelden op deze pagina wordt Python gebruikt als primaire taal, waarbij Scala- en R-equivalenten worden weergegeven voor belangrijke methoden.
Opmerking
Lakehouse-nutsvoorzieningen worden alleen ondersteund in Fabric. Ze zijn niet beschikbaar in Azure Synapse Analytics.
Als u de beschikbare methoden en de bijbehorende beschrijvingen wilt weergeven, roept u notebookutils.lakehouse.help()aan.
Overzicht van methoden
De volgende tabel bevat een overzicht van de beschikbare methoden:
| Methode | Beschrijving | Retouren |
|---|---|---|
create |
Maakt een nieuw lakehouse aan, met optionele schema-ondersteuning. |
Artifact object met eigenschappen: id, displayName, descriptionen workspaceId. |
get |
Vindt een huisje aan het meer met de naam. |
Artifact object met basismetagegevens. |
getWithProperties |
Een meerhuis met uitgebreide eigendommen wordt teruggevonden. |
Artifact object met uitgebreide metagegevens en verbindingsgegevens. |
update |
Werkt een bestaande naam of beschrijving van een meerhuis bij. | Het object is bijgewerkt Artifact . |
delete |
Verwijdert een meerhuis. |
Boolean.
True indien geslaagd; anders, False. |
list |
Vermeldt meerhuizen in een werkruimte. | Matrix van Artifact objecten. |
listTables |
Lijst tafels in een meerhuis. | Matrix van Table objecten. |
loadTable |
Start een laadoperatie voor een tafelhuis in een meerhuis. |
Boolean.
True indien geslaagd; anders, 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
Alle methoden accepteren een optionele workspaceId parameter. Wanneer u dit weglaat, is de bewerking gericht op de huidige werkruimte. Geef een werkruimte-id op voor toegang tussen werkruimten. U moet over de juiste machtigingen beschikken in de doelwerkruimte.
Een lakehouse maken
Gebruik notebookutils.lakehouse.create() om een nieuw meerhuis te maken in de huidige werkruimte of een gespecificeerde werkruimte. Lakehouse-namen moeten uniek zijn binnen een werkruimte.
Parameterwaarden
| Kenmerk | Typ | Verplicht | Beschrijving |
|---|---|---|---|
name |
Snaar / Touwtje | Ja | Weergavenaam van het meerhuis. Moet uniek zijn binnen de werkruimte. |
description |
Snaar / Touwtje | No | Een tekstbeschrijving van het meerhuis. |
definition |
Object | No | Gestructureerde definitie voor het lakehouse. Geef {"enableSchemas": True} of het equivalente objectformulier voor uw taal door om schemaondersteuning in te schakelen. |
workspaceId |
Snaar / Touwtje | No | Doelwerkruimte-id. Standaard ingesteld op de huidige werkruimte. |
Een basic Lakehouse maken
artifact = notebookutils.lakehouse.create("lakehouse_name", "Description of the Lakehouse")
Opmerking
Geef definition als een gestructureerd object door voor uw notebooktaal, zoals een Python-woordenlijst, een Scala Mapof een R-lijst.
Maak een lakehouse met schema-ondersteuning
Wanneer je schema-ondersteuning inschakelt, ondersteunt het lakehouse meerdere schema's voor het organiseren van tabellen. Geef {"enableSchemas": True} door als de definition-parameter.
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}")
Een Lakehouse maken in een andere werkruimte
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}")
Batch bouwt merenhuizen
Je kunt meerdere lakehouses in een lus maken om omgevingen voor verschillende teams of projecten te provisioneren:
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")
Aanbeveling
Gebruik beschrijvende namen die het doel van het meerhuis weerspiegelen. Overweeg naamgevingsconventies voor omgevingsseparatie, zoals dev, test en prod.
Neem een huisje aan het meer.
Gebruik notebookutils.lakehouse.get() het om een meerhuis bij naam op te halen. Als je de naam weglaat, gebruikt NotebookUtils de huidige standaard lakehouse.
Parameterwaarden
| Kenmerk | Typ | Verplicht | Beschrijving |
|---|---|---|---|
name |
Snaar / Touwtje | No | Naam van het meerhuis dat je moet ophalen. Standaard verschijnt het huidige meerhuis als het weggelaten is. |
workspaceId |
Snaar / Touwtje | No | Doelwerkruimte-id. Standaard ingesteld op de huidige werkruimte. |
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}")
Neem een huis aan het meer met uitgebreide woningen
Gebruik notebookutils.lakehouse.getWithProperties() deze functie wanneer u uitgebreide eigenschappen nodig hebt buiten de basismetagegevens, zoals verbindingsreeksen of configuratiedetails:
artifact = notebookutils.lakehouse.getWithProperties("lakehouse_name", "optional_workspace_id")
print(f"Lakehouse: {artifact.displayName}")
print(f"Properties: {artifact.properties}")
Haal een meerhuis van een andere werkplek
workspace_id = "bbbbbbbb-2222-3333-4444-cccccccccccc"
artifact = notebookutils.lakehouse.get("SharedData", workspaceId=workspace_id)
print(f"Retrieved: {artifact.displayName} from workspace {workspace_id}")
Een lakehouse bijwerken
Gebruik notebookutils.lakehouse.update() om de naam of beschrijving van een bestaand meerhuis bij te werken.
Belangrijk
Het hernoemen van een lakehouse kan afhankelijkheden van downstream doorbreken, zoals notitieboeken, pijpleidingen of snelkoppelingen die naar de oorspronkelijke naam verwijzen. Stem naamswijzigingen met uw team af voordat u deze toepast.
Parameterwaarden
| Kenmerk | Typ | Verplicht | Beschrijving |
|---|---|---|---|
name |
Snaar / Touwtje | Ja | De huidige naam van het meerhuis. |
newName |
Snaar / Touwtje | Ja | Nieuwe naam voor het meerhuis. |
description |
Snaar / Touwtje | No | Beschrijving bijgewerkt. |
workspaceId |
Snaar / Touwtje | No | Doelwerkruimte-id. Standaard ingesteld op de huidige werkruimte. |
updated_artifact = notebookutils.lakehouse.update(
"old_name",
"new_name",
"Updated description",
"optional_workspace_id"
)
print(f"Updated lakehouse: {updated_artifact.displayName}")
Een lakehouse verwijderen
Gebruik notebookutils.lakehouse.delete() het om een huis aan het meer permanent van een werkplek te verwijderen.
Waarschuwing
Verwijderen is permanent en kan niet ongedaan worden gemaakt. Controleer de naam van het lakehouse voordat je het verwijdert en controleer op afhankelijke notitieboeken, pipelines of workflows die ernaar verwijzen.
Parameterwaarden
| Kenmerk | Typ | Verplicht | Beschrijving |
|---|---|---|---|
name |
Snaar / Touwtje | Ja | Naam van het meerhuis om te verwijderen. |
workspaceId |
Snaar / Touwtje | No | Doelwerkruimte-id. Standaard ingesteld op de huidige werkruimte. |
is_deleted = notebookutils.lakehouse.delete("lakehouse_name", "optional_workspace_id")
if is_deleted:
print("Lakehouse deleted successfully")
else:
print("Failed to delete lakehouse")
Lijst van meerhuizen
Gebruik notebookutils.lakehouse.list() om meerhuizen in een werkruimte op te sommen.
Parameterwaarden
| Kenmerk | Typ | Verplicht | Beschrijving |
|---|---|---|---|
workspaceId |
Snaar / Touwtje | No | Doelwerkruimte-id. Standaard ingesteld op de huidige werkruimte. |
maxResults |
Int | No | Maximum aantal te retourneren items. De standaardwaarde is 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})")
Opmerking
In Scala ondersteunt de list-methode maxResults op dezelfde manier als de andere notebooktalen. Gebruik bijvoorbeeld list(workspaceId, maxResults).
Tabellen weergeven
Vroeger notebookutils.lakehouse.listTables() werden alle tafels in een huis aan het meer vermeld.
Parameterwaarden
| Kenmerk | Typ | Verplicht | Beschrijving |
|---|---|---|---|
lakehouse |
Snaar / Touwtje | No | Naam van het meerhuis. Standaard verschijnt het huidige meerhuis als het weggelaten is. |
workspaceId |
Snaar / Touwtje | No | Doelwerkruimte-id. Standaard ingesteld op de huidige werkruimte. |
maxResults |
Int | No | Maximum aantal te retourneren items. De standaardwaarde is 1000. |
artifacts_tables_list = notebookutils.lakehouse.listTables("lakehouse_name", "optional_workspace_id")
Tabel laden
Gebruik notebookutils.lakehouse.loadTable() om data uit bestanden in een lakehouse-tabel te laden.
Parameterwaarden
| Kenmerk | Typ | Verplicht | Beschrijving |
|---|---|---|---|
loadOption |
Object | Ja | Opties voor gestructureerde belasting waarmee het bestandspad, de modus, de indeling en andere laadinstellingen worden opgegeven. |
table |
Snaar / Touwtje | Ja | Naam van de doeltabel. |
lakehouse |
Snaar / Touwtje | No | Naam van het meerhuis. Standaard verschijnt het huidige meerhuis als het weggelaten is. |
workspaceId |
Snaar / Touwtje | No | Doelwerkruimte-id. Standaard ingesteld op de huidige werkruimte. |
Het loadOption object ondersteunt de volgende sleutels:
| Key | Beschrijving |
|---|---|
relativePath |
Pad naar het bronbestand ten opzichte van de wortel van het lakehouse (bijvoorbeeld Files/myFile.csv). |
pathType |
Padtype Gebruiken File voor één bestand. |
mode |
Laadmodus, zoals Overwrite of Append. |
recursive |
Ingesteld op True het opnemen van bestanden in submappen. |
formatOptions |
Een woordenlijst met indelingsspecifieke instellingen, zoals format, headeren delimiter. |
Voorbeeld:
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")