Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Χρησιμοποιείται notebookutils.lakehouse για τη διαχείριση στοιχείων lakehouse μέσω προγραμματισμού σε σημειωματάρια Fabric. Μπορείτε να δημιουργήσετε, να λάβετε, να ενημερώσετε, να διαγράψετε και να παραθέσετε τα lakehouses απευθείας από τον κώδικα σημειωματάριου.
Τα βοηθητικά προγράμματα lakehouse είναι διαθέσιμα σε σημειωματάρια Python, PySpark, Scala και R. Τα παραδείγματα σε αυτήν τη σελίδα χρησιμοποιούν την Python ως κύρια γλώσσα, με τα ισοδύναμα Scala και R να εμφανίζονται για βασικές μεθόδους.
Σημείωμα
Τα βοηθητικά προγράμματα Lakehouse υποστηρίζονται μόνο στο Fabric. Δεν είναι διαθέσιμες στο Azure Synapse Analytics.
Για να εμφανίσετε τις διαθέσιμες μεθόδους και τις περιγραφές τους, καλέστε notebookutils.lakehouse.help().
Επισκόπηση μεθόδων
Ο παρακάτω πίνακας συνοψίζει τις διαθέσιμες μεθόδους:
| Μέθοδος | Περιγραφή | Επιστροφές |
|---|---|---|
create |
Δημιουργεί ένα νέο lakehouse, με προαιρετική υποστήριξη σχήματος. |
Artifact αντικείμενο με ιδιότητες: id, displayName, description, και workspaceId. |
get |
Ανακτά ένα σπίτι στη λίμνη με το όνομα. |
Artifact αντικείμενο με βασικά μεταδεδομένα. |
getWithProperties |
Ανακτά ένα σπίτι στη λίμνη με εκτεταμένες ιδιότητες. |
Artifact με εκτεταμένα μεταδεδομένα και λεπτομέρειες σύνδεσης. |
update |
Ενημερώνει ένα υπάρχον όνομα ή περιγραφή lakehouse. | Ενημερωμένο Artifact αντικείμενο. |
delete |
Διαγράφει ένα lakehouse. |
Boolean.
True εάν είναι επιτυχής· Διαφορετικά, False. |
list |
Παραθέτει τα σπίτια λίμνης σε έναν χώρο εργασίας. | Πίνακας Artifact αντικειμένων. |
listTables |
Παραθέτει πίνακες σε ένα lakehouse. | Πίνακας Table αντικειμένων. |
loadTable |
Ξεκινά μια λειτουργία φόρτωσης για έναν πίνακα lakehouse. |
Boolean.
True εάν είναι επιτυχής· Διαφορετικά, 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
Όλες οι μέθοδοι δέχονται μια προαιρετική workspaceId παράμετρο. Όταν παραλείπεται, η λειτουργία στοχεύει τον τρέχοντα χώρο εργασίας. Καθορίστε ένα αναγνωριστικό χώρου εργασίας για πρόσβαση μεταξύ χώρων εργασίας. Πρέπει να έχετε τα κατάλληλα δικαιώματα στον χώρο εργασίας προορισμού.
Δημιουργία lakehouse
Χρησιμοποιήστε το notebookutils.lakehouse.create() για να δημιουργήσετε μια νέα λίμνη στον τρέχοντα χώρο εργασίας ή σε έναν καθορισμένο χώρο εργασίας. Τα ονόματα Lakehouse πρέπει να είναι μοναδικά σε έναν χώρο εργασίας.
Παράμετροι
| Παράμετρος | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
name |
Συμβλοσειρά | Ναι | Εμφανιζόμενο όνομα του lakehouse. Πρέπει να είναι μοναδικό εντός του χώρου εργασίας. |
description |
Συμβλοσειρά | Όχι | Μια περιγραφή κειμένου για το lakehouse. |
definition |
Αντικείμενο | Όχι | Αντικείμενο δομημένου ορισμού για το lakehouse. Pass {"enableSchemas": True} ή την αντίστοιχη φόρμα αντικειμένου για τη γλώσσα σας για να ενεργοποιήσετε την υποστήριξη σχήματος. |
workspaceId |
Συμβλοσειρά | Όχι | Αναγνωριστικό χώρου εργασίας προορισμού. Προεπιλογή στον τρέχοντα χώρο εργασίας. |
Δημιουργία βασικού Lakehouse
artifact = notebookutils.lakehouse.create("lakehouse_name", "Description of the Lakehouse")
Σημείωμα
Μεταβιβάστε definition ως δομημένο αντικείμενο για τη γλώσσα του σημειωματαρίου σας, όπως ένα λεξικό Python, μια Scala Mapή μια λίστα R.
Δημιουργία lakehouse με υποστήριξη σχήματος
Όταν ενεργοποιείτε την υποστήριξη σχήματος, το lakehouse υποστηρίζει πολλά σχήματα για την οργάνωση πινάκων. Pass {"enableSchemas": True} ως definition παράμετρος:
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}")
Δημιουργία Lakehouse σε διαφορετικό χώρο εργασίας
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}")
Μαζική δημιουργία λιμνών
Μπορείτε να δημιουργήσετε πολλές λίμνες σε έναν βρόχο για να παρέχετε περιβάλλοντα για διαφορετικές ομάδες ή έργα:
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")
Συμβουλή
Χρησιμοποιήστε περιγραφικά ονόματα που αντικατοπτρίζουν τον σκοπό του lakehouse. Εξετάστε τις συμβάσεις ονομασίας για τον διαχωρισμό περιβάλλοντος, όπως dev, test και prod.
Αποκτήστε ένα σπίτι στη λίμνη
Χρησιμοποιήστε το notebookutils.lakehouse.get() για να ανακτήσετε ένα lakehouse με το όνομα. Εάν παραλείψετε το όνομα, το NotebookUtils χρησιμοποιεί το τρέχον προεπιλεγμένο lakehouse.
Παράμετροι
| Παράμετρος | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
name |
Συμβλοσειρά | Όχι | Όνομα του lakehouse προς ανάκτηση. Η προεπιλογή είναι το τρέχον lakehouse όταν παραλείπεται. |
workspaceId |
Συμβλοσειρά | Όχι | Αναγνωριστικό χώρου εργασίας προορισμού. Προεπιλογή στον τρέχοντα χώρο εργασίας. |
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}")
Αποκτήστε ένα σπίτι στη λίμνη με εκτεταμένες ιδιότητες
Χρησιμοποιήστε το notebookutils.lakehouse.getWithProperties() όταν χρειάζεστε εκτεταμένες ιδιότητες πέρα από τα βασικά μετα-δεδομένα, όπως συμβολοσειρές σύνδεσης ή λεπτομέρειες ρύθμισης παραμέτρων:
artifact = notebookutils.lakehouse.getWithProperties("lakehouse_name", "optional_workspace_id")
print(f"Lakehouse: {artifact.displayName}")
print(f"Properties: {artifact.properties}")
Λήψη lakehouse από άλλο χώρο εργασίας
workspace_id = "bbbbbbbb-2222-3333-4444-cccccccccccc"
artifact = notebookutils.lakehouse.get("SharedData", workspaceId=workspace_id)
print(f"Retrieved: {artifact.displayName} from workspace {workspace_id}")
Ενημέρωση lakehouse
Χρησιμοποιείται notebookutils.lakehouse.update() για την ενημέρωση του ονόματος ή της περιγραφής μιας υπάρχουσας λίμνης.
Σημαντικό
Η μετονομασία μιας λίμνης μπορεί να σπάσει τις μεταγενέστερες εξαρτήσεις, όπως σημειωματάρια, διοχετεύσεις ή συντομεύσεις που αναφέρονται στο αρχικό όνομα. Συντονίστε τις μετονομασίες με την ομάδα σας πριν τις εφαρμόσετε.
Παράμετροι
| Παράμετρος | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
name |
Συμβλοσειρά | Ναι | Τρέχον όνομα του lakehouse. |
newName |
Συμβλοσειρά | Ναι | Νέο όνομα για το lakehouse. |
description |
Συμβλοσειρά | Όχι | Ενημερωμένη περιγραφή. |
workspaceId |
Συμβλοσειρά | Όχι | Αναγνωριστικό χώρου εργασίας προορισμού. Προεπιλογή στον τρέχοντα χώρο εργασίας. |
updated_artifact = notebookutils.lakehouse.update(
"old_name",
"new_name",
"Updated description",
"optional_workspace_id"
)
print(f"Updated lakehouse: {updated_artifact.displayName}")
Διαγραφή λίμνης
Χρησιμοποιείται για notebookutils.lakehouse.delete() την οριστική κατάργηση μιας λίμνης από έναν χώρο εργασίας.
Προσοχή
Η διαγραφή είναι μόνιμη και δεν μπορεί να αναιρεθεί. Επαληθεύστε το όνομα του lakehouse πριν από τη διαγραφή και ελέγξτε για εξαρτώμενα σημειωματάρια, διοχετεύσεις ή ροές εργασίας που αναφέρονται σε αυτό.
Παράμετροι
| Παράμετρος | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
name |
Συμβλοσειρά | Ναι | Όνομα του lakehouse για διαγραφή. |
workspaceId |
Συμβλοσειρά | Όχι | Αναγνωριστικό χώρου εργασίας προορισμού. Προεπιλογή στον τρέχοντα χώρο εργασίας. |
is_deleted = notebookutils.lakehouse.delete("lakehouse_name", "optional_workspace_id")
if is_deleted:
print("Lakehouse deleted successfully")
else:
print("Failed to delete lakehouse")
Λίστα λιμναίων σπιτιών
Χρησιμοποιείται notebookutils.lakehouse.list() για την απαρίθμηση λιμνών σε έναν χώρο εργασίας.
Παράμετροι
| Παράμετρος | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
workspaceId |
Συμβλοσειρά | Όχι | Αναγνωριστικό χώρου εργασίας προορισμού. Προεπιλογή στον τρέχοντα χώρο εργασίας. |
maxResults |
Int | Όχι | Μέγιστος αριθμός αντικειμένων προς επιστροφή. Προεπιλογή 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})")
Σημείωμα
Στη Scala, η list μέθοδος υποστηρίζεται maxResults με τον ίδιο τρόπο όπως και οι άλλες γλώσσες σημειωματαρίου. Για παράδειγμα, χρησιμοποιήστε list(workspaceId, maxResults).
Πίνακες λίστας
Χρησιμοποιείται για notebookutils.lakehouse.listTables() τη λίστα όλων των πινάκων σε ένα lakehouse.
Παράμετροι
| Παράμετρος | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
lakehouse |
Συμβλοσειρά | Όχι | Όνομα του lakehouse. Η προεπιλογή είναι το τρέχον lakehouse όταν παραλείπεται. |
workspaceId |
Συμβλοσειρά | Όχι | Αναγνωριστικό χώρου εργασίας προορισμού. Προεπιλογή στον τρέχοντα χώρο εργασίας. |
maxResults |
Int | Όχι | Μέγιστος αριθμός αντικειμένων προς επιστροφή. Προεπιλογή 1000. |
artifacts_tables_list = notebookutils.lakehouse.listTables("lakehouse_name", "optional_workspace_id")
Πίνακας φόρτωσης
Χρησιμοποιείται notebookutils.lakehouse.loadTable() για τη φόρτωση δεδομένων από αρχεία σε έναν πίνακα lakehouse.
Παράμετροι
| Παράμετρος | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
loadOption |
Αντικείμενο | Ναι | Δομημένες επιλογές φόρτωσης που καθορίζουν τη διαδρομή αρχείου, τη λειτουργία, τη μορφή και άλλες ρυθμίσεις φόρτωσης. |
table |
Συμβλοσειρά | Ναι | Όνομα του πίνακα προορισμού. |
lakehouse |
Συμβλοσειρά | Όχι | Όνομα του lakehouse. Η προεπιλογή είναι το τρέχον lakehouse όταν παραλείπεται. |
workspaceId |
Συμβλοσειρά | Όχι | Αναγνωριστικό χώρου εργασίας προορισμού. Προεπιλογή στον τρέχοντα χώρο εργασίας. |
Το loadOption αντικείμενο υποστηρίζει τα ακόλουθα κλειδιά:
| Κλειδί | Περιγραφή |
|---|---|
relativePath |
Διαδρομή προς το αρχείο προέλευσης σε σχέση με τη ρίζα lakehouse (για παράδειγμα, Files/myFile.csv). |
pathType |
Τύπος διαδρομής. Χρησιμοποιήστε το File για ένα μόνο αρχείο. |
mode |
Κατάσταση φόρτωσης, όπως Overwrite ή Append. |
recursive |
Ορίστε σε για True να συμπεριλάβετε αρχεία σε υποφακέλους. |
formatOptions |
Ένα λεξικό με ρυθμίσεις για συγκεκριμένες μορφές, όπως format, headerκαι delimiter. |
Παράδειγμα:
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")