zoukankan      html  css  js  c++  java
  • YCSB测试

     查看workloads中文件

    我们打开workloada查看信息

    以下是workloada、workloadb、workloadc、workloadd、workloade、workloadf的相关文件信息

    workloada 读写均衡型,50%读,50%写
    workloadb 读多写少型,95%读,5%更新。
    workloadc 只读,100%读。
    workloadd 读最近写入记录型,95%读,5%插入。
    workloade 扫描小区间型,95%扫描,5%插入。
    workloadf 读写入记录均衡型,50%读,50%读、修改、写。

    对指定的数据库进行测试

    ./bin/ycsb load mongodb -s -P workloads/S1 -p mongodb.url=mongodb://root:123@192.168.0.101/ycsb > /home/hduser/load_test.txt

    • -s 代表输出status
    • -threads 指定线程数
    • -P 指定workload
    • > 代表stdout 输出到 /home/hduser/load_test.txt文件

    使用Mongostat辅助测试

    mongostat --host 127.0.0.1:27017 -uroot -p123 --authenticationDatabase ycsb

    参数说明:

    --host:指定IP地址和端口,也可以只写IP,然后使用--port参数指定端口号

    -u: 如果开启了认证,则需要在其后填写用户名

    -p:   密码
    --authenticationDatabase:若开启了认证,则需要在此参数后填写认证库(注意是认证上述账号的数据库)

    输出格式:

     下面进行实战

    首先配置好文件mongotest_in_only。只插入数据。

    #插入100万条文档数据
    
    recordcount=1000000
    
    operationcount=1000000
    
    workload=com.yahoo.ycsb.workloads.CoreWorkload
    
    readallfields=true
    
    readproportion=0
    
    updateproportion=0
    
    scanproportion=0
    
    #只有插入的操作,1就是100%
    
    insertproportion=1
    
    requestdistribution=uniform
    
    insertorder=hashed
    
    fieldlength=250
    
    fieldcount=8
    
    mongodb.url=mongodb://127.0.0.1:27017/ycsb?w=0
    
    mongodb.writeConcern=acknowledged
    
    threadcount=100

    打开mongostat

    mongostat --host 127.0.0.1:27017 -uroot -p123 --authenticationDatabase ycsb

     切换到ycsb目录,运行如下

    ./bin/ycsb load mongodb -P workloads/mongotest_in_only -s >mongo_20190418.txt

     查看刚刚产生的mongo_20190418.txt

     

    也可以在终端查看

    cat mongo_20190418.txt

     关注几个信息:

    RunTime(ms):    数据加载所用时间,单位毫秒(ms)

    Throughput(ops/sec):    吞吐量,即ops(每秒操作次数)

    Operations:    操作的总次数

    AverageLatency(us):    平均响应延时,单位是微秒(us)

    MinLatency(us):    最小响应时间,单位是微秒(us)

    MaxLatency(us):    最大响应时间,单位是微秒(us)

    95thPercentileLatency(us):    95%的操作延时,单位是微秒(us)

    99thPercentileLatency(us):    99%的操作延时,单位是微秒(us)

    Return=OK:    成功返回数,这个值不符合测试要求,则证明测试失败.

    [READ]开头的代表只读的操作记录,其他还有例如上面的[insert],[UPDATE]等,

    其他可以理解的就是字面意思,不能理解也不需要太过关注.

    和其他测试软件一样,这个只能说是基准值,并不是标准值,和真实环境不能全部模拟,所以测试的思维要结合别的测试软件的方法来做.

    测试一下只读操作

    配置一下文件mongotest_read_only,只读取文件。

    #读取100万条文档数据
    recordcount=1000000
    operationcount=1000000
    workload=com.yahoo.ycsb.workloads.CoreWorkload
    readallfields=true
    #只读,1即100
    readproportion=1
    updateproportion=0
    scanproportion=0
    insertproportion=0
    requestdistribution=uniform
    insertorder=hashed
    fieldlength=250
    fieldcount=8
    mongodb.url=mongodb://127.0.0.1:27017/ycsb?w=0
    mongodb.writeConcern=acknowledged
    threadcount=100

    运行mongostat

     mongostat --host 127.0.0.1:27017 -uroot -p123 --authenticationDatabase ycsb

    切换到ycsb目录,运行如下

    ./bin/ycsb run mongodb -P workloads/mongotest_read_only -s >mongo_20190419.txt

    参考:

    ycsb

    https://blog.51cto.com/arthur376/2069453

    mongostat

    https://blog.csdn.net/jianlong727/article/details/54949874

    你只管努力,其他的交给天意~
  • 相关阅读:
    Elasticsearch搜索引擎学习笔记(二)
    Elasticsearch搜索引擎学习笔记(一)
    Redis集群(cluster模式)搭建(三主三从)
    Redis主从、哨兵
    oracle 数据查询 返回树形结构的每一级的id
    oracle 数据库查询 COALESCE字符函数
    java 生成不重复的6位数字 +年月日
    oracle 数据库查询CLOB类型 报错 【ORA-00932: 数据类型不一致: 应为 -, 但却获得 CLOB】
    oracle 数据表结构和数据 导入 导出
    sql 创建数据库表结构
  • 原文地址:https://www.cnblogs.com/genghenggao/p/10729604.html
Copyright © 2011-2022 走看看