Créer des vues matérialisées
Lorsque vous utilisez SQL pour créer une vue matérialisée à partir d'une table de base, le système stocke la définition de la vue pendant toute la durée de vie de la vue SPM et la vue est visible en tant que vue matérialisée. Les enregistrements associés à la vue SPM sont matérialisés dans une table unique. Les tranches de données SPM sont situées sur les mêmes tranches de données que les tranches de données de la table de base correspondante et sont stockées en permanence sur les partitions du disque de l'utilisateur.
Pour créer une vue matérialisée, entrez :
MYDB.SCHEMA(USER)=> CREATE MATERIALIZED VIEW customers_mview AS SELECT
customer_name, customer_id FROM customers ORDER BY customer_id;Les restrictions suivantes s'appliquent à la création d'une vue matérialisée :
- Vous ne pouvez spécifier qu'une seule table de base dans la clause FROM.
- Vous ne pouvez pas utiliser la clause WHERE.
- Les colonnes de la liste de projection doivent être des colonnes de la table de base et aucune expression (agrégats, opérateurs mathématiques, casting, opérateur DISTINCT et autres expressions) n'est autorisée.
- Vous devez spécifier au moins une colonne dans la liste de projection.
- Les colonnes de la clause ORDER BY facultative doivent être une ou plusieurs colonnes de la liste de projection. Si vous ne spécifiez pas ORDER BY, la vue matérialisée conserve le même ordre de tri que la table de base.
- Vous ne pouvez pas spécifier NULLS LAST ou DESC dans l'expression ORDER BY.
- Vous ne pouvez pas spécifier une table externe, temporaire, système ou une table de base en cluster (CBT) comme table de base pour la vue.
Remarque : Lorsque vous insérez de nouveaux enregistrements dans la table de base à laquelle est associée une vue SPM, le système les ajoute également à la table de la vue matérialisée. La table matérialisée comporte donc deux zones : l'une contient les enregistrements triés générés lors de la création de la vue, l'autre les enregistrements non triés insérés dans la table de base après la création de la vue SPM. Si les performances de votre requête dépendent de la nature triée de la vue SPM, actualisez manuellement la vue SPM en la suspendant et en l'actualisant périodiquement.