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

Oracle Discussion :

Question sur buffer_pool Default


Sujet :

Oracle

  1. #1
    Membre habitué
    Homme Profil pro
    CMA-CGM
    Inscrit en
    Novembre 2005
    Messages
    531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : CMA-CGM
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2005
    Messages : 531
    Points : 137
    Points
    137
    Par défaut Question sur buffer_pool Default
    Bonjour,
    j'ai une petite question à poser :
    Que veut dire : BUFFER_POOL DEFAULT dans la clause STORAGE de création d'une table...

    exemple :
    Create table schéma.titi
    (col1,
    col2)
    TABLESPACE Ts_titi
    LOGGING
    PCTFREE 10
    PCTUSED 0
    INITRANS 1
    MAXTRANS 255
    STORAGE(BUFFER_POOL DEFAULT)
    NOPARALLEL
    Est-ce une allocation dynamique ?
    Merci pour vos réponses...

  2. #2
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    D'après la documentation de la commande CREATE TABLE dans Oracle9i SQL Reference Release 2 (9.2)

    BUFFER_POOL
    The BUFFER_POOL clause lets you specify a default buffer pool (cache) for a schema object. All blocks for the object are stored in the specified cache.

    If you define a buffer pool for a partitioned table or index, then the partitions inherit the buffer pool from the table or index definition, unless overridden by a partition-level definition.
    For an index-organized table, you can specify a buffer pool separately for the index segment and the overflow segment.
    Restrictions on BUFFER_POOL
    You cannot specify this clause for a cluster table. However, you can specify it for a cluster.
    You cannot specify this clause for a tablespace or for a rollback segment.
    KEEP
    Specify KEEP to put blocks from the segment into the KEEP buffer pool. Maintaining an appropriately sized KEEP buffer pool lets Oracle retain the schema object in memory to avoid I/O operations. KEEP takes precedence over any NOCACHE clause you specify for a table, cluster, materialized view, or materialized view log.

    RECYCLE
    Specify RECYCLE to put blocks from the segment into the RECYCLE pool. An appropriately sized RECYCLE pool reduces the number of objects whose default pool is the RECYCLE pool from taking up unnecessary cache space.

    DEFAULT
    Specify DEFAULT to indicate the default buffer pool. This is the default for objects not assigned to KEEP or RECYCLE.

  3. #3
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    en gros c'est une clause inutile probablement générée dynamiquement

  4. #4
    Membre habitué
    Homme Profil pro
    CMA-CGM
    Inscrit en
    Novembre 2005
    Messages
    531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : CMA-CGM
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2005
    Messages : 531
    Points : 137
    Points
    137
    Par défaut
    Merci pour vos réponses...
    En fait c'est 'Embarcadero' qui génère les tables avec cette option... Mais pourquoi d'après vous Laurent, cette clause semble être inutile ?

    En fait mon problème est le suivant... Je vais avoir à gérer une nouvelle application dont la table principale augmentera de 700 Mégas, toutes les fins mois par un traitement batch...
    Ma question est la suivante (excusez encore mon ignorance !) : Vaut-il mieux crééer une table 'INITIAL 700 M et NEXT 700M'... ainsi, à chaque traitement batch, un extent de 700 méga sera pris... où bien une table (INITIAL 700000 M et NEXT 7M)...
    Quelle est la meilleure phylosophie à adopter en sachant que nous n'avons pas de problème de place disque...

    Et pour revenir à ma clause 'BUFFER_POOL DEFAULT', pourquoi d'après vous 'Embarcadero' utilise-t-il cette otion...

    L'explication :
    The BUFFER_POOL clause lets you specify a default buffer pool (cache) for a schema object. All blocks for the object are stored in the specified cache.
    n'est pas très claire... disons plutôt qu'elle ne parle pas d'allocation primaire et secondaire !

    Merci pour vos réponses ...

  5. #5
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Cette clause STORAGE ne concerne que la gestion des blocks dans la SGA (dans le buffer cache) et non la gestion des blocks dans le tablespace (sur disque).

    Ma question est la suivante (excusez encore mon ignorance !) : Vaut-il mieux crééer une table 'INITIAL 700 M et NEXT 700M'... ainsi, à chaque traitement batch, un extent de 700 méga sera pris... où bien une table (INITIAL 700000 M et NEXT 7M)...
    Quelle est votre version d'Oracle ?
    Si le tablespace est un locally managed tablespace (LMT) - ce qui devrait être le cas à partir de 8.1.7 -, la question ne devrait pas se poser: il vaut mieux laisser Oracle décider et ne rien spécifier.
    Comment est géré le tablespace ?

  6. #6
    Membre habitué
    Homme Profil pro
    CMA-CGM
    Inscrit en
    Novembre 2005
    Messages
    531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : CMA-CGM
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2005
    Messages : 531
    Points : 137
    Points
    137
    Par défaut
    Merci Pifor, j'ai tout compris...
    Je suis en 9i et, effectivement, ces questions de place disque ne doivent pas se poser...
    Quelquefois, je me taperai tout seul sur les doigts !

    Merci encore !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [debutant] Questions sur 1 futur projet
    Par cyrull22 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 28/04/2003, 21h49
  2. Quelques questions sur le TWebBrowser...
    Par CorO dans le forum Web & réseau
    Réponses: 3
    Dernier message: 17/01/2003, 21h23
  3. Question sur les handles et les couleurs...
    Par MrDuChnok dans le forum C++Builder
    Réponses: 7
    Dernier message: 29/10/2002, 08h45
  4. Réponses: 2
    Dernier message: 11/08/2002, 21h27
  5. question sur les message box !
    Par krown dans le forum Langage
    Réponses: 7
    Dernier message: 02/08/2002, 16h11

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