Limitazioni delle visualizzazioni materializzate e problemi noti

Origine visualizzazione materializzata

  • Tabella di origine di una vista materializzata:
    • Deve essere una tabella in cui i dati vengono inseriti direttamente, usando un criterio di aggiornamento o l'inserimento da comandi di query.
      • L'uso di extent di spostamento o sostituzione di extent da altre tabelle alla tabella di origine della vista materializzata è supportato solo se si usa setNewIngestionTime la proprietà come parte del comando move extents (fare riferimento ai comandi .move extents e . replace extents per altri dettagli).
      • Lo spostamento delle estensioni alla tabella di origine di una visualizzazione materializzata, mentre l'uso setNewIngestionTimepotrebbe non riuscire con uno degli errori seguenti:
        • Cannot drop/move extents from/to table 'TableName' since Materialized View 'ViewName' is currently processing some of these extents.
        • Cannot move extents to 'TableName' since materialized view 'ViewName' will not process these extents (can lead to data loss in the materialized view).
  • Per impostazione predefinita, la tabella di origine di una visualizzazione materializzata deve avere i criteri Di inserimentoTime abilitati.It is enabled by default.
  • La tabella di origine di una vista materializzata non può essere una tabella con criteri di accesso a visualizzazione limitata.
  • Non è possibile creare una visualizzazione materializzata sopra un'altra visualizzazione materializzata, a meno che la prima visualizzazione materializzata non sia di tipo take_any(*) aggregazione. Vedere visualizzazione materializzata sulla visualizzazione materializzata.
  • Le viste materializzate non possono essere definite su tabelle esterne.

Avviso

  • Una visualizzazione materializzata verrà disabilitata automaticamente dal sistema se le modifiche apportate alla tabella di origine della visualizzazione materializzata o le modifiche apportate ai dati comportano l'incompatibilità tra la query di visualizzazione materializzata e lo schema della visualizzazione materializzata prevista.
    • Per evitare questo errore, la query di visualizzazione materializzata deve essere deterministica. Ad esempio, i plug-in bag_unpack o pivot generano uno schema non deterministico.
    • Quando si usa un'aggregazione arg_max(Timestamp, *) e quando autoUpdateSchema è false, le modifiche apportate alla tabella di origine possono anche causare errori di corrispondenza dello schema.
      • Evitare questo errore definendo la query di visualizzazione come arg_max(Timestamp, Column1, Column2, ...)o usando l'opzione autoUpdateSchema .
  • L'uso autoUpdateSchema può causare una perdita irreversibile di dati quando le colonne della tabella di origine vengono eliminate.
  • Monitorare la disabilitazione automatica delle visualizzazioni materializzate usando la metrica MaterializedViewResult.
  • Dopo aver risolto i problemi di incompatibilità, la visualizzazione deve essere riabilitata in modo esplicito usando il comando abilita visualizzazione materializzata .

Impatto dei record inseriti o eliminati dalla tabella di origine

  • Una vista materializzata elabora solo nuovi record inseriti nella tabella di origine. I record rimossi dalla tabella di origine, eseguendole estensioni di eliminazione temporanea dell'eliminazione/ temporanea dei dati/ o a causa di criteri di conservazione o qualsiasi altro motivo, non hanno alcun impatto sulla visualizzazione materializzata.
  • La visualizzazione materializzata ha i propri criteri di conservazione, indipendentemente dai criteri di conservazione della tabella di origine. La vista materializzata potrebbe includere record che non sono presenti nella tabella di origine.

Database di follower

  • Le visualizzazioni materializzate non possono essere create nei database di follower. I database follower sono viste di sola lettura e materializzate richiedono operazioni di scrittura.
  • Le visualizzazioni materializzate definite nei database leader possono essere sottoposte a query dai loro follower, come qualsiasi altra tabella nel leader.
  • Usare il cluster leader per monitorare le visualizzazioni materializzate del database dei follower. Per altre informazioni, vedere Visualizzazioni materializzate nei database di follower.

Altro

  • Le funzioni di cursore non possono essere usate sopra le viste materializzate.
  • L'esportazione continua da una visualizzazione materializzata non è supportata.