我一直对 Redis 里存储的数据没有安全感,所以一直都把 Redis 的部分设计成可以随时清空,配合项目中的恢复机制把被清除的数据恢复到 Redis 中
你们会拿 Redis 当可靠的存储空间用吗?默认 Redis 中的数据是不会丢失的,就像其他的磁盘数据库一样
1
tcfenix 2021-08-03 17:17:45 +08:00
现在云服务商基本都有"云 redis"类似名字的东西, 这些东西本质是支持 redis 协议, 支持冷热备, 冷数据下沉, 热数据刷到内存, 保证数据持久化安全的一整套东西
不知道你现在用的是什么部署方案, 不过如果你选择相信这一类 redis 的话, 你的代码逻辑能简单不少的.... |
2
RRRoger 2021-08-03 17:24:40 +08:00
既想快,又想做持久化。。。。规避风险,还是用 mongdb 吧
|
3
mlxy123123 OP @tcfenix 我问这个问题确实是因为受到了主贴想法的困扰,在想如果相信 Redis,很多事情就可以做得很简单
|
4
liprais 2021-08-03 17:47:28 +08:00 2
没有 wal log 的 data store 都是确定不能保证数据安全的
|
5
libook 2021-08-03 17:58:03 +08:00
Redis 支持持久化,RDB 和 AOF 两种模式,一般来说 AOF 可靠一些,但即便如此,仍会有极短的时间内的数据是未持久化的,看你具体项目对丢失数据的容忍程度。
另外貌似 Intel 的傲腾貌似有 Redis 的相关方案。 其实也要看你对 Redis 的需求是什么,如果是要高速读但对写速度要求不高的话,你原有方案就可以;如果对高速写有需求的话,可能就只能堆 IO 写速率了。 Redis 还支持集群,一台机器挂了还有其他机器可以正常使用,分布式一致性策略也可以保证数据不丢失。 |
6
thet 2021-08-03 18:10:28 +08:00 via iPhone
配置好 aof,最多 1-2 秒数据未持久化
|
7
Jooooooooo 2021-08-03 18:38:04 +08:00
最好是只把 redis 当缓存用.
|
8
newmlp 2021-08-03 19:04:11 +08:00
最好当缓存用,缓存本来就是可丢失的
|
9
RichardYyf 2021-08-03 21:08:31 +08:00 1
你需要的应该是那种基于 rocksDB 改造兼容 redis 协议的 k-v 存储吧,像各大云厂商都有自己类似的产品,比如阿里云的 tair,华为云的 gauss db,开源的也有,美图的 kvrocks,360 的 pika
|
10
clickhouse 2021-08-03 21:44:37 +08:00
同 #5,redis 本身就支持持久化存储数据到硬盘,也可以选择采用主从的方式进行灾备。不过还是推荐只用 redis 做缓存。
|
11
MOONLIGHTT 2021-08-03 23:56:52 +08:00
@RichardYyf KV 数据库是 KV 数据库,缓存是缓存,redis 在设计相关结构的时候完全没有考虑磁盘读写效率的问题,而 rocksdb 或者 innodb 则在设计之初就需要考虑磁盘的性能。
|
12
ecnelises 2021-08-04 00:01:59 +08:00
真有人这样干
|
13
wenzichel 2021-08-04 00:09:46 +08:00
redis 可以做持久化存储这件事儿,但最好别这样做。
|
14
lscho 2021-08-04 00:37:27 +08:00
你的想法是对的,redis 的数据本来就是不可靠的,当作缓存用就行。
在开发中,默认都是 redis 数据会丢失的。开发的时候要考虑这种情况。 |
15
akira 2021-08-04 01:04:43 +08:00
可以是可以,但是有句话,你能搞得定的才是可以
|
16
jswh 2021-08-04 06:11:20 +08:00
|
17
kuangwinnie 2021-08-04 07:50:49 +08:00
我之前在某大公司实习的时候,用的就是 redis cluster 来当 ram 存储的,没做持久化。
|
18
yidinghe 2021-08-04 08:05:06 +08:00 via Android
虽然 Redis 有持久化机制,但用来存储大量数据时内存消耗很大。所以想要有个省内存的 kV 数据库的话,ssdb 不错。
|
19
opengps 2021-08-04 08:09:15 +08:00
redis 已经具备了持久化支持能力,所以也不是不可以
将缓存设计成随时可以丢失重建的思路并没有什么不妥 |
20
wzw 2021-08-04 09:34:44 +08:00 via iPhone
Pika 数据库呀,360 出品
|
21
ch2 2021-08-04 10:38:38 +08:00
aof+定期备份 aof 文件就是了
你不放心就自己另开一个 redis 然后用你备份的 aof 初始化它,看看数据能不能恢复出来 试过就知道是很可靠的 |