Re: Consulta

From: Ezequiel Lovelle <elovelle(at)dialdata(dot)com(dot)ar>
To: Fernando Hevia <fhevia(at)gmail(dot)com>
Cc: Arpug <arpug(at)postgresql(dot)org>
Subject: Re: Consulta
Date: 2011-05-07 23:46:32
Message-ID: 6726d28cf45b54e9d92355257775977c@dialdata.com.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: arpug

Ok, con fsync=on directamente a postgres me tardo:

#time php
script.php
real 5m34.471s
user 0m2.527s
sys 0m1.917s

procs memory page
disks faults cpu
r b w avm fre flt re pi po fr sr ad4 ad6 in sy cs us
sy id
0 0 0 2336M 7457M 2 0 0 0 0 0 356 356 1260 3185 10173 1 1 98
0 0
0 2336M 7457M 2 0 0 0 0 0 435 435 1515 3853 12193 1 1 98
0 0 0 2336M
7457M 3 0 0 0 0 0 531 532 1843 4668 14781 0 1 98
0 0 0 2336M 7457M 4 0
0 0 0 0 751 752 2605 6544 20742 1 1 98
0 0 0 2336M 7457M 4 0 0 0 0 0
925 923 3238 7997 25565 1 2 98
0 0 0 2336M 7457M 3 0 0 0 0 0 627 628
2183 5503 17403 0 1 99
0 0 0 2336M 7457M 4 0 0 0 4 0 641 641 2193 5575
17673 1 1 98
0 0 0 2336M 7456M 3 0 0 0 0 0 682 681 2340 5949 18812 1 1
98
0 0 0 2336M 7456M 4 0 0 0 0 0 681 683 2382 5964 18988 1 2 98
0 0 0
2336M 7456M 3 0 0 0 0 0 628 628 2180 5491 17401 0 2 98
0 0 0 2336M
7456M 2 0 0 0 0 0 545 544 1906 4787 15182 0 1 99
0 0 0 2336M 7456M 3 0
0 0 8 0 552 552 1910 4829 15343 1 1 98
0 0 0 2336M 7456M 3 0 0 0 0 0
457 458 1608 4092 13009 0 1 99
0 0 0 2336M 7456M 1 0 0 0 0 0 405 403
1409 3596 11401 0 1 98
0 0 0 2336M 7456M 41 0 0 0 0 0 222 224 790 2078
6525 0 0 100
0 0 0 2336M 7456M 3 0 0 0 0 0 693 693 2403 6102 19174 1 1
98
0 0 0 2336M 7456M 5 0 0 0 0 0 828 827 2910 7228 23070 1 2 97
0 0 0
2336M 7456M 3 0 0 0 4 0 715 716 2486 6238 19804 1 3 97
0 0 0 2336M
7456M 4 0 0 0 0 0 733 733 2544 6395 20261 0 1 98
0 0 0 2336M 7456M 636
0 0 0 656 0 532 532 1833 4879 14835 1 1 98
0 0 0 2336M 7455M 2 0 0 0 8
0 598 598 2067 5180 16650 1 1 98
0 0 0 2336M 7455M 3 0 0 0 0 0 667 667
2316 5865 18498 1 1 98
0 0 0 2336M 7455M 6 0 0 0 0 0 880 879 3048 7688
24303 1 2 97
0 0 0 2336M 7455M 27 0 0 0 0 0 758 759 2608 6650 20957 1 1
98
0 0 0 2336M 7455M 4 0 0 0 6 0 715 713 2457 6154 19698 1 1 98
0 0 0
2336M 7455M 9 0 0 0 0 0 176 178 632 1679 5289 0 0 100
0 0 0 2336M 7455M
1 0 0 0 0 0 412 410 1442 3660 11588 1 1 98
0 0 0 2336M 7455M 3 0 0 0 0
0 492 494 1712 4333 13768 1 1 98
0 0 0 2336M 7455M 1 0 0 0 0 0 330 330
1167 2946 9470 0 1 98
0 0 0 2336M 7455M 3 0 0 0 0 0 410 410 1441 3657
11561 0 1 99
0 0 0 2336M 7455M 3 0 0 0 0 0 692 691 2401 6043 19114 0 1
98
1 0 0 2336M 7455M 4 0 0 0 0 0 726 726 2526 6316 20039 1 1 98
0 0 0
2336M 7455M 3 0 0 0 0 0 686 687 2393 5999 19103 1 1 98
0 0 0 2336M
7454M 4 0 0 0 0 0 702 702 2427 6121 19372 1 2 98
0 0 0 2336M 7454M 5 0
0 0 0 0 681 679 2351 5950 18803 0 2 98
0 0 0 2336M 7454M 4 0 0 0 4 0
718 719 2479 6240 19789 0 1 99
0 0 0 2336M 7454M 37 0 0 0 0 0 666 667
2325 5835 18548 1 1 98
0 0 0 2336M 7454M 6 0 0 0 0 0 746 744 2587 6540
20625 1 2 98
0 0 0 2336M 7454M 8 0 0 0 0 0 810 810 2844 7114 22456 1 2
97
0 0 0 2336M 7454M 632 0 0 0 649 0 496 497 1742 4577 13957 0 1 99
0
0 0 2328M 7455M 265 0 0 0 662 0 189 189 677 1795 5696 0 0 99
0 0 0
2328M 7455M 0 0 0 0 0 0 0 0 10 171 456 0 0 100
0 0 0 2363M 7454M 414 0
0 0 161 0 4 4 33 6478 601 2 0 98
0 0 0 2363M 7454M 0 0 0 0 0 0 0 0 7
151 456 0 0 100
0 0 0 2363M 7454M 0 0 0 0 0 0 0 0 18 149 575 0 0 100
0
0 0 2363M 7454M 0 0 0 0 0 0 3 3 10 147 485 0 0 100
0 0 0 2363M 7454M 0
0 0 0 0 0 0 0 6 149 465 0 0 100
0 0 0 2363M 7454M 2 0 0 0 0 0 0 0 7 152
489 0 0 100
0 0 0 2363M 7454M 0 0 0 0 4 0 2 2 24 149 604 0 0 100
0 0 0
2363M 7454M 0 0 0 0 8 0 9 9 22 147 562 0 0 100

