.disable | .enable materialized-view
Van toepassing op: ✅Microsoft Fabric✅Azure Data Explorer-
Hiermee wordt het materialisatieproces voor een gerealiseerde weergave uitgeschakeld of ingeschakeld.
Notitie
Omdat er enkele belangrijke gevolgen zijn voor de prestaties die zijn gekoppeld aan het uitschakelen/inschakelen van een gerealiseerde weergave, moet u ervoor zorgen dat u vertrouwd bent met deze weergave voordat u verdergaat met het gebruik van deze opdracht. Zie de Gevolgen van het in- en uitschakelen van gerealiseerde weergaven sectie voor meer informatie.
Machtigingen
U moet ten minste gerealiseerde weergavebeheerder hebben om deze opdrachten uit te voeren.
Syntaxis
.enable
|
disable
materialized-view
MaterializedViewName-
Meer informatie over syntaxisconventies.
Parameters
Naam | Type | Vereist | Beschrijving |
---|---|---|---|
MaterializedViewName- | string |
✔️ | Naam van de gerealiseerde weergave. |
Retourneert
Als de gerealiseerde weergave al de status heeft waarin de opdracht probeert in te stellen, mislukt de opdracht met een fout die aangeeft dat dit het geval is.
Anders worden de details geretourneerd over de gerealiseerde weergave waarvan de eigenschap IsEnabled is gewijzigd.
uitvoerschema:
Naam | Type | Beschrijving |
---|---|---|
Naam | string |
Naam van de gerealiseerde weergave. |
Brontabel | string |
De naam van de brontabel waarop de weergave is gedefinieerd. |
Vraag | string |
Querydefinitie van de gerealiseerde weergave. |
MaterializedTo | datetime |
Maximale gerealiseerde tijdstempel ingestion_time() in de brontabel. Zie hoe gerealiseerde weergaven werkenvoor meer informatie. |
LastRun | datetime |
De laatste keer dat materialisatie werd uitgevoerd. |
LastRunResult | string |
Resultaat van laatste uitvoering. Retourneert Completed voor geslaagde uitvoeringen, anders Failed . |
IsHealthy | bool |
true wanneer de weergave als in orde wordt beschouwd, false anders. De weergave wordt als gezond beschouwd als het tot het afgelopen uur is gerealiseerd (MaterializedTo groter is dan ago(1h) ). |
IsEnabled | bool |
true wanneer weergave is ingeschakeld (zie Gerealiseerde weergave uitschakelen of inschakelen). |
Map | string |
Map waaronder de gerealiseerde weergave wordt gemaakt. |
DocString | string |
Beschrijving die is toegewezen aan de gerealiseerde weergave. |
AutoUpdateSchema | bool |
Of de weergave is ingeschakeld voor automatische updates. |
EffectiveDateTime | datetime |
Ingangsdatum van de weergave, bepaald tijdens de aanmaaktijd (zie .create materialized-view ). |
Lookback | timespan |
De tijdsduur die de periode beperkt waarin duplicaten of updates worden verwacht. Zie lookbackperiodevoor meer informatie. |
LookbackColumn | string |
Een string kolom in de weergave die fungeert als referentie voor de lookbackperiode. Als deze kolom leeg is, maar de lookback een waarde heeft, wordt in de gerealiseerde weergave een standaardzoekactie gebruikt. Zie lookbackperiodevoor meer informatie. |
Voorbeelden
Een gerealiseerde weergave inschakelen
Met de volgende opdracht schakelt u gerealiseerde viewName in:
.enable materialized-view ViewName
uitvoer
Naam | Brontabel | Vraag | MaterializedTo | LastRun | LastRunResult | IsHealthy | IsEnabled | Map | DocString | AutoUpdateSchema | EffectiveDateTime | Lookback |
---|---|---|---|---|---|---|---|---|---|---|---|---|
ViewName | TableName | TableName | samenvatten arg_max(Kolom3, *) op Kolom1 | 2023-02-26T16:40:03.3345704Z | 2023-02-26T16:44:15.9033667Z | Volbracht | waar | waar | vals | 2023-02-23T14:01:42.5172342Z |
Een gerealiseerde weergave uitschakelen
Met de volgende opdracht wordt gerealiseerde viewName uitgeschakeld:
.disable materialized-view ViewName
uitvoer
Naam | Brontabel | Vraag | MaterializedTo | LastRun | LastRunResult | IsHealthy | IsEnabled | Map | DocString | AutoUpdateSchema | EffectiveDateTime | Lookback |
---|---|---|---|---|---|---|---|---|---|---|---|---|
ViewName | TableName | TableName | samenvatten arg_max(Kolom3, *) op Kolom1 | 2023-02-26T16:40:03.3345704Z | 2023-02-26T16:44:15.9033667Z | Volbracht | waar | vals | vals | 2023-02-23T14:01:42.5172342Z |
Opmerkingen
Gerealiseerde weergaven uitschakelen
Een gerealiseerde weergave kan op een van de volgende manieren worden uitgeschakeld:
-
Automatisch uitschakelen door het systeem: gerealiseerde weergave wordt automatisch uitgeschakeld als materialisatie mislukt met een permanente fout. Dit proces kan zich voordoen in de volgende gevallen:
- Schemawijzigingen die inconsistent zijn met de weergavedefinitie.
- Wijzigingen in de brontabel die ertoe leiden dat de gerealiseerde weergavequery semantisch ongeldig is.
-
De gerealiseerde weergave expliciet uitschakelen: Als de gerealiseerde weergave de status van de database negatief beïnvloedt (bijvoorbeeld te veel CPU verbruikt), schakelt u de weergave uit met behulp van de opdracht
.disable materialized-view
opdracht.
Gerealiseerde weergaven en beveiliging op rijniveau
Als een gerealiseerde weergave is uitgeschakeld en terwijl de weergave is uitgeschakeld, definieert iemand een beveiligingsbeleid op rijniveau in de brontabel van de weergave, maar de gerealiseerde weergave heeft geen beveiligingsbeleid op rijniveau gedefinieerd en mislukt het inschakelen van de weergave om veiligheidsredenen. Om deze fout te verhelpen, kunt u het volgende doen:
- Definieer het beveiligingsbeleid op rijniveau voor de gerealiseerde weergave.
- Kies ervoor om de fout te negeren door
allowMaterializedViewsWithoutRowLevelSecurity
eigenschap toe te voegen aan de opdracht Beleid inschakelen. Bijvoorbeeld:
.enable materialized-view MV with (allowMaterializedViewsWithoutRowLevelSecurity=true)
Gevolgen voor de prestaties van het in- of uitschakelen van gerealiseerde weergaven
- Wanneer een gerealiseerde weergave is uitgeschakeld, wordt materialisatie onderbroken en worden er geen resources uit de database gebruikt. Het uitvoeren van query's op de gerealiseerde weergave is mogelijk, zelfs wanneer deze is uitgeschakeld, maar de prestaties kunnen slecht zijn. De prestaties van een uitgeschakelde gerealiseerde weergave zijn afhankelijk van het aantal records dat is opgenomen in de brontabel omdat deze is uitgeschakeld.
- U kunt een gerealiseerde weergave inschakelen die eerder is uitgeschakeld. Wanneer de gerealiseerde weergave opnieuw is ingeschakeld, blijft de gerealiseerde weergave materialiseren vanaf het punt dat het is gebleven en worden er geen records overgeslagen. Als de weergave lang is uitgeschakeld, kan het lang duren voordat de weergave is ingehaald.
- Het uitschakelen van een weergave wordt alleen aanbevolen als u vermoedt dat de weergave van invloed is op de status van uw database.