database – 环大小更改时迁移Riak数据

这是微不足道的吗?我将使用Bitcask和文件备份(每个节点上的文件).

假设我的初始环大小为256,有16个节点.现在,如果我需要扩展到1024的环,我可以设置16个配置环大小为1024的新实例,将旧群集的备份文件复制到这16个新实例中并启动Riak吗? Riak能够获取这些旧数据吗?

我猜不是,因为一旦环大小改变,分区ID及其到各个节点的映射也可能会改变.但还有其他方式吗?在这种情况下riak-backup会工作吗(当振铃大小改变时)?

我只是想知道我所做出的选择足以满足未来需求.显然,在需求发生剧烈变化或用户基础气球变化的某些时候,可能需要更改整个体系结构.但我确实希望能够在某些时候做出这些变化(对于戒指尺寸) – 自然会涉及到一些努力,但是 – 没有它是不可能的.

解决方法

使用基于节点的文件备份很难将群集迁移到不同的环大小(意味着,如果您只备份每个节点上的/ data目录,就像在 Backing Up Riak中建议的那样).因为您已经怀疑,后端数据文件取决于节点和分区到给定环大小的映射.

你应该怎么做?

您必须使用以下两个工具之一来使用整个群集的“逻辑”备份:

> riak-admin backup并恢复(实际上确实可以使用
    不同环尺寸的簇,或
> Riak Data Migrator

使用任何一个基本上都可以将整个集群的内容转储到一个位置(因此,请注意不要耗尽磁盘空间).然后,您可以使用不同的环大小传输和还原到新群集.

需要注意的事项:

>仅对非实时群集进行备份.意思是,要么关闭群集,要么至少确保在进行备份时没有对旧群集进行新的写入.否则,如果您开始备份但仍有新写入,则无法保证它们会将其写入备份数据集.
>在执行备份/还原之前,请务必将app.config和自定义存储桶设置传输到新群集.

希望这会有所帮助.所以,它不是微不足道的(意思是,它需要一段时间,并且需要大量的磁盘空间,但每当你传输大量数据时都是如此),但它也不是非常复杂.

相关文章

文章浏览阅读752次。关系型数据库关系型数据库是一个结构化的...
文章浏览阅读687次,点赞2次,收藏5次。商城系统中,抢购和秒...
文章浏览阅读1.4k次。MongoTemplate开发spring-data-mongodb...
文章浏览阅读887次,点赞10次,收藏19次。1.背景介绍1. 背景...
文章浏览阅读819次。MongoDB连接失败记录_edentialmechanisn...
文章浏览阅读470次。mongodb抽取数据到ES,使用ELK内部插件无...