YCSB下载与安装

快速开始

本节介绍如何在MongoDB上运行YCSB。

1.启动MongoDB

在mongodb的bin目录写执行./mongod -f /usr/local/mongodb-3.6/etc/mongo.conf

2.安装Java和Maven

转到http://www.oracle.com/technetwork/java/javase/downloads/index.html(JDK下载页面)

并获取网址将rpm下载到您的服务器。例如:

wget http://download.oracle.com/otn-pub/java/jdk/7u40-b43/jdk-7u40-linux-x64.rpm?AuthParam=11232426132 -o jdk-7u40-linux-x64.rpm
rpm -Uvh jdk-7u40-linux-x64.rpm

或者通过yum / apt-get安装

sudo yum install java-devel

http://maven.apache.org/download.cgi下载MVN

wget http://ftp.heanet.ie/mirrors/www.apache.org/dist/maven/maven-3/3.1.1/binaries/apache-maven-3.1.1-bin.tar.gz
sudo tar xzf apache-maven-*-bin.tar.gz -C /usr/local
cd /usr/local
sudo ln -s apache-maven-* maven
sudo vi /etc/profile.d/maven.sh

将以下内容添加到 maven.sh

export M2_HOME=/usr/local/maven
export PATH=${M2_HOME}/bin:${PATH}

重新加载bash并测试mvn

bash
mvn -version

3.设置YCSB

下载YCSB zip文件并编译:

curl -O --location https://github.com/brianfrankcooper/YCSB/releases/download/0.5.0/ycsb-0.5.0.tar.gz
tar xfvz ycsb-0.5.0.tar.gz
cd ycsb-0.5.0

4.运行YCSB

现在你已经准备好运行了!首先,使用异步驱动程序来加载数据:

./bin/ycsb load mongodb-async -s -P workloads/workloada > outputLoad.txt

然后,运行工作负载:

./bin/ycsb run mongodb-async -s -P workloads/workloada > outputRun.txt

同样,要使用来自MongoDB Inc.的同步驱动程序,我们加载数据:

./bin/ycsb load mongodb -s -P workloads/workloada > outputLoad.txt

然后,运行工作负载:

./bin/ycsb run mongodb -s -P workloads/workloada > outputRun.txt

请参阅下一节以获取MongoDB的配置参数列表。

日志级别控制

由于mongodb驱动默认为DEBUG日志级别,因此此模块中包含一个logback.xml文件,该文件将org.mongodb日志记录限制为WARN。你可以通过重写logback.xml并在你的ycsb命令中添加这个标志来定义它:

bin/ycsb run mongodb -jvm-args="-Dlogback.configurationFile=/path/to/logback.xml"

MongoDB配置参数

  • mongodb.url

  • mongodb.batchsize

    • 对于插入工作负载很有用,因为它将提交批量插入以提高吞吐量。
    • 默认值是1
  • mongodb.upsert

    • 确定插入操作是使用upsert操作还是插入操作执行更新。Upserts的优点是它们将继续为部分加载的数据集工作。
    • 设置为true使用更新,false使用插入操作。
    • 默认值是false
  • mongodb.writeConcern

    • 不推荐使用 - 使用wjournal提供的MongoDB URI选项mongodb.url
    • 允许的值是:
      • errors_ignored
      • unacknowledged
      • acknowledged
      • journaled
      • replica_acknowledged
      • majority
    • 默认值是acknowledged
  • mongodb.readPreference

    • 弃用 - 使用readPreferencemongodb.url提供的MongoDB URI上选项
    • 允许的值是:
      • primary
      • primary_preferred
      • secondary
      • secondary_preferred
      • nearest
    • 默认值是primary
  • mongodb.maxconnections

    • 弃用 - 使用maxPoolSizemongodb.url提供的MongoDB URI上选项
    • 默认值是100
  • mongodb.threadsAllowedToBlockForConnectionMultiplier

    • 弃用 - 使用waitQueueMultiplemongodb.url提供的MongoDB URI上选项
    • 默认值是5

例如:

./bin/ycsb load mongodb-async -s -P workloads/workloada -p mongodb.url=mongodb://localhost:27017/ycsb?w=0

使用MongoDB公司的同步驱动程序运行:

./bin/ycsb load mongodb -s -P workloads/workloada -p mongodb.url=mongodb://localhost:27017/ycsb?w=0
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值