2013/01/30

SQLite Memory DB 속도 테스트

SQLite 를 이용하여 데이터를 저장하는데 속도 문제가 고민이 되어 Memory DB를 테스트 해 보았다.



SQLite 를 이용하여 10만개 레코드를 Insert하고 Update 해 보았다.



테스트를 한 시스템은 Intel Core2Quad CPU Q9550 2.83GHz 이다.



결과는 Update는 차이가 없었지만 Memory DB가 SSD에 비해 15배, HDD에 비해 19배 빠른 결과가 나왔다. 
 

MemoryDB 

MemoryDB Insert: 276.685ms

MemoryDB Update: 4.503ms




SSD

SDD 100000 Insert: 4268.289ms

SDD 100000 Update: 4.685ms




HDD

HDD 100000 Insert: 5302.730ms

HDD 100000 Update: 5.745ms



Memory DB를  활용하면 좀 더 빠르게 데이터를 저장할 수 있을 것 같다.



Memory DB에 올려진 데이터는 백업 함수를 이용하면 쉽고 빠르게 파일로 저장할 수 있다.



Memory DB와 File DB를 연 상태에서 아래 코드를 수행하면 된다. 

sqlite3_backup* pBackup = NULL;
watch.Begin();
pBackup = sqlite3_backup_init( pFileDB, "main", pMemDB, "main" );
if ( pBackup )
{
sqlite3_backup_step( pBackup, -1 );
sqlite3_backup_finish( pBackup );
}


<

Original Post : http://neodreamer-dev.tistory.com/695

No comments :

Post a Comment