.disable | .enable materialized-view
S’applique à : ✅Microsoft Fabric✅Azure Data Explorer
Désactive ou active le processus de matérialisation pour une vue matérialisée.
Remarque
Étant donné qu’il existe des implications importantes en matière de performances associées à la désactivation/à l’activation d’une vue matérialisée, vérifiez que vous êtes familiarisé avec eux avant de poursuivre l’utilisation de cette commande. Pour plus d’informations, consultez la section Performances de l’activation/de la désactivation des vues matérialisées.
autorisations
Vous devez disposer au moins d’un administrateur de vue matérialisé pour exécuter ces commandes.
Syntaxe
.enable
| disable
materialized-view
MaterializedViewName
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | Description |
---|---|---|---|
MaterializedViewName | string |
✔️ | Nom de la vue matérialisée. |
Retours
Si la vue matérialisée est déjà dans l’état dans lequel la commande tente de la définir, la commande échoue avec une erreur indiquant que c’est le cas.
Sinon, elle retourne les détails de la vue matérialisée dont la propriété IsEnabled a été modifiée.
Schéma de sortie :
Nom | Type | Description |
---|---|---|
Nom | string |
Nom de la vue matérialisée. |
SourceTable | string |
Nom de la table source sur laquelle la vue est définie. |
Requête | string |
Définition de requête de la vue matérialisée. |
MaterializedTo | datetime |
Horodatage ingestion_time() matérialisé maximal dans la table source. Pour plus d’informations, consultez le fonctionnement des vues matérialisées. |
LastRun | datetime |
Dernière exécution de la matérialisation. |
LastRunResult | string |
Résultat de la dernière exécution. Retourne Completed pour les exécutions réussies ; sinon Failed . |
IsHealthy | bool |
true lorsque l’affichage est considéré comme sain, false sinon. La vue est considérée comme saine si elle a été matérialisée jusqu’à la dernière heure (MaterializedTo est supérieure à ago(1h) ). |
IsEnabled | bool |
true lorsque l’affichage est activé (voir Désactiver ou activer la vue matérialisée). |
Dossier | string |
Dossier sous lequel la vue matérialisée est créée. |
DocString | string |
Description affectée à la vue matérialisée. |
AutoUpdateSchema | bool |
Indique si la vue est activée pour les mises à jour automatiques. |
EffectiveDateTime | datetime |
Date d’effet de l’affichage, déterminée pendant l’heure de création (voir .create materialized-view ). |
Recherche arrière | timespan |
Intervalle de temps limitant la période dans laquelle les doublons sont attendus. |
Exemples
Activer une vue matérialisée
La commande suivante active la vue matérialisée ViewName :
.enable materialized-view ViewName
Sortie
Nom | SourceTable | Requête | MaterializedTo | LastRun | LastRunResult | IsHealthy | IsEnabled | Dossier | DocString | AutoUpdateSchema | EffectiveDateTime | Recherche arrière |
---|---|---|---|---|---|---|---|---|---|---|---|---|
NomVue | TableName | TableName | résumer arg_max(Column3, *) by Column1 | 2023-02-26T16:40:03.3345704Z | 2023-02-26T16:44:15.9033667Z | Terminée | true | true | false | 2023-02-23T14:01:42.5172342Z |
Désactiver une vue matérialisée
La commande suivante désactive la vue matérialisée ViewName :
.disable materialized-view ViewName
Sortie
Nom | SourceTable | Requête | MaterializedTo | LastRun | LastRunResult | IsHealthy | IsEnabled | Dossier | DocString | AutoUpdateSchema | EffectiveDateTime | Recherche arrière |
---|---|---|---|---|---|---|---|---|---|---|---|---|
NomVue | TableName | TableName | résumer arg_max(Column3, *) by Column1 | 2023-02-26T16:40:03.3345704Z | 2023-02-26T16:44:15.9033667Z | Terminée | true | false | false | 2023-02-23T14:01:42.5172342Z |
Notes
Désactivation des vues matérialisées
Une vue matérialisée peut être désactivée de l’une des manières suivantes :
- Désactivation automatique par le système : la vue matérialisée est automatiquement désactivée si la matérialisation échoue avec une erreur permanente. Ce processus peut se produire dans les instances suivantes :
- Modifications de schéma incompatibles avec la définition de vue.
- Modifications apportées à la table source qui entraînent l’invalidation sémantique de la requête de vue matérialisée.
- Désactivez explicitement la vue matérialisée : si la vue matérialisée a un impact négatif sur l’intégrité de la base de données (par exemple, consomme trop de processeur), désactivez la vue à l’aide de la
.disable materialized-view
commande.
Vues matérialisées et sécurité au niveau des lignes
Si une vue matérialisée est désactivée et que la vue est désactivée, une personne définit une stratégie de sécurité au niveau des lignes sur la table source de la vue, mais la vue matérialisée n’a pas de stratégie de sécurité au niveau des lignes définie, puis l’activation de l’affichage échoue pour des raisons de sécurité. Pour corriger cette erreur, vous pouvez :
- Définissez la stratégie de sécurité au niveau des lignes sur la vue matérialisée.
- Choisissez d’ignorer l’erreur en ajoutant
allowMaterializedViewsWithoutRowLevelSecurity
une propriété à la commande Enable Policy. Par exemple :
.enable materialized-view MV with (allowMaterializedViewsWithoutRowLevelSecurity=true)
Implications en termes de performances de l’activation/de la désactivation des vues matérialisées
- Lorsqu’une vue matérialisée est désactivée, la matérialisation est suspendue et ne consomme pas de ressources à partir de la base de données. L’interrogation de la vue matérialisée est possible même en cas de désactivation, mais les performances peuvent être médiocres. Les performances d’une vue matérialisée désactivée dépendent du nombre d’enregistrements ingérés dans la table source depuis sa désactivation.
- Vous pouvez activer une vue matérialisée qui a été précédemment désactivée. Lorsqu’elle est réactivée, la vue matérialisée continue de matérialiser à partir du point qu’elle a quitté, et aucun enregistrement n’est ignoré. Si la vue a été désactivée pendant un certain temps, il peut prendre beaucoup de temps pour rattraper le retard.
- La désactivation d’une vue est recommandée uniquement si vous pensez que la vue a un impact sur l’intégrité de votre base de données.