php - 大量的 key => value 值用什么方式存储?

查看:185
本文介绍了php - 大量的 key => value 值用什么方式存储?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

有大量 key=>value 形式的值对,如:xxxx=>aaaaaaa,值一旦建立就不会更改,数量的话后期会达到百万级别,且经常会访问到,并发不高,但要保证数据完整。用什么方案去存比较好?

解决方案

其实把问题再问得完整一点自然就有答案了

  • 被访问的方式,除了经常会访问到,并发不高之外,访问的形式是单key查询还是查多条?数据是否有序?是否有类似搜索key前缀为foo的需求?有列出10个key的需求?有列出全部key的需求?访问是随机key的还是集中在部分热点key值?冷热key值的比例大概怎样?目前并发不高,是否需要考虑后期并发增加以后的方案?

  • 数据完整,是否需要备份?key增加的频率如何?新增加的key是否立刻需要能访问?

  • key和value的长度分别是多少?百万条1K是一条内存条,可百万条1M就是一块磁盘了

一般而言,条件不是特别极端的话,选单redis&备份,单mysql&备份,或是mysql+redis都行,各有长短,看你想要什么和你手里有什么资源来找平衡点了

PS:别忘了mysql还分ssd上的mysql和机械磁盘上的mysql,也是各有优劣的

这篇关于php - 大量的 key => value 值用什么方式存储?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