Udostępnij za pośrednictwem


Zarządzanie notesami i wykonywanie ich w sieci szkieletowej za pomocą interfejsów API

Interfejs API REST usługi Microsoft Fabric udostępnia punkt końcowy usługi dla operacji tworzenia, odczytu, aktualizowania i usuwania (CRUD) elementu sieci szkieletowej. W tym artykule opisano dostępne interfejsy API REST notesu i ich użycie.

Ważne

Ta funkcja jest dostępna w wersji zapoznawczej.

Uwaga

Uwierzytelnianie jednostki usługi nie jest obecnie obsługiwane.

Dzięki interfejsom API notesu inżynierowie danych i analitycy danych mogą zautomatyzować własne potoki i wygodnie i wydajnie ustanowić ciągłą integrację/ciągłe wdrażanie. Te interfejsy API ułatwiają również użytkownikom zarządzanie elementami notesu sieci Szkieletowej i manipulowanie nimi oraz integrowanie notesów z innymi narzędziami i systemami.

Te akcje zarządzania elementami są dostępne dla notesów:

Akcja opis
Utwórz element Tworzy notes w obszarze roboczym.
Aktualizuj element Aktualizacje metadanych notesu.
Aktualizowanie definicji elementu Aktualizacje zawartość notesu.
Usuwanie elementu Usuwa notes.
Pobieranie elementu Pobiera metadane notesu.
Pobieranie definicji elementu Pobiera zawartość notesu.
Element listy Wyświetl listę wszystkich elementów w obszarze roboczym.

Aby uzyskać więcej informacji, zobacz Items - REST API (Elementy — interfejs API REST).

Następujące akcje harmonogramu zadań są dostępne dla notesów:

Akcja opis
Uruchamianie zadania elementu na żądanie Uruchom notes z parametryzacji.
Anulowanie wystąpienia zadania elementu Anuluj uruchamianie zadania notesu.
Pobieranie wystąpienia zadania elementu Pobierz stan uruchomienia notesu.

Aby uzyskać więcej informacji, zobacz Harmonogram zadań.

Przykłady użycia interfejsu API REST notesu

Skorzystaj z poniższych instrukcji, aby przetestować przykłady użycia dla określonych publicznych interfejsów API notesu i zweryfikować wyniki.

Uwaga

Te scenariusze obejmują tylko przykłady użycia unikatowego dla notesu. Typowe przykłady interfejsu API elementu sieci szkieletowej nie zostały tutaj omówione.

Wymagania wstępne

Interfejs API REST sieci szkieletowej definiuje ujednolicony punkt końcowy dla operacji. Zastąp symbole zastępcze i {ARTIFACT_ID} odpowiednimi wartościami{WORKSPACE_ID}, korzystając z przykładów w tym artykule.

Tworzenie notesu z definicją

Utwórz element notesu z istniejącym plikiem ipynb:

Zażądaj

POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items

{
    "displayName":"Notebook1",
    "type":"Notebook",
    "definition" : {
        "format": "ipynb",
        "parts": [
            {
                "path": "artifact.content.ipynb",
                "payload": "eyJuYmZvcm1hdCI6NCwibmJmb3JtYXRfbWlub3IiOjUsImNlbGxzIjpbeyJjZWxsX3R5cGUiOiJjb2RlIiwic291cmNlIjpbIiMgV2VsY29tZSB0byB5b3VyIG5ldyBub3RlYm9va1xuIyBUeXBlIGhlcmUgaW4gdGhlIGNlbGwgZWRpdG9yIHRvIGFkZCBjb2RlIVxuIl0sImV4ZWN1dGlvbl9jb3VudCI6bnVsbCwib3V0cHV0cyI6W10sIm1ldGFkYXRhIjp7fX1dLCJtZXRhZGF0YSI6eyJsYW5ndWFnZV9pbmZvIjp7Im5hbWUiOiJweXRob24ifX19",
                "payloadType": "InlineBase64"
            }
        ]
    }
}

Ładunek w żądaniu jest ciągiem base64 przekonwertowanym z poniższego przykładowego notesu.

