Megosztás a következőn keresztül:


.disable | .enable materialized-view

Letiltja vagy engedélyezi a materializálási folyamatot egy materializált nézethez.

Megjegyzés

Mivel a materializált nézet letiltásához/engedélyezéséhez fontos teljesítménybeli következmények társulnak, a parancs használatának megkezdése előtt győződjön meg arról, hogy ismeri őket. További információ: A materializált nézetek engedélyezésének/letiltásának teljesítménykövetkezményei .

Engedélyek

A parancsok futtatásához legalább Materialized View Rendszergazda kell rendelkeznie.

Syntax

.enable | disablematerialized-viewMaterializedViewName

További információ a szintaxis konvenciókról.

Paraméterek

Név Típus Kötelező Leírás
MaterializedViewName string ✔️ A materializált nézet neve.

Válaszok

Ha a materializált nézet már abban az állapotban van, amelyben a parancsot be szeretné állítani, a parancs hibát jelez, amely azt jelzi, hogy ez a helyzet.

Ellenkező esetben visszaadja annak a materializált nézetnek a részleteit, amelynek IsEnabled tulajdonsága megváltozott.

Kimeneti séma:

Név Típus Leírás
Név string A materializált nézet neve.
SourceTable string Annak a forrástáblának a neve, amelyen a nézet definiálva van.
Lekérdezés string A materializált nézet lekérdezésdefiníciója.
MaterializedTo datetime Maximális materializált ingestion_time() időbélyeg a forrástáblában. További információ: A materializált nézetek működése.
LastRun datetime A materializálás legutóbbi futtatása.
LastRunResult string Az utolsó futtatás eredménye. Completed Sikeres futtatás esetén ad vissza, ellenkező esetbenFailed.
IsHealthy bool true ha a nézet kifogástalan állapotúnak minősül, false ellenkező esetben. A nézet akkor tekinthető kifogástalannak, ha az elmúlt óráig sikeresen megvalósult (MaterializedTo nagyobb, mint ago(1h)).
IsEnabled bool true ha a nézet engedélyezve van (lásd: Materializált nézet letiltása vagy engedélyezése).
Mappa string Mappa, amely alatt a materializált nézet létrejön.
DocString string A materializált nézethez rendelt leírás.
AutoUpdateSchema bool Azt jelzi, hogy a nézet engedélyezve van-e az automatikus frissítésekhez.
EffectiveDateTime datetime A nézet létrehozási ideje alatt meghatározott érvényes dátum (lásd .create materialized-view: ).
Visszatekintés timespan Az ismétlődések várható időtartamát korlátozó időtartam.

Példák

Materializált nézet engedélyezése

A következő parancs engedélyezi a materializált viewName nézetet:

.enable materialized-view ViewName

Kimenet

Name SourceTable Lekérdezés MaterializedTo LastRun LastRunResult IsHealthy IsEnabled Mappa DocString AutoUpdateSchema EffectiveDateTime Visszatekintés
ViewName TableName TableName | arg_max(Column3, *) összegzése Oszlop1 szerint 2023-02-26T16:40:03.3345704Z 2023-02-26T16:44:15.9033667Z Befejeződött true true hamis 2023-02-23T14:01:42.5172342Z

Materializált nézet letiltása

A következő parancs letiltja a materializált ViewName nézetet:

.disable materialized-view ViewName

Kimenet

Name SourceTable Lekérdezés MaterializedTo LastRun LastRunResult IsHealthy IsEnabled Mappa DocString AutoUpdateSchema EffectiveDateTime Visszatekintés
ViewName TableName TableName | summarize arg_max(Column3, *) by Column1 2023-02-26T16:40:03.3345704Z 2023-02-26T16:44:15.9033667Z Befejeződött true hamis hamis 2023-02-23T14:01:42.5172342Z

Megjegyzések

Materializált nézetek letiltása

A materializált nézet az alábbi módokon tiltható le:

  • Automatikus letiltás a rendszer által: A materializált nézet automatikusan le van tiltva, ha a materializálás állandó hibával meghiúsul. Ez a folyamat a következő esetekben fordulhat elő:
    • A nézetdefinícióval inkonzisztens sémamódosítások.
    • A forrástábla olyan módosításai, amelyek miatt a materializált nézet lekérdezése szemantikailag érvénytelen.
  • Explicit módon tiltsa le a materializált nézetet: Ha a materializált nézet negatívan befolyásolja a fürt állapotát (például túl sok processzort használ), tiltsa le a nézetet az .disable materialized-view paranccsal.

Materializált nézetek és sorszintű biztonság

Ha egy materializált nézet le van tiltva, és amíg a nézet le van tiltva, valaki sorszintű biztonsági szabályzatot határoz meg a nézet forrástáblájában, de a materializált nézethez nincs definiálva sorszintű biztonsági szabályzat, akkor a nézet engedélyezése biztonsági okokból meghiúsul. A hiba elhárításához a következőket teheti:

  • Definiálja a sorszintű biztonsági szabályzatot a materializált nézetben.
  • A hiba figyelmen kívül hagyásához adja hozzá allowMaterializedViewsWithoutRowLevelSecurity a tulajdonságot a szabályzat engedélyezése parancshoz. Például:
    .enable materialized-view MV with (allowMaterializedViewsWithoutRowLevelSecurity=true)

A materializált nézetek engedélyezésének/letiltásának teljesítménykövetkezményei

  • Ha egy materializált nézet le van tiltva, a rendszer felfüggeszti a materializálást, és nem használja fel a fürt erőforrásait. A materializált nézet lekérdezése akkor is lehetséges, ha le van tiltva, de a teljesítmény gyenge lehet. A letiltott materializált nézet teljesítménye a forrástáblába a letiltás óta betöltött rekordok számától függ.
  • Engedélyezheti a korábban letiltott materializált nézeteket. Ha újra engedélyezve van, a materializált nézet a bal oldali ponttól kezdve folytatja a materializált nézet materializálását, és nem hagy ki rekordokat. Ha a nézetet hosszú ideig letiltották, a felzárkózás hosszú időt vehet igénybe.
  • A nézetek letiltása csak akkor javasolt, ha azt gyanítja, hogy a nézet hatással van a fürt állapotára.