LOGS

May 7 20:40:54
pgsql1 postgres[2024] [99998-1] LOG: statement: INSERT INTO tabla (aa,
bb, cc, dd, ee) VALUES ('99997
','99997','99997','99997','99997')
May 7
20:40:54 pgsql1 postgres[2024] [99999-1] LOG: statement: INSERT INTO
tabla (aa, bb, cc, dd, ee) VALUES
('99998
','99998','99998','99998','99998')
May 7 20:40:54 pgsql1
postgres[2024] [100000-1] LOG: statement: INSERT INTO tabla (aa, bb, cc,
dd, ee) VALUES ('9999
9','99999','99999','99999','99999')
May 7 20:40:54
pgsql1 postgres[2024] [100001-1] LOG: statement: INSERT INTO tabla (aa,
bb, cc, dd, ee) VALUES
('1000
00','100000','100000','100000','100000')
May 7 20:41:52 pgsql1
postgres[1954] [5-1] LOG: checkpoint starting: time
May 7 20:44:32
pgsql1 postgres[1954] [6-1] LOG: checkpoint complete: wrote 799 buffers
(0.3%); 0 transaction log file(s) added, 0 removed, 0 recycled;
write
=160.550 s, sync=0.008 s, total=160.562 s

En los logs no me
aparece gran cosa, la verdad que estoy medio perdido.

Saludos

On Sat,
7 May 2011 19:40:37 -0300, Fernando Hevia wrote:

> Ojo: Deshabilitar
fsync aplica únicamente en casos muy especiales, como la restauración
inicial de una base de datos. Es un modo de operación insegura y puede
provocar corrupción en la base si hay un crash o corte de luz.
>
> Los
tiempos que te pasé son con fsync = on.
>
> Fijate los logs y vmstat
que te arrojan con fsync =on mientras corres el test.
>
> 2011/5/7
Ezequiel Lovelle
>
>> Puse fsync = off
>>
>> #time php script.php

>>
>> real 0m50.592s
>> user 0m1.744s
>> sys 0m1.243s
>>
>> Mejoro
bastante, en cuanto pueda te paso lo de los logs, ¿alguna idea de algún
otro parámetro para tocar?
>>
>> On Sat, 7 May 2011 17:09:59 -0300,
Fernando Hevia wrote:
>>
>>> 2011/5/7 Ezequiel Lovelle
>>>
>>>>
Gracias por tu respuesta, se que no es una manera eficiente pero es que
quiero testear la bbdd en todos los aspectos.
>>>>
>>>> Te comento,
cuando lo hago desde la consola de postgres me da lo siguiente:
>>>>

>>>> bbdd=> timing
>>>> El despliegue de duración está activado.
>>>>
bbdd=> INSERT INTO tabla (aa, bb, cc, dd, ee) VALUES (generate_series(1,
100000),generate_series(1, 100000),generate_series(1,
100000),generate_series(1, 100000),generate_series(1, 100000));
>>>>
INSERT 0 100000
>>>> Duración: 1486,699 ms
>>>>
>>>> Ahí veo que me
funciono perfecto, me ganas por unos ms jeje. (destaco que en realidad
esto es todo detrás de un pgpool conectado con 3 nodos, no a una bbdd
postgres directa) Pero el resultado fue bueno.
>>>>
>>>> El problema
es cuando lo hago con php desde un webserver, me tarda lo siguiente:

>>>>
>>>> #time php script.php
>>>>
>>>> real 22m21.733s
>>>> user
0m1.846s
>>>> sys 0m1.902s
>>>>
>>>> Un problema de red no creo que
sea ya que todos estos servers de testeo estan en una red separada de la
mia en un switch de 100M.
>>>>
>>>> Lo que me hace pensar que el
problema es la velocidad del procesamiento de php en el webserver...
cosa que me parace muy rara. Igualmente voy a hacer el mismo script en
bash o perl aver si es un problema de php.
>>>
>>> 22 minutos es una
barbaridad.
>>> Habilitá log_checkpoints y log_lock_waits en
postgres.conf.
>>> Fijate que dicen los logs de postgres mientras
ejecutás los inserts.
>>> Y corré unVMSTAT 1en el server de la base
mientras ejecutás el script.
>>>
>>> Alguna pista tiene que salir de
esto.
>>> Slds.,
>>> Fernando.
>>>
>>>>

Links:
------
[1]
mailto:elovelle(at)dialdata(dot)com(dot)ar
[2] mailto:elovelle(at)dialdata(dot)com(dot)ar

In response to

Responses

Browse arpug by date

  From Date Subject
Next Message Fernando Hevia 2011-05-08 00:02:53 Re: Consulta
Previous Message Fernando Hevia 2011-05-07 22:40:37 Re: Consulta