IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

Table structurée en index


Sujet :

PostgreSQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 40
    Points
    40
    Par défaut Table structurée en index
    Bonjour,

    plutôt habitué à Oracle, je cherche à savoir si les tables structurées en index (ou notion équivalente) existent sous Postgresql ?

    Si oui qu'elle est-elle ?

    Merci de votre aide.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    Qu'appelez vous tables structurées en index ? Table avec index cluster ?

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 40
    Points
    40
    Par défaut
    Bonjour,

    une table structurée en index est une table ordonnées sur une valeur d'index.

    En fait, il n'y a pas 2 structures : les données en désordre d'un côté dans la table et un index d'un autre. L'intégralité des données est rangée dans la table ordonnée. Cela donne une table extrêmement performante en lecture. C'est particulièrement adapté aux tables de références qui sont chargées une fois et sont ensuite seulement accédées en lecture.

  4. #4
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Rien ne t'empêche d'insérer les lignes de la table dans l'ordre que tu veux mais se passer d'index en améliorant les performances m'étonne beaucoup !

    Si tu prends par exemple la table de référence des départements français. Tu peux insérer les données dans l'ordre des numéros de département mais qu'adviendra t-il lorsuqe que tu rechercheras par le nom du département si tu n'as pas d'index ? Parcourir 100 lignes de tables, ce n'est pas la mort mais ça reste moins performant que l'index sur le nom du département je pense !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    Non, il n'y a pas d'index "CLUSTERED" dans PostGreSQL.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    Le plus proche est la commande CLUSTER qui réorganise physiquement la table suivant l'ordre d'un index.
    Mais contrairement à ce qui se passe avec les "Index Organized Tables" d'Oracle, cet ordre n'est pas préservé par la suite s'il y a des écritures dans la table, et postgres ne fera pas non plus l'économie de la double lecture table+index.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 69
    Points : 40
    Points
    40
    Par défaut
    Merci de ces retours. Je vais me pencher vers cette notion de CLUSTER. Car hormis l'insertion initiale des données, les mises à jours, insertions ou suppressions d'enregistrements seront extrêmement rares et pourront justifier d'une purge de la table et d'un rechargement complet

  8. #8
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    De toutes façon, cela ne fait jamais de mal de réorganiser ses index le plus souvent possible. Pour ma part, dans toutes les boîtes dans lesquelles je fais du conseil en DBA, je préconise une reconstruction/defragmentation des index TOUTES LES NUITS !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. Export structure SGBD, index et table
    Par schtroumpf_farceur dans le forum DB2
    Réponses: 1
    Dernier message: 01/12/2008, 10h06
  2. [SQL Server 2005] Tables système et indexes
    Par Tips dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/04/2006, 09h01
  3. Réponses: 4
    Dernier message: 23/09/2005, 09h16
  4. Import de structure d'index d'ORACLE à MSSQL 2000
    Par vincentvouthier dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 15/07/2005, 17h11
  5. Table occupée et index illisible
    Par stampe dans le forum Bases de données
    Réponses: 4
    Dernier message: 18/03/2005, 18h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo