gpt4 book ai didi

backup - riak单桶备份解决方案

转载 作者:行者123 更新时间:2023-12-02 07:17:13 25 4
gpt4 key购买 nike

对于允许将单个 riak 存储桶备份[通过流式传输或快照]到文件的解决方案,您有何建议?

最佳答案

在 Riak 中仅备份单个存储桶将是一项困难的操作。

所有解决方案都归结为以下两个步骤:

  1. 列出存储桶中的所有对象。这是棘手的部分,因为 Riak 集群中的任何位置都没有“ list ”或任何存储桶的内容列表。

  2. 对上面列表中的每个对象发出 GET 请求,并将其写入备份文件。这部分通常很简单,但为了获得最佳性能,您需要确保以多线程方式并行发出这些 GET,并使用某种连接池。

就列出所有对象而言,您可以选择以下三种选择之一。

一种是通过 HTTP(例如 /buckets/bucket/keys?keys=stream)或 Protocol Buffers 在存储桶上执行 Streaming List Keys 操作 - 请参阅 http://docs.basho.com/riak/latest/dev/references/http/list-keys/http://docs.basho.com/riak/latest/dev/references/protocol-buffers/list-keys/了解详情。在任何情况下都不应执行非流式常规列表键操作。 (它会挂起整个集群,一旦键的数量变得足够大,最终就会超时或崩溃)。

二是发出二级索引 (2i) 查询来获取该对象列表。请参阅http://docs.basho.com/riak/latest/dev/using/2i/供讨论和注意事项。

如果您使用 Riak Search 则为三个并且可以通过单个分页搜索查询检索所有对象。 (但是,Riak Search 的查询结果限制为 10,000 个结果,因此,这种方法远非理想)。

有关可以备份单个存储桶的独立应用程序的示例,请查看 Riak Data Migrator ,一个实验性 Java 应用程序,使用流列表键方法与高效的并行 GET 相结合。

关于backup - riak单桶备份解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5458644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com