zoukankan      html  css  js  c++  java
  • ycsb-命令及参数-与生成的负载类型相关

    load
    bin/ycsb load mydb -P workloads/workloada -p "mydb.host=127.0.0.1" -p "mydb.port=1111" -p "recordcount=100" -p "operationcount=200" -p "insertorder=sorted"  -p "requestdistribution=zipfian"

    run
    bin/ycsb run mydb -P workloads/workloada -p "mydb.host=127.0.0.1" -p "mydb.port=1111" -p "recordcount=100" -p "operationcount=200"  -p "insertorder=sorted" -p  "requestdistribution=zipfian"

    总结:
    (1)-P workloads/workloada是必须的,但是其内容可以被 -p 参数覆盖。
    recordcount在load时的条目。operationcount表明run时的条目。
    insertorder表示load时的分布。requestdistribution表示run时的分布。

    但是,与load相关的参数都会影响到run时的行为。
    比如load时使用顺序插入,那么run时有顺序插入参数时就会考虑数据集是以此生成的。

    (2)operationcount 与load 无关, "requestdistribution=zipfian" 与load无关,load始终使用 uniform 的形式生成负载

    load时,如果-p "insertorder=sorted", 那么ycsb生成的模式为 userxxyy,其中xx即为顺序的数值,从0一直到recordcount-1, yy是一串数字,这串数字与xx有关,所有位数相同的xx其yy是一样的,最终组成的key具有相同的长度。

    这样组成的key序列并不是真正有序的。甚至会生成重复的key。

    比如key 1和key 18 分别是 user1863145027629296129  user1863145027629296129 但是很显然结果是相同的key。

    "insertorder=sorted" 中 sorted 和ordered都表示顺序

      -threads 28 参数表示使用的线程数。

    -----2017.5.20

    报错 OSError: [Errno 2] No such file or directory

    解决:网上说可能java没装,装了java后照样报此错误。提示里有好几行是 File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child 之类的,有说将python升级到2.7.13的。查看本机python是2.7.12, 但是另一台可运行的机器python是2.7.6. 

    然后突然发现运行mvn命令提示mvn没有装。

    sudo apt-get install mvn 后解决。

    -----2017.8.31

    run时,每一次生成的key序列都不一样,即使其他参数都相同。这表明可以使用多个trace进行多线程测试。

  • 相关阅读:
    linux进程管理类
    linux关机重启指令
    linux分区及磁盘挂载
    linux的运行级别
    property
    访问限制机制
    类的组合与封装
    继承与派生
    logging模块
    re模块
  • 原文地址:https://www.cnblogs.com/bettersky/p/6121168.html
Copyright © 2011-2022 走看看