mysql, pgsql의 성능이 맘에 들지 않을 때,
성능 개선을 위해 간단한 db를 만들어 사용하는데,
이때 data파일 저장시 제가 사용되는 gdbm API입니다.
컴파일할 때 -ldb 잊지 말구요.
index 파일은 상황에 맞게 만들어보아요~
bdbobj_init(&dbw);
if(bdbobj_open(&dbw, logfile, "N")) return -1;
while(fgets(data_buff,STR_MAX,fd_mess)!=NULL)
{
line=packit(data_buff);
line=expl_line(line);
if(line.logtype)
{
...
sprintf(time_buf,"%04d%02d%02d%02d%02d%02d",tYear, tMon, tDay, tHour, tMin, tSec);
if( bdbobj_store(&dbw, time_buf, strlen(time_buf),
line.buff, strlen(line.buff),"R"));
}
}
q = bdbobj_fetch(&dbw, "20071222150323", 14, &len, "");
bdbobj_close(&dbw);