Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Zum Starten des YCSB-Ladens mit der Cluster-aktivierten Option für REDIS

Ich weiß nicht, ob Sie dieses Problem erkannt haben oder nicht.

Aber im Grunde, wenn Sie YCSB auf Redis Cluster verwenden möchten, müssen Sie einen Redis Cluster Client für YCSB implementieren. Es ist dem Client sehr ähnlich, den YCSB für Redis hat. Sie können die Redis (einzelne Instanz) kopieren und einfügen und den Code in der init() ändern. Konfigurieren und kompilieren Sie mit maven, dann können Sie das YCSB über den Redis Cluster Client ausführen.

Weitere Einzelheiten:

Da YCSB Java verwendet, müssen wir Jedis verwenden. Es gibt eine Sache in Jedis namens JedisCluster, die wir verwenden müssen, um eine Verbindung zwischen YCSB und Redis Cluster herzustellen. Weitere Details finden Sie auf jedis github.

Denken Sie für den Maven-Teil daran, die pom.xml in Ihrem Client-Code-Ordner zu ändern und auch Ihr clientseitiges Modul in Ihrem YCSB-Stammordner hinzuzufügen (auch pom.xml, unter nosql).

Erwähnenswerte Dinge :

Ich habe mit YCSB für Redis Cluster experimentiert. Die Einstellung ist Standard, 4 Knoten ohne Replikate, Maschine mit 8 Kernen, 8 GB Arbeitsspeicher, Ausführung von YCSB von einer anderen Maschine mit derselben Einrichtung mit 6 Threads für Worker.

Der Redis-Cluster ist in allen Aspekten 3x bis 4x langsamer als Redis Single Instance. (Hauptsächlich für den Schwellenwertvergleich, bei dem der Durchsatz nicht durch Anpassen des -target-Parameters erhöht werden kann)

Ich weiß nicht wirklich, ob es mein Problem ist oder das Problem von jedis/jedisCluster/YCSB/Redis Cluster/etc.

Wenn Sie das YCSB erfolgreich auf dem Redis-Cluster ausführen, teilen Sie mir bitte das Ergebnis mit. Ich bin sehr gespannt auf Ihr Ergebnis.

Danke