使用REDIS的启用集群选项启动YCSB加载 [英] To start YCSB load with cluster enabled option for REDIS

查看:144
本文介绍了使用REDIS的启用集群选项启动YCSB加载的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在Redis集群上执行YCSB基准测试.我创建了redis集群,并在以下条件下工作.

I am Performing YCSB bench marking on Redis cluster. I have created redis cluster and its working with the following condition.

如果我指定使用-c参数在redis客户端中启用集群模式.块已正确移动.

If I specify to enable cluster mode in redis client with -c parameter. The chunks are moved correctly.

./redis-cli -h -c "host ip" -p "port"

如果我不指定-c参数,则会错误地移动块

if I dont specify -c parameter, it moved the chunk with error

./redis-cli -h "host ip" -p "port"

YCSB加载选项中的SO,我不知道如何启用集群选项(-c参数).

SO in YCSB load option, I don't know how to enable the cluster option ( -c parameter).

当前,我正在使用以下不带-c选项的命令

Currently I am using the following conmmand without -c option

./bin/ycsb load redis -s -P workloads/workloada -p "redis.host=host ip" -p "redis.port=port" > outputLoad.txt

它返回一个错误.您能帮我解决问题吗?

It returns an error. Can you help me to resolve the issue?

推荐答案

不知道您是否发现了此问题.

Don't know if you figured this problem or not.

但是,基本上,如果您想在Redis Cluster上使用YCSB,则需要为YCSB实施Redis Cluster Client.这与YCSB用于Redis的客户端非常相似.您可以复制和粘贴Redis(单个实例)并在init()中更改代码.使用maven配置和编译,然后您就可以通过Redis Cluster Client运行YCSB.

But basically if you want to use YCSB on Redis Cluster, you need to implement a Redis Cluster Client for YCSB. It's very similar to the client that YCSB has for Redis. You can copy and paste the Redis (single instance) and change the code in the init(). Configure and compile with maven then you can run the YCSB through Redis Cluster Client.

更多细节:

因为YCSB使用Java,所以我们需要使用jedis. jedis中有一个名为JedisCluster的东西,我们需要使用它来建立YCSB和Redis Cluster之间的连接.可以在jedis github上找到更多详细信息.

Because YCSB using java, so we need to use jedis. There is a thing in jedis called JedisCluster, we need to use that in order to make connection between YCSB and Redis Cluster. More details can be found on jedis github.

对于Maven而言,请记住在客户端代码文件夹中更改pom.xml,并在YCSB根文件夹(也为pom.xml,在nosql下)中添加客户端模块.

For the maven part, remember to change the pom.xml in your client code folder, and also add your client side module in your YCSB root folder (also pom.xml, under nosql).

值得一提的东西:

我使用YCSB对Redis Cluster进行了实验.该设置是标准的,没有副本的4个节点,8核计算机,8 GB内存,从另一台计算机运行YCSB,该计算机具有相同的设置,并为工作人员提供6个线程.

I did experiment for Redis Cluster using YCSB. The setting is standard, 4 nodes without replicas, 8 cores machine, 8 GB mem, running YCSB from another machine with the same set up with 6 threads for workers.

Redis群集在所有方面都比Redis单实例慢3倍-4倍. (主要用于阈值比较,通过调整-target参数不能将吞吐量提高到更高)

The Redis Cluster is 3x - 4x slower than Redis Single Instance in all aspects. (Mainly for the threshold comparison, where throughput cannot be bumped higher by adjusting the -target parameter)

我真的不知道这是我的问题还是jedis/jedisCluster/YCSB/Redis Cluster/等问题.

I don't really know whether it's my problem or it's the problem of jedis/jedisCluster/YCSB/Redis Cluster/etc.

如果您在Redis Cluster上成功运行了YCSB,请告诉我结果.我会对你的结果很好奇.

If you successfully run the YCSB on Redis Cluster, please tell me the result. I will be super curious on your result.

谢谢

这篇关于使用REDIS的启用集群选项启动YCSB加载的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