目前libleveldb的a或so库有三个路径,/usr/lib, /usr/lib/x86_64-linux-gnu , /usr/local/lib

使用

ls -d -1 /usr/lib/*  /usr/lib/x86_64-linux-gnu/*  /usr/local/lib/* |grep leveldb

列出他们的全路径。

(1)/usr/lib/x86_64-linux-gnu/libleveldb.a会起作用,注意重新编译时清空缓存已保证结果正确。编译出的

(2)/usr/lib/x86_64-linux-gnu/xxxlibleveldb.so不起作用

(3)/usr/local/lib/libleveldb.a会起作用,编译出的mapkeeper_leveldb大小为945KB。

leveldb1.8编译出的a库大小为797K, leveldb2.0编译出的a库为815K

*********注意***********, 如果mapkeeper服务端leveldb提示status: IO error: lock data/usertable/LOCK: already held by process,则操作是不成功的,即使ycsb这端显示成功。实际上leveldb数据库里没有任何变动。发现这一点是因为发现leveldb库的put函数没有被调用。

正常情况下,leveldb插入函数被调用的顺序是

dbimpl.cc, DBImpl::Put,begin
dbimpl.cc, DB::Put, begin
dbimpl.cc, DBImpl::Write begin

dbimpl.cc, MakeRoomForWrite, begin

经过打印发现,在mapkeeper下,options_.write_buffer_size=1073741824, 而在db_bench下,options_.write_buffer_size=4194304

而mapkeeper这个设置是在LevelDbServer.cpp里面的,options.write_buffer_size = writeBufferSizeMb_ * 1024 * 1024;

cache size, kNoCompression等也是在这里设置的。

经过设置与db_bench一样的配置,ycsb单线程结果

[OVERALL], RunTime(ms), 544708.0                  相比db_bench是200多秒,差了一倍多
[OVERALL], Throughput(ops/sec), 18358.45994551209

ycsb 8线程结果

[OVERALL], RunTime(ms), 458383.0
[OVERALL], Throughput(ops/sec), 21815.817776837273

16线程

[OVERALL], RunTime(ms), 433804.0
[OVERALL], Throughput(ops/sec), 23051.88518317028

确定mapkeeper使用的leverdb库路径的更多相关文章

  1. windows7下python3.4.3 添加库路径(转)

    1, 动态的添加库路径.在程序运行过程中修改sys.path的值,添加自己的库路径import syssys.path.append(r'your_path') 2, 在Python安装目录下的\Li ...

  2. gcc 动态编译 动态库路径

    gcc 动态编译(共享库) 动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令优点:体积小,编译快缺点:依赖性高 代码如下: [root@74-82-173-21 ...

  3. 转: gcc 指定运行时动态库路径

    gcc 指定运行时动态库路径 Leave a reply 由于种种原因,Linux 下写 c 代码时要用到一些外部库(不属于标准C的库),可是由于没有权限,无法将这写库安装到系统目录,只好安装用户目录 ...

  4. LD_PRELOAD & LD_LIBRARY_PATH 动态库路径

    参考:http://www.cnblogs.com/waterlin/archive/2011/07/14/2106056.html 143上的glibc较低,同学又不能进行升级(造成全局影响),所以 ...

  5. gcc -rpath 指定动态库路径

    gcc -rpath 指定动态库路径 http://blog.csdn.net/v6543210/article/details/44809405

  6. linux 中添加自己的库路径的方法 cannot open shared object file: No such file or directory

    本文转自:http://blog.csdn.net/maotianwang/article/details/44619197 库文档在连接(静态库和共享库)和运行(仅限于使用共享库的程式)时被使用,其 ...

  7. linux 给运行程序指定动态库路径

    1. 连接和运行时库文件搜索路径到设置 库文件在连接(静态库和共享 库)和运行(仅限于使用共享库的程序)时被使用,其搜索路径是在系统中进行设置的.一般 Linux 系统把 /lib 和 /usr/li ...

  8. linux下如何找出交叉编译器的某个库路径?

    答: 使用选项-print-file-name=<lib_name> 如列出libstdc++.so.6的库路径:aarch64-linux-gnu-gcc -print-file-nam ...

  9. 转:动态库路径配置- /etc/ld.so.conf文件

    Linux 共享库 Linux 系统上有两类根本不同的 Linux 可执行程序.第一类是静态链接的可执行程序.静态可执行程序包含执行所需的所有函数 — 换句话说,它们是“完整的”.因为这一原因,静态可 ...

随机推荐

  1. 分享tiny4412,emmc烧录u-boot, 支持fastboot模式烧写emmc

    转载 : http://www.arm9home.net/read.php?tid-83474.html 本人是第一次在此发帖,希望大家多多支持,发帖目的是为了分享,分享的目的是传递开源的精神.Tin ...

  2. mac os+selenium2+Firefox驱动+python3

    此文章建立在之前写的chrome+selenium+Python环境配置的基础上,链接http://blog.csdn.net/zxy987872674/article/details/5308289 ...

  3. 算法之美--3.2.3 KMP算法

    不知道看了几遍的kmp,反正到现在都没有弄清楚next[j]的计算和kmp的代码实现,温故而知新,经常回来看看,相信慢慢的就回了 从头到尾彻底理解KMP 理解KMP /*! * \file KMP_算 ...

  4. List&lt;InvestInfoDO&gt; invest = advertiseDao6.qryInvestInfo(InvestInfoDO1);怎样获得list的实体类;

    List<InvestInfoDO>  invest = advertiseDao6.qryInvestInfo(InvestInfoDO1); 怎样获得List的实体类呢,就是怎样获得I ...

  5. BEGINNING SHAREPOINT&#174; 2013 DEVELOPMENT 第11章节--为Office和SP解决方式开发集成Apps Office的JavaScript对象模型

    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第11章节--为Office和SP解决方式开发集成Apps  Office的JavaScript对象模型         ...

  6. nodejs 模板字符串

    范例1: for (var i=0;i<10;i++){ var data = `公司名:${i}`; console.log(data) } 输出: 实例2: var name = '丁香医生 ...

  7. windows下通过VNC图形化訪问Ubuntu桌面环境

    要在windows下图形化訪问Ubuntu或其他Linux系统桌面环境有非常多方法.我比較喜欢的是使用VNC服务,须要在Ubuntu下安装vncserver和在windows下安装client訪问工具 ...

  8. Controller//控制器

    #include<opencv2\core\core.hpp> #include<opencv2\imgproc\imgproc.hpp> #include<opencv ...

  9. Django-中介模型

    有多对多字段的时候自己创建的第三章表就是中介模型 class Article(models.Model): ''' 文章表 ''' title = models.CharField(max_lengt ...

  10. qemu-kvm编译错误

    今天编译了下qemu-kvm,死活编不过,错误信息如下: CC    block/qcow2-snapshot.oIn file included from ./qemu-common.h:6:0,  ...