[SP-pm] Duvida: usar arquivo TXT ou tabela com campo array

Renato Santos renato.cron at gmail.com
Fri Jul 30 04:40:23 PDT 2010


Bom,

Eu so escutei o papo (são outros desenvolvedores que estão fazendo isso)
Mas acho que a tabela é esta:


A maquina é meio (bastante) lenta, mas nao vão trocar:
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 8
model name    : Pentium III (Coppermine)
stepping    : 3
cpu MHz        : 930.472
cache size    : 256 KB
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 2
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 mmx fxsr sse
bogomips    : 1861.87

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 8
model name    : Pentium III (Coppermine)
stepping    : 3
cpu MHz        : 930.472
cache size    : 256 KB
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 2
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 mmx fxsr sse
bogomips    : 1860.93

Esta query, demorou mais de 500 segundos e nao rodou:
SELECT esquema, tabela,
       pg_size_pretty(pg_relation_size(esq_tab)) AS tamanho,
       pg_size_pretty(pg_total_relation_size(esq_tab)) AS tamanho_total
  FROM (SELECT tablename AS tabela,
               schemaname AS esquema,
               schemaname||'.'||tablename AS esq_tab
          FROM pg_catalog.pg_tables
         WHERE schemaname NOT
            IN ('pg_catalog', 'information_schema', 'pg_toast') ) AS x
 ORDER BY pg_total_relation_size(esq_tab) DESC;*


Desisto!


*Esta rolando um bzip -9 consumindo *possuindo* a maquina neste exato
momento.


Em desenv (que por ironia, é beeem melhor que a producao)

public, mc_corte, 844 MB, 1152 MB
public, tb_ciclo_inicio, 977 MB, 977 MB
public, sim_producao, 490 MB, 548 MB
public, cr_det, 440 MB, 509 MB
public, sim_mailing, 297 MB, 487 MB


A tabela é a tb_ciclo_inicio


CREATE TABLE tb_ciclo_inicio
(
  cod_cn character(10),
  ciclo numeric(6,0)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE tb_ciclo_inicio OWNER TO natura;


O problema é perfomance mesmo.

Hoje tem um perl (eu nao vi ainda) que deve fazer algo assim:

$hash = {};
foreach (@$rows){
   $hash->{$_->{cod_cn}}{$_->{ciclo}} = 1
}

2010/7/30 Nelson Ferraz <nferraz at gmail.com>

> 2010/7/30 Renato Santos <renato.cron at gmail.com>:
> > Oi pessoal,
> >
> > Eu uso postgres, e hoje, temos uma tabela que guarda todos os meses que
> uma
> > pessoa participou do sistema:
> > Digamos que seja ela assim:
> > id_pessoa bigint, mes int
>
> Duas perguntas:
>
> 1) Voce pode nos enviar o esquema (CREATE TABLE) da tabela atual?
> (Incluindo indices)
> 2) Quais sao as restricoes que te levaram a considerar a mudanca?
> (espaco, performance?)
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm at pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>



-- 
Renato Santos
http://www.renatocron.com/blog/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20100730/96e205e9/attachment.html>


More information about the SaoPaulo-pm mailing list