Comment utiliser des vues matérialisées postgresql

Comment utiliser des vues matérialisées postgresql

Les vues dans PostgreSQL sont des tables graphiques qui affichent les données des tables correspondantes. Les vues communes peuvent également être modifiées. PostgreSQL fait passer le concept de vues à l'étape suivante en permettant aux vues de stocker matériellement les informations, appelées vues matérialisées. Une vue matérialisée préserve la sortie d'une requête compliquée et longue, vous permettant d'interroger rapidement les résultats à tout moment. Les points de vue matérialisés sont fréquemment utilisés dans les entrepôts de données et les applications de renseignement professionnel car elles sont utiles dans des situations qui nécessitent un accès rapide aux données.

Pourquoi utiliser des vues matérialisées?

Si la commande de vue est trop lente pour vous, vous préférez peut-être utiliser une vue matérialisée. Les vues matérialisées ont beaucoup de polyvalence en vous permettant de conserver une représentation matériellement dans la base de données avec des temps d'accès plus courts. Supposons que vous soyez tenu de créer une requête de base de données pour rejoindre quelques tables, supprimer les lignes de la collection syndicale et trier les tables de diverses manières. Cela pourrait être une requête compliquée et longue, et sans vues matérialisées, vous finirez par utiliser une vue matérialisée pour lutter contre ce dilemme. Cet article vous apprend à utiliser des vues matérialisées dans PostgreSQL.

Syntaxe

>> Créer une vue matérialisée View_name comme une requête avec [non] des données;

L'explication de cette vision générale est la suivante:

  • View_name: Le titre de la vue à créer avec l'instruction Create Materialized View.
  • Mettre en doute: La requête qui obtient les données des tables correspondantes.
  • Avec [non] données: Choisissez l'option avec les données avec les données pour intégrer les données d'information dans la vue matérialisée au moment du développement; Sinon, choisissez sans données. La vue est marquée comme incompréhensible si vous utilisez l'option de données avec [non], ce qui implique que vous ne pourrez pas rechercher des informations à partir de la vue, sauf si vous y avez chargé des données en premier.

Comment utiliser des vues matérialisées

Démarrez votre shell de ligne de commande PostgreSQL pour commencer à travailler sur des vues matérialisées.

Fournissez le nom du serveur, la base de données sur laquelle vous souhaitez travailler, le numéro de port et le nom d'utilisateur pour commencer à utiliser le shell de commande. Laissez ces espaces vides si vous souhaitez utiliser le système par défaut.

Exemple 1: vue simple

Pour comprendre la vue matérialisée, vous devez d'abord comprendre des vues simples. Alors, créez la nouvelle table, «Student», en utilisant la commande Create Table, comme annexé.

>> Créer un étudiant de table (clé primaire série SID, sname varchar (100) pas nul, âge varchar (100) pas null);

Après cela, insérez des données à l'aide de la requête d'insertion.

Remplissez les enregistrements du tableau «étudiant» à l'aide de l'instruction SELECT pour la vue simple.

>> Sélectionner * chez Student;

Exemple 2: vue matérialisée simple

Maintenant, il est temps de couvrir la vue matérialisée. Nous utiliserons la table «étudiante» pour créer une vue matérialisée. Nous créerons une vue matérialisée nommée 'std_view' en utilisant la commande `` Créer une vue matérialisée ''. Dans cette vue, nous allons chercher le champ de nom de l'élève «Sname» de la table «étudiante», groupé et trié par ordre croissant dans la colonne «Sname».

>> Créer une vue matérialisée STD_VIEVE comme Sélectionner Sname from Student Group by Sname Order by Sname;

Maintenant, en utilisant la requête SELECT pour exécuter la vue, nous retournerons les noms des étudiants dans la colonne «Sname» du tableau «étudiant».

>> SELECT * FROM STD_VIEW;

Exemple 3: vue matérialisée en utilisant la clause où

Maintenant, nous allons créer une vue matérialisée en utilisant la clause où. Considérez le tableau «étudiant» suivant avec quelques modifications de ses valeurs.

Ensuite, nous créerons une vue matérialisée nommée «TestStd» en utilisant la requête «Créer une vue matérialisée». Nous sélectionnerons les enregistrements du tableau «étudiant» où la valeur de la colonne «Age» est supérieure à «25» en utilisant la clause WHERE. La requête fonctionne correctement, comme on le voit sur l'image.

>> Créer une vue matérialisée TestStd comme SELECT SID, SNAME, AGE de l'élève où l'âge> «25»;

Enfin, nous exécuterons la vue matérialisée que nous venons de créer en utilisant la commande SELECT, comme ci-dessous. Vous verrez qu'il renverra tous les enregistrements du tableau «étudiant» dans lequel la colonne «Age» a une valeur supérieure à '25.'

>> sélectionner * dans TestStd;

Exemple 4: Rafraîchir la vue matérialisée en utilisant sans clause de données

Dans cet exemple, nous créerons une vue matérialisée, dans laquelle nous utiliserons la clause de données sans données pour actualiser la vue. Supposons que le tableau «étudiant» suivant avec quelques modifications de ses valeurs.

Nous allons maintenant créer la vue matérialisée «Teststd». Cette vue sélectionnera les dossiers du tableau «étudiant» dans lequel l'âge des élèves est inférieur à '40.`` Les enregistrements récupérés seront regroupés et triés en fonction de l'ordre croissant dans la colonne 'SID'. À la fin de la requête, nous utiliserons la clause de données sans données pour indiquer que la requête n'enregistrera aucune information dans une vue matérialisée. La vue illustrée ci-dessous doit effectuer avec succès ces actions.

>> Créer une vue matérialisée Teststd comme SELECT SID, SNAME, AGE de l'élève où l'âge < '40' GROUP BY sid ORDER BY sid WITH NO DATA;

Lorsque vous ajoutez la clause `` sans données '' à une vue matérialisée, cela en crée un vierge. Cette vue matérialisée n'est pas interrogable. Comme vous pouvez le voir dans l'image suivante, il ne va pas récupérer les enregistrements dans la vue nouvellement créée.

L'instruction de vue de rafraîchissement matérialisée est utilisée pour importer les données dans une vue matérialisée. Remplissez la vue matérialisée en exécutant la requête de vue de rafraîchissement suivante dans la coquille. Comme vous pouvez le voir, cette requête a fonctionné efficacement.

>> actualiser la vue matérialisée TestStD;

Encore une fois, récupérez les enregistrements de la vue matérialisée 'Teststd' en utilisant l'instruction SELECT dans le shell. Cette fois, la requête sélectionnée fonctionne correctement car l'instruction «Rafraîchissement» a chargé le contenu dans la vue matérialisée.

Exemple 5: Vue matérialisée de dépôt

La commande suivante supprimera une vue matérialisée.

>> Déposez la vue matérialisée std_view;

Conclusion

Cet article vous a montré comment utiliser des vues matérialisées via la clause et les requêtes de rafraîchissement dans le shell de ligne de commande.