Chiappa,

somente o show parameter não é suficiente pra eu ver o workarea_size_policy ? 
SORT_AREA_SIZE e HASH_AREA_SIZE eu achei.


Esse banco é 8.1.7.4.0

A TEMP é LMT e está como temporary,veja:

TABLESPACE_NAME TEMP
INITIAL_EXTENT 1048576
NEXT_EXTENT 1048576
MIN_EXTENTS 1
PCT_INCREASE 0
MIN_EXTLEN 1048576
STATUS ONLINE
CONTENTS TEMPORARY
LOGGING NOLOGGING
EXTENT_MANAGEMENT LOCAL
ALLOCATION_TYPE UNIFORM

Como eu identifico se está usando TEMPFILES ?





De:oracle_br@yahoogrupos.com.br

Para:oracle_br@yahoogrupos.com.br

Cópia:

Data:Tue, 21 Jun 2005 18:27:08 -0000

Assunto:[oracle_br] Re: Aproximar espaço necessario para TEMP

Muito simplista : pra começo de conversa, espaço na temp ** não é ** 
usado apenas nas queries, mas também para Global Temporary Tables, 
por exemplo. Eu diria pra vc :

a) primeiro de tudo, checar se ** REALMENTE ** as áreas de RAM estão 
corretamente setadas, se o coitado do banco não está tendo que criar 
áreas temp à toa : se banco 8i ou 9i com workarea_size_policy<>AUTO, 
checar principalmente SORT_AREA_SIZE, HASH_AREA_SIZE, se for banco 9i 
E se for banco 9i com workarea_size_policy=AUTO checar 
pga_aggregate_target principalmente. Os tamanhos TEM QUE serem 
proporcionais, nem pode ser poucos Mbs, isso é marcadamente 
insuficiente pra qquer banco mais que trivial, nem pode ser algo tão 
grande que force swap.

b) segundo, checar se REALMENTE a tablespace temp é LMT (local), está 
criada como tipo TEMPORARY e usando TEMPFILES, essa recomendação é 
importante, pois tablespaces TEMP não criadas assim muitas vezes 
demoram demais pra liberar os segmentos temp não usados.

==>> Isso conferido, o procedimento seria primeiro monitorar o 
consumo de temp com as queries abaixo mostradas, quando não estiver 
rodando a query-monstro mas o sistema está em operação normal. Está 
sempre coisa de só 10% ou menos usada a tablespace temp ? Se sim : aí 
é rodar essa query-monstro restringindo nos WHERE com rownum pra umas 
1000 linhas, ver quanto consumiu, aí rodar de novo restringindo para 
10000, consultar, depois para 100000, consultar, aí vc terá um 
parâmetro razoável para prever quanto mais ou menos vc consumirá.

queries :

select * from v$sort_segment;

select * from v$sort_usage;



[]s

Chiappa
--- Em oracle_br@yahoogrupos.com.br, "Ronaldo Sales" 
escreveu
> Boa tarde.
> 
> Eu estou tentando executar uma query que está estourando a minha 
TEMP.
> 
> Para eu saber o espaço que vai ser usado na TEMP eu teria que saber 
o tamanho de cada coluna envolvida no SELECT somar e multiplicar pelo 
número de linhas, ou isso seria uma aproximação muito simplista ?
> 
> A query é enorme, cheio se CASE para saber se eu somo ou não o 
valor de uma coluna.
> 
> É algo do tipo
> SELECT 
> SUM(CASE COLUNA1 = A AND COLUNA2 = B THEN COLUNA3 ELSE 0),
> SUM(CASE COLUNA1 = C AND COLUNA2 = A THEN COLUNA3 ELSE 0)
> FROM TABELA1 A
> , TABELA2 B
> WHERE A.COLUNAX = B.COLUNAX
> 
> Ronaldo.
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]




______________________________________________________________________

Cancelar assinatura...: [EMAIL PROTECTED]
Moderadores da lista....:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
______________________________________________________________________
http://br.groups.yahoo.com/group/oracle_br/ 
______________________________________________________________________

Sair da Lista...: [EMAIL PROTECTED] 
Links do Yahoo! Grupos





[As partes desta mensagem que não continham texto foram removidas]



______________________________________________________________________

Cancelar assinatura...: [EMAIL PROTECTED]
Moderadores da lista....:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
______________________________________________________________________
http://br.groups.yahoo.com/group/oracle_br/ 
______________________________________________________________________

Sair da Lista...: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a