questions about checkpoint in berkeley db & performance
668042Dec 10 2008 — edited Dec 15 2008my bdb version is 4.5.20.
db open flags
DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_MPOOL | DB_INIT_TXN | DB_THREAD
system: centos 5.2 64bit
there's about 20M records in the DB, and i write records into the DB. the write speed is about 2000 records(about 40 bytes per record) per second.
my checkpoint period is 120 seconds, and there's no limitation on the log size when checkpointing. so about 2 minutes the system do a routine checkpoint. But the system looks like it's blocked by IO ('wa' reach to above 50% in total cpu usage in top command) when checkpoint is under going. The throughput decreases dramaticly, sometimes 0 record being written into the DB for several seconds (last for about 60 seconds).
so i wanna know how to tune BDB to balance the throughput.
all the parameters i know including checkpoint period, log size threshold when checkpoint, log buffer size, and log size
and i search the forum, memp_trickle may concerns. but i don't know how to tweak (... int pct, int *nwrotep) parameters.
any suggestions and help?
thanks
Edited by: user10496225 on 2008-12-10 上午12:57
Edited by: user10496225 on 2008-12-10 上午1:00