Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Redis数据迁移到群集_Redis_Redis Server_Redis Cluster - Fatal编程技术网

将Redis数据迁移到群集

将Redis数据迁移到群集,redis,redis-server,redis-cluster,Redis,Redis Server,Redis Cluster,我们有一个Redis实例,它有大量的数据(超过100GB)。我们还有一个空的Redis集群,有6个节点。将所有数据从独立实例移动到Redis群集并使其均匀分布的最佳方法是什么?在进行了一些搜索之后,我看到了一篇文章,详细介绍了如何将数据移动到群集。移动大量数据可能需要一些时间,但这是迄今为止我见过的最好的方式 您可以在这里阅读:您可以在将数据转储到RDB文件后,通过使用和集群代理程序来简化此过程 rdb --command protocol RDB_FILE_PATH | nc PROXY_HO

我们有一个Redis实例,它有大量的数据(超过100GB)。我们还有一个空的Redis集群,有6个节点。将所有数据从独立实例移动到Redis群集并使其均匀分布的最佳方法是什么?

在进行了一些搜索之后,我看到了一篇文章,详细介绍了如何将数据移动到群集。移动大量数据可能需要一些时间,但这是迄今为止我见过的最好的方式


您可以在这里阅读:

您可以在将数据转储到RDB文件后,通过使用和集群代理程序来简化此过程

rdb --command protocol RDB_FILE_PATH | nc PROXY_HOST PROXY_PORT

如果AOF文件包含跨插槽命令,如
RPOPLPUSH
(取决于代理的实现),那么将AOF文件管道化到代理可能无法工作。但是,如果您实际使用此类命令,则不应使用群集。

“并使其均匀分布”您不能这样做,因为不能保证键空间均匀分布。您是对的。在这种情况下,将节点分割成相等数量的插槽就足够了。是的,这也是我迄今为止发现的最好的,但是redis-trib.rb在redis版本5中不再可用。在将插槽1186从127.0.0.1:30001移动到127.0.0.1:30002时,我的测试群集被卡住:ERR Target instance回复错误:CLUSTERDOWN群集关闭