[BSD] I/O sebesseg merese

Laszlo Nagy gandalf at designaproduct.biz
2006. Sze. 11., H, 13:28:41 CEST


  Sziasztok!

Van egy gepem amin egy viszonylag nagy adatbazis van PostgreSQL-ben. 
Amikor kiadok egy "create index" parancsot, vagy epp vaacum-ozom az 
adatbazist, akkor altalaban ilyen kep fogad:

CPU states: 11.3% user,  0.0% nice,  7.5% system,  0.8% interrupt, 80.4% 
idle
Mem: 210M Active, 552M Inact, 190M Wired, 42M Cache, 111M Buf, 1696K Free
Swap: 5120M Total, 656K Used, 5119M Free

  PID USERNAME       THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU 
COMMAND
45140 pgsql            1  -4    0 62892K 56068K getblk 1   0:16  3.71% 
postgres
46145 pgsql            1  -8    0 44168K 38444K biord  1   0:01  0.15% 
postgres
57862 gandalf          1   4    0  3960K  2460K kqread 1  39:12  0.00% imap
44043 thomas           1   4    0  2960K  1496K kqread 0  34:32  0.00% imap
62774 root             4  20    0  6288K  4384K kserel 0  30:51  0.00% 
python
21221 gandalf          1   4    0  3408K  1576K kqread 1  27:16  0.00% imap
12982 gandalf          1   4    0  3752K  1980K kqread 1  27:07  0.00% imap
94248 gandalf          1   4    0  4256K  2200K kqread 1  26:52  0.00% imap
60809 gandalf          1   4    0  3776K  2036K kqread 1  26:07  0.00% imap
  508 root             1   4    0  1420K   976K kqread 0   3:59  0.00% 
dovecot
91567 gandalf          1   4    0  8400K  4684K select 0   2:56  0.00% sshd

A CPU szinte nem csinal semmit. A postgres allapota altalaban "getblk" 
vagy "biord". A gep egy FreeBSD 6.1-p6 rendszer, dual core intel 2.66 
CPU es van benne egy tukrozott SATA vinyo. Az atacontrol szerint SATA150 
modban. Az a legnagyobb baj, hogy ha

"select count(*) from from nagyon_nagy_tabla where <feltetel>"

tipusu lekerdezest futtatok, akkor is nagyon lassu. Ez 1 tablazat, es 
seq scan-t hasznal a tablara. Tehat gyakorlatilag csak vegigolvas egy 
file-t. A tablaban 700 000 rekord van es 3GB a tabla merete a lemezen. 
Megis tobb percig tart mire lefut ez a lekedezes. Hogyan tudnam gyorsitani?

Koszonom,

   Laci






További információk a(z) BSD levelezőlistáról