{
    "nbformat": 4,
    "nbformat_minor": 5,
    "cells": [
        {
            "cell_type": "code",
            "source": [
                "# Welcome to your new notebook\n# Type here in the cell editor to add code!\n"
            ],
            "execution_count": null,
            "outputs": [],
            "metadata": {}
        }
    ],
    "metadata": {
        "language_info": {
            "name": "python"
        },
        "dependencies": {
            "environment": {
                "environmentId": "6524967a-18dc-44ae-86d1-0ec903e7ca05",
                "workspaceId": "c31eddd2-26e6-4aa3-9abb-c223d3017004"
            },
            "lakehouse": {
                "default_lakehouse": "5b7cb89a-81fa-4d8f-87c9-3c5b30083bee",
                "default_lakehouse_name": "lakehouse_name",
                "default_lakehouse_workspace_id": "c31eddd2-26e6-4aa3-9abb-c223d3017004"
            }
        }
    }
}

Uwaga

Możesz zmienić domyślny magazyn lakehouse notesu lub dołączone środowisko, zmieniając zawartość metadata.trident.lakehouse notesu lub metadata.trident.environment.

Pobieranie notesu z definicją

Użyj następującego interfejsu API, aby pobrać zawartość notesu. Sieć szkieletowa obsługuje ustawianie formatu jako .ipynb w ciągu zapytania w celu pobrania notesu ipynb.

Zażądaj

POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items/{{ARTIFACT_ID}}/GetDefinition?format=ipynb

Response

Kod stanu: 200

{
    "definition": {
        "parts": [
            {
                "path": "notebook-content.ipynb",
                "payload": "eyJuYmZvcm1hdCI6NCwibmJmb3JtYXRfbWlub3IiOjUsImNlbGxzIjpbeyJjZWxsX3R5cGUiOiJjb2RlIiwic291cmNlIjpbIiMgV2VsY29tZSB0byB5b3VyIG5ldyBub3RlYm9va1xuIyBUeXBlIGhlcmUgaW4gdGhlIGNlbGwgZWRpdG9yIHRvIGFkZCBjb2RlIVxuIl0sImV4ZWN1dGlvbl9jb3VudCI6bnVsbCwib3V0cHV0cyI6W10sIm1ldGFkYXRhIjp7fX1dLCJtZXRhZGF0YSI6eyJsYW5ndWFnZV9pbmZvIjp7Im5hbWUiOiJweXRob24ifX19",
                "payloadType": "InlineBase64"
            }
        ]
    }
}

Uruchamianie notesu na żądanie

Zaplanuj uruchomienie notesu przy użyciu następującego interfejsu API. Zadanie platformy Spark rozpoczyna wykonywanie po pomyślnym żądaniu.

Sieć szkieletowa obsługuje przekazywanie parameters treści żądania w celu sparametryzowania przebiegu notesu. Wartości są używane przez komórkę parametru notesu.

Możesz również użyć configuration polecenia , aby spersonalizować sesję uruchamiania notesu platformy Spark. configuration udostępnia ten sam kontrakt za pomocą polecenia magic konfiguracji sesji platformy Spark.

Zażądaj

POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items/{{ARTIFACT_ID}}/jobs/instances?jobType=RunNotebook

{
    "executionData": {
        "parameters": {
            "parameterName": {
                "value": "new value",
                "type": "string"
            }
        },
        "configuration": {
            "conf": {
                "spark.conf1": "value"
            },
            "environment": {
                "id": "<environment_id>",
                "name": "<environment_name>"
            },
            "defaultLakehouse": {
                "name": "<lakehouse-name>",
                "id": "<lakehouse-id>",
                "workspaceId": "<(optional) workspace-id-that-contains-the-lakehouse>"
            },
            "useStarterPool": false,
            "useWorkspacePool": "<workspace-pool-name>"
        }
    }
}

Response

Kod stanu: 202

Location: https://api.fabric.microsoft.com/v1/workspaces/4b218778-e7a5-4d73-8187-f10824047715/items/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7/jobs/instances/f2d65699-dd22-4889-980c-15226deb0e1b
Retry-After: 60

W locationprogramie można użyć polecenia Pobierz wystąpienie zadania elementu, aby wyświetlić stan zadania lub użyć polecenia Anuluj wystąpienie zadania elementu, aby anulować bieżące uruchomienie notesu.