|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Futur Membre du Club
![]() Inscription : octobre 2003 Messages : 54 ![]() |
Bonjour.
j'utilise une base oracle 8i sur une machine Win2000Server (tout cela est, certes, obsolètes mais, sauf erreur de ma part, sans incidence pour ce qui m'interesse) J'ai une table composeé comme suit : champ1 number(10) champ2 number(10) champ3 date champ4 number(10) champ5 varchar2(1) cette table a été déclarée avec un initial extent à 2Go. En moyenne 22000 entrées/jour Il n'y a pas de mise à jour des champs mais de la suppression d'enregistrements (notion de doublons) Le block-size de la base vaut 8192. Si j'ai tout bien compris, un enregistrement vaut number(10) = 6 octets number(10) = 6 octets date = 7 octets number(10) = 6 octets varchar2(1) = 1 octet soit 26 octet soit 0,3% du bloc. Avec tout ça, ai-je raison de vouloir créer une copie de cette table avec Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() DBA Oracle freelance Inscription : janvier 2005 Messages : 558 ![]() |
Bonjour,
en utilisant la fonction dbms_space.create_table_cost avec un pctfree à 0, cela donne pour 22 000 lignes : Used Bytes: 761856 Allocated Bytes: 786432 Donc pour 1 an : 22 000 x 365 = 8030000 Used Bytes: 277561344 Allocated Bytes: 285212672 Pourquoi donc laisser 40% d'espace inutilisé puisque les lignes ne sont pas mises à jour ? Sur un an, la table occupera environ 272 Mo. De mémoire, les tablespaces locally managed sont apparus en 8i. Donc, je mettrai cette table dans un TS géré en LMT. Sinon (en DMT), je la taillerais ainsi : initial 300M, next 10M, pctincrease 0 Le nombre d'extensions n'est pas très important, il faut simplement que les extensions soient uniformes. |
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : octobre 2003 Messages : 54 ![]() |
Je croyais que le pctfree correspondait à la taille à partir de laquelle Oracle considère le bloc comme étant "réutilisable". C'est pour cela que je l'avais mis à 40%.
Au regard de ton explication, j'en conclus qu'il faut mettre le pctused à 100%. Ce qui signifierait que tant que le bloc n'est pas plein, il peut stocker des données dedans. Me trompe-je? |
|
|
00
|
|
|
#4 |
|
Membre chevronné
![]() DBA Oracle freelance Inscription : janvier 2005 Messages : 558 ![]() |
Allez, un peu de promo pour le site et FP :
http://blog.developpez.com/pachot/p8...free-initrans/ |
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : octobre 2003 Messages : 54 ![]() |
Si j'ai tout bien compris, le pctfree c'est l'espace qu'oracle doit garder libre pour l'évolution du contenu du block du fait de la mise à jour de champs.
'vais m'coucher un peu moins bête ce soir moi ![]() Pour le pctused, moyennant d'utiliser ASSM, je l'oublie. Alors bon je vais investiguer sur ASSM. En tout cas, merci de ton aide.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com