BerkeleyDB和eXtremeDB性能在LINUX下的比较

BerkeleyDB和eXtremeDB性能在LINUX下的比较

ID:37920105

大小:389.00 KB

页数:14页

时间:2019-06-02

BerkeleyDB和eXtremeDB性能在LINUX下的比较_第1页
BerkeleyDB和eXtremeDB性能在LINUX下的比较_第2页
BerkeleyDB和eXtremeDB性能在LINUX下的比较_第3页
BerkeleyDB和eXtremeDB性能在LINUX下的比较_第4页
BerkeleyDB和eXtremeDB性能在LINUX下的比较_第5页
资源描述:

《BerkeleyDB和eXtremeDB性能在LINUX下的比较》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、BerkeleyDB和eXtremeDB性能在LINUX下的比较1、BerkeleyDB测试源程序:#include#include#include#include#include#ifdef_WIN32externintgetopt(int,char*const*,constchar*);#else#include#endif#include"db.h"externvoid__os_clock__P((DB_ENV*,u_int32_t*,u_int3

2、2_t*));voidusage__P((void));structdb_time{ u_int32_tsecs,usecs;};structdb_time start_time,end_time;u_int32_t pagesize=32*1024;u_int  bulkbufsize=4*1024*1024;u_int           logbufsize=8*1024*1024;u_int           cachesize=32*1024*1024;u_int  datasize=32;u_int  keysize=8;u_int           numi

3、tems=0;FILE            *fp;char  *progname;voidop_ds(u_int,int);voidop_ds_bulk(u_int,u_int*);voidop_tds(u_int,int,u_int32_t);voidres(char*,u_int);voidres(char*msg,u_intops){ doubleelapsed; structdb_timev; v.secs=end_time.secs-start_time.secs; v.usecs=end_time.usecs-start_time.usecs; if(star

4、t_time.usecs>end_time.usecs){  v.secs--;  v.usecs+=1000000; } elapsed=v.secs+v.usecs/1e6; printf("%stelapsedtime:%fseconds:%gkey/datapairspersec",    msg,elapsed,ops/elapsed);}voidop_ds(u_intops,intupdate){ char*letters="abcdefghijklmnopqrstuvwxuz"; DB*dbp; DBTkey,data; char*keybuf,*da

5、tabuf; DB_MPOOL_STAT *gsp; (void)remove("a"); assert((keybuf=malloc(keysize))!=NULL); assert((databuf=malloc(datasize))!=NULL); memset(&key,0,sizeof(key)); memset(&data,0,sizeof(data)); key.data=keybuf; key.size=keysize; memset(keybuf,'a',keysize); data.data=databuf; data.size=datasize; mem

6、set(databuf,'b',datasize); assert(db_create(&dbp,NULL,0)==0); dbp->set_errfile(dbp,stderr); assert(dbp->set_pagesize(dbp,pagesize)==0); assert(dbp->open(dbp,NULL,NULL,NULL,DB_BTREE,DB_CREATE,0666)==0); dbp->dbenv->memp_stat(dbp->dbenv,&gsp,NULL,DB_STAT_CLEAR); if(update){          __os_cloc

7、k(NULL,&start_time.secs,&start_time.usecs);  for(;ops>0;--ops){   keybuf[(ops%keysize)]=letters[(ops%26)];   assert(dbp->put(dbp,NULL,&key,&data,0)==0);  }  __os_clock(NULL,&end_time.secs,&end_time.usecs); }else{  assert(dbp->put(dbp,NULL,&key,&data,0)==

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。