【发布时间】:2019-06-02 23:31:53
【问题描述】:
我可以确定我的数据不会因为某种原因被删除,使用内存存储 (Redis) 是否安全,还是应该将数据复制到云数据存储?
当我增加内存容量时,我的所有数据都是安全的吗?
【问题讨论】:
标签: google-cloud-platform google-cloud-memorystore
我可以确定我的数据不会因为某种原因被删除,使用内存存储 (Redis) 是否安全,还是应该将数据复制到云数据存储?
当我增加内存容量时,我的所有数据都是安全的吗?
【问题讨论】:
标签: google-cloud-platform google-cloud-memorystore
关于标准层实例的注意事项,双重故障可能会导致实例完全刷新。我们正在努力实现持久性,并且还将提供将数据导入和导出到 Memorystore 实例的功能。
导入\导出功能预计在第二季度初推出。
此处概述了缩放行为。 https://cloud.google.com/memorystore/docs/redis/scaling-behavior
产品经理 云记忆库
【讨论】:
Memorystore 中可能导致数据丢失(即由于某种原因导致内存刷新)的事件,大多只影响 Memorystore“基本”实例。
Memorystore 有两个实例层:Basic and Standard。
基本层实例受以下事件影响,这将导致缓存完全刷新:
但是,标准实例层具有High Availability configuration,其中包括异步复制数据的故障转移。 在标准实例中,如果发生上述任何事件,副本将被提升为主实例,内存将不受影响。但是,唯一可能丢失的数据是在故障转移期间未传播到副本的写入(由于复制的异步性质)。尽管如此,故障转移过程通常很短,大约需要 30 秒才能完成。
同样,您可以在它们达到最大内存容量时configure the behaviour of the instances,并在配置它们时使用maxmemory-policy=noeviction 标志,以避免在发生此事件时实例丢弃内存。 See the official Redis documentation for more details.
您提到将数据复制到 Cloud Storage,但目前无法将数据复制到 Memorystore 之外。
关于您的第二个问题,正如我上面提到的,在标准层实例中,更改实例容量时不会丢失任何数据。
简而言之:如果您想要最大可能的数据和实例正常运行时间可靠性,并避免不便的内存刷新,Memorystore 在使用标准层实例时提供了它。
【讨论】: