Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Microsoft Fabric REST API'er gør det muligt at administrere og opdatere materialized lake views (MLV'er) programmatisk. Du kan automatisere opfriskningsoperationer for slægtslinjen og integrere dem med andre værktøjer og systemer.
Forudsætninger
Før du bruger rest-API'er til materialiserede visninger af søen, skal du fuldføre disse forudsætninger:
-
Registrer en applikation hos Microsoft Entra ID med passende identitet. Erhverv et adgangstoken med passende scopes og send det i
Authorizationheaderen på hver forespørgsel. - Erstat pladsholderne, herunder
{WORKSPACE_ID}og{LAKEHOUSE_ID}med passendeWorkspaceIdogLakehouseId. For at finde disse ID'er, åbn søhuset i Fabric-portalen — URL'en indeholder begge:https://app.fabric.microsoft.com/groups/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}. Alternativt kan du liste arbejdsområder og søhuse ved hjælp af Fabric REST API'er for at få adgang til dem programmatisk.
Følgende jobplanlægger-handlinger er tilgængelige for materialiserede søudsigter.
| Action | Description |
|---|---|
| Opret opdateringsplan for MLV | Lav en plan for periodisk opdatering af MLV'er. |
| Få skema for MLV | Få detaljer om en eksisterende opdateringsplan. |
| Liste over kampprogrammer for MLV | Lav en liste over alle opdateringsplaner. |
| Opdater opdateringsplan for MLV | Opdater en eksisterende opdateringsplan. |
| Slet opdateringsskema for MLV | Slet en opdateringsplan. |
| Kør On Demand-opdatering for MLV'er | Kør en øjeblikkelig opdatering af MLV'er. |
| List jobinstanser for MLV | List alle opdateringsjobinstanser. |
| Få oplysninger om jobinstanser for MLV | Få oplysninger om et specifikt opdateringsjob, såsom status. |
| Annuller jobinstans for MLV | Annuller et igangværende opdateringsjob. |
For mere information, se jobplanlægger, hvor {item} ligger Lakehouse og {jobType} er RefreshMaterializedLakeViews.
En MLV-eksekveringsdefinition er en gemt konfiguration, der angiver, hvilke materialiserede søudsigter der skal opdateres, hvilke opstrøms søhuse der skal inkluderes, og hvilken opdateringstilstand og Spark-miljø der skal bruges. Den definerer en delmængde af slægten , som kan opdateres uafhængigt.
Følgende handlinger er tilgængelige for MLV-eksekveringsdefinitioner.
| Action | Description |
|---|---|
| Opret MLV-eksekveringsdefinition | Opret en ny MLV-eksekveringsdefinition. |
| Liste over MLV-eksekveringsdefinitioner | Lister alle MLV-eksekveringsdefinitioner. |
| Få MLV-eksekveringsdefinition | Få detaljer om en eksisterende MLV-eksekveringsdefinition. |
| Opdater MLV-eksekveringsdefinitionen | Opdater en eksisterende MLV-eksekveringsdefinition. |
| Slet MLV-eksekveringsdefinition | Slet en MLV-eksekveringsdefinition. |
For mere information, se materialiserede søudsigter.
Følgende diagrammer viser, hvordan man opdaterer materialiserede søudsigter, med eller uden en MLV-eksekveringsdefinition.
Brugsscenarie 1: Opdater alle MLV'er i et søhus (standard)
Anvendelse 2: Opdater specifikke MLV'er eller et delmængde af slægten
Notat
Disse scenarier dækker brugseksempler, der er specifikke for materialiserede søvisninger. Eksempler på almindelige Fabric-element-API'er er ikke inkluderet.
Eksempler på opdatering af materialiserede søudsigter ved brug af API'er
I hvert eksempel vises HTTP-metoden, URL-adressen til slutpunktet og nyttedata for eksempelanmodninger/svar.
Opret opdateringsplan for MLV
Lav en plan for periodisk fornyelse af slægtslinjen. For kun at opdatere et delmængde af linjen, angiv 'mlvExecutionDefinitionId' i executionData. For mere information, se Opret Opfrisk Materialiserede Lake Views Schedule og Få MLV Execution Definition.
Eksempelanmodning uden MLV Execution Definition:
POST https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/schedules
{
"enabled": true,
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Cron",
"interval": 10
}
}
Eksempelforespørgsel med MLV Execution Definition:
POST https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/schedules
{
"enabled": true,
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Cron",
"interval": 10
},
"executionData": {
"mlvExecutionDefinitionId": "<mlvExecutionDefinitionId>"
}
}
Eksempel på svar:
Statuskode: 201 Oprettet
Location: https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/schedules/<scheduleId>
{
"id": "<scheduleId>",
"enabled": true,
"createdDateTime": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Cron",
"interval": 10
},
"owner": {
"id": "<ownerId>",
"type": "User"
}
}
Få skema for MLV
Få detaljer om en eksisterende opdateringsplan. For mere information, se hent genstandsskemaer med {item} as Lakehouse og {jobType} as RefreshMaterializedLakeViews.
Eksempel på anmodning:
GET https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/schedules/{scheduleId}
Eksempel på svar:
Statuskode: 200 OK
{
"id": "<scheduleId>",
"enabled": true,
"createdDateTime": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Cron",
"interval": 10
},
"executionData": {
"mlvExecutionDefinitionId": "<mlvExecutionDefinitionId>"
},
"owner": {
"id": "<ownerId>",
"type": "User"
}
}
Liste over kampprogrammer for MLV
Lav en liste over alle opdateringsplaner. For mere information, se List Item Schedules med {item} as Lakehouse og {jobType} as RefreshMaterializedLakeViews.
Eksempel på anmodning:
GET https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/schedules
Eksempel på svar:
Statuskode: 200 OK
{
"value": [
{
"id": "<scheduleId_1>",
"enabled": true,
"createdDateTime": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Weekly",
"weekdays": [
"Monday",
"Tuesday"
],
"times": [
"HH:mm",
"HH:mm"
]
},
"owner": {
"id": "<ownerId>",
"type": "User"
}
},
{
"id": "<scheduleId_2>",
"enabled": true,
"createdDateTime": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Daily",
"times": [
"HH:mm",
"HH:mm"
]
},
"owner": {
"id": "<ownerId>",
"type": "User"
}
}
]
}
Opdater opdateringsplan for MLV
Opdater en eksisterende opdateringsplan. For mere information, se Opdater Opdatering af Materialiserede Søudsigter.
Eksempel på anmodning:
PATCH https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/schedules/{scheduleId}
{
"enabled": true,
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Cron",
"interval": 10
},
"executionData": {
"mlvExecutionDefinitionId": "<mlvExecutionDefinitionId>"
}
}
Eksempel på svar:
Statuskode: 200 OK
{
"id": "<scheduleId>",
"enabled": true,
"createdDateTime": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"configuration": {
"startDateTime": "YYYY-MM-DDTHH:mm:ss",
"endDateTime": "YYYY-MM-DDTHH:mm:ss",
"localTimeZoneId": "Central Standard Time",
"type": "Cron",
"interval": 10
},
"executionData": {
"mlvExecutionDefinitionId": "<mlvExecutionDefinitionId>"
},
"owner": {
"id": "<ownerId>",
"type": "User"
}
}
Slet opdateringsskema for MLV
Slet en opdateringsplan. For mere information, se Slet Opfrisk Materialiserede Søudsigter Skema.
Eksempel på anmodning:
DELETE https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/schedules/{scheduleId}
Eksempel på svar:
Statuskode: 200 OK
Kør On Demand-opdatering for MLV'er
Kør en øjeblikkelig opdatering af slægten. For kun at opdatere et delmængde af linjen, angiv 'mlvExecutionDefinitionId' i executionData. For mere information, se Run On Demand Refresh Materialized Lake Views og få MLV Execution Definition.
Eksempelanmodning uden MLV Execution Definition:
POST https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/instances
Eksempelforespørgsel med MLV Execution Definition:
POST https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/instances
{
"executionData": {
"mlvExecutionDefinitionId": "<mlvExecutionDefinitionId>"
}
}
Eksempel på svar:
Statuskode: 202 Accepteret
Location: https://api.fabric.microsoft.com/v1/workspaces/<WORKSPACE_ID>/lakehouses/<LAKEHOUSE_ID>/jobs/instances/<jobInstanceId>
Retry-After: 60
Med headeren Location kan du bruge Get Item Job Instance til at tjekke jobstatus eller Cancel Item Job Instance for at afbryde run'et.
List jobinstanser for MLV
List alle opdateringsjobinstanser. For mere information, se List item job-instanser med {item} som Lakehouse og {jobType}RefreshMaterializedLakeViews. Jobstatus afspejler status i Monitor-hubben.
Eksempel på anmodning:
GET https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/RefreshMaterializedLakeViews/instances
Eksempel på svar:
Statuskode: 200 OK
{
"value": [
{
"id": "<jobInstanceId_1>",
"itemId": "<LAKEHOUSE_ID>",
"jobType": "RefreshMaterializedLakeViews",
"invokeType": "Manual",
"status": "<status>",
"rootActivityId": "<rootActivityId_1>",
"startTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"endTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"failureReason": null
},
{
"id": "<jobInstanceId_2>",
"itemId": "<LAKEHOUSE_ID>",
"jobType": "RefreshMaterializedLakeViews",
"invokeType": "Scheduled",
"status": "<status>",
"rootActivityId": "rootActivityId_2",
"startTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"endTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"failureReason": null
}
]
}
Få oplysninger om jobinstanser for MLV
Få status og detaljer for en specifik opdateringsjobinstans. For mere information, se Get Item Job Instance med {item} som Lakehouse. Jobstatus afspejler status i Monitor-hubben.
Eksempel på anmodning:
GET https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/instances/{jobInstanceId}
Eksempel på svar:
Statuskode: 200 OK
{
"id": "<id>",
"itemId": "<itemId>",
"jobType": "RefreshMaterializedLakeViews",
"invokeType": "<invokeType>",
"status": "<status>",
"rootActivityId": "<rootActivityId>",
"startTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"endTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
"failureReason": null
}
Annuller jobinstans for MLV
Annuller et igangværende opdateringsjob. For mere information, se Annuller Item Job Instance med {item} som Lakehouse.
Eksempel på anmodning:
POST https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/jobs/instances/{jobInstanceId}/cancel
Eksempel på svar:
Statuskode: 202 Accepteret
Location: https://api.fabric.microsoft.com/v1/workspaces/<WORKSPACE_ID>/lakehouses/<LAKEHOUSE_ID>/jobs/instances/<jobInstanceId>
Retry-After: 60
Eksempler på brug af MLV-eksekveringsdefinitions-API'er
I hvert eksempel vises HTTP-metoden, URL-adressen til slutpunktet og nyttedata for eksempelanmodninger/svar.
Opret MLV-eksekveringsdefinition
Skab en ny MLV-eksekveringsdefinition, der specificerer, hvilke MLV'er og upstream lakehouses der skal inkluderes, sammen med refresh mode og Spark-miljø. For mere information, se Opret Mlv Execution Definition.
Eksempel på anmodning:
POST https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/mlvexecutiondefinitions
{
"displayName": "Gold Chain – Sales",
"description": "Nightly refresh for the Sales gold-layer views",
"settings": {
"environment": {
"referenceType": "ById",
"itemId": "<ENVIRONMENT_ID>",
"workspaceId": "<ENVIRONMENT_WORKSPACE_ID>"
},
"refreshMode": "Optimal"
},
"currentLakehouseExecutionContext": {
"mode": "Selected",
"selectedMlvs": [
"dbo.gold_sales_summary",
"dbo.gold_sales_daily"
]
},
"extendedLineageExecutionContext": {
"mode": "All"
}
}
Eksempel på svar:
Statuskode: 201 Oprettet
Location: https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/mlvexecutiondefinitions/<mlvExecutionDefinitionId>
{
"id": "<mlvExecutionDefinitionId>",
"displayName": "Gold Chain – Sales",
"description": "Nightly refresh for the Sales gold-layer views",
"settings": {
"environment": {
"referenceType": "ById",
"itemId": "<ENVIRONMENT_ID>",
"workspaceId": "<ENVIRONMENT_WORKSPACE_ID>"
},
"refreshMode": "Optimal"
},
"currentLakehouseExecutionContext": {
"mode": "Selected",
"selectedMlvs": [
"dbo.gold_sales_summary",
"dbo.gold_sales_daily"
]
},
"extendedLineageExecutionContext": {
"mode": "All"
}
}
Liste over MLV-eksekveringsdefinitioner
Lister alle MLV-eksekveringsdefinitioner. For mere information, se Liste Mlv Execution Definitions.
Eksempel på anmodning:
GET https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/mlvexecutiondefinitions
Eksempel på svar:
Statuskode: 200 OK
{
"value": [
{
"id": "<mlvExecutionDefinitionId_1>",
"displayName": "Gold Chain – Sales",
"description": "Nightly refresh for the Sales gold-layer views",
"settings": {
"environment": {
"referenceType": "ById",
"itemId": "<ENVIRONMENT_ID>",
"workspaceId": "<ENVIRONMENT_WORKSPACE_ID>"
},
"refreshMode": "Optimal"
},
"currentLakehouseExecutionContext": {
"mode": "Selected",
"selectedMlvs": [
"dbo.gold_sales_summary",
"dbo.gold_sales_daily"
]
},
"extendedLineageExecutionContext": {
"mode": "All"
}
},
{
"id": "<mlvExecutionDefinitionId_2>",
"displayName": "Silver Chain – Customers",
"currentLakehouseExecutionContext": {
"mode": "All"
}
}
]
}
Få MLV-eksekveringsdefinition
Få detaljer om en eksisterende MLV-eksekveringsdefinition, inklusive MLV'erne til opdatering, upstream lakehouses til at inkludere, opdateringstilstand og Spark-miljø. For mere information, se Get Mlv Execution Definition.
Eksempel på anmodning:
GET https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/mlvexecutiondefinitions/{mlvExecutionDefinitionId}
Eksempel på svar:
Statuskode: 200 OK
{
"id": "<mlvExecutionDefinitionId>",
"displayName": "Gold Chain – Sales",
"description": "Nightly refresh for the Sales gold-layer views",
"settings": {
"environment": {
"referenceType": "ById",
"itemId": "<ENVIRONMENT_ID>",
"workspaceId": "<ENVIRONMENT_WORKSPACE_ID>"
},
"refreshMode": "Optimal"
},
"currentLakehouseExecutionContext": {
"mode": "Selected",
"selectedMlvs": [
"dbo.gold_sales_summary",
"dbo.gold_sales_daily"
]
},
"extendedLineageExecutionContext": {
"mode": "All"
}
}
Opdater MLV-eksekveringsdefinitionen
Opdater en eksisterende MLV-eksekveringsdefinition. Kun de felter, der er angivet i anmodningens brødtekst, opdateres. udeladte felter bevarer deres eksisterende værdier. For mere information, se Opdater Mlv Execution Definition.
Eksempel på anmodning:
PATCH https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/mlvexecutiondefinitions/{mlvExecutionDefinitionId}
{
"displayName": "Updated Gold Chain – Sales",
"settings": {
"refreshMode": "Full"
},
"currentLakehouseExecutionContext": {
"mode": "All"
},
"extendedLineageExecutionContext": {
"mode": "Selected",
"selectedLakehouses": [
{
"referenceType": "ById",
"itemId": "<UPSTREAM_LAKEHOUSE_ID>",
"workspaceId": "<UPSTREAM_WORKSPACE_ID>"
}
]
}
}
Eksempel på svar:
Statuskode: 200 OK
{
"id": "<mlvExecutionDefinitionId>",
"displayName": "Updated Gold Chain – Sales",
"description": "Nightly refresh for the Sales gold-layer views",
"settings": {
"environment": {
"referenceType": "ById",
"itemId": "<ENVIRONMENT_ID>",
"workspaceId": "<ENVIRONMENT_WORKSPACE_ID>"
},
"refreshMode": "Full"
},
"currentLakehouseExecutionContext": {
"mode": "All"
},
"extendedLineageExecutionContext": {
"mode": "Selected",
"selectedLakehouses": [
{
"referenceType": "ById",
"itemId": "<UPSTREAM_LAKEHOUSE_ID>",
"workspaceId": "<UPSTREAM_WORKSPACE_ID>"
}
]
}
}
Slet MLV-eksekveringsdefinition
Slet en MLV-eksekveringsdefinition. Alle tidsplaner, der er knyttet til den, fjernes også. For mere information, se Slet Mlv Execution Definition.
Eksempel på anmodning:
DELETE https://api.fabric.microsoft.com/v1/workspaces/{WORKSPACE_ID}/lakehouses/{LAKEHOUSE_ID}/mlvexecutiondefinitions/{mlvExecutionDefinitionId}
Eksempel på svar:
Statuskode: 200 OK
Kendte begrænsninger
Følgende begrænsninger gælder for rest-API'er for de materialiserede visninger af søen:
-
Begrænsninger for jobplanlægger-API'er:
- Jobplanlæggeren håndhæver grænser for, hvor mange skemaer der kan konfigureres pr. lakehouse.
- Jobplanlægger-API'en returnerer et begrænset antal færdige og aktive jobs, hvilket kan påvirke synligheden af historiske eller samtidige eksekveringer.
- Begrænsningsgrænserne for Fabric offentlige API'er gælder for materialiserede lake views API'er.
- Jobstatusvisning: Status, der returneres af list-item-jobinstanser og get item-jobinstansen, afspejler status i Monitor-hubben. Det kan adskille sig fra materialiserede søvisningers kørselshistorikstatus (for eksempel vises Sprunget over som Annulleret i Monitor-hubben).
- Opdateringsgrænser: For opdateringsbegrænsninger, se tilladelser og begrænsninger.