在Redis中存储数组数组

时间:2013-11-29 11:43:44

标签: php mysql arrays redis memcached

我有一个庞大的数据库,复杂的关系,并希望缓存一些索引和字符串,以便更快地访问它们,所以我想将它们存储在某种缓存中,以最大限度地减少访问数据库以获取信息。 / p>

我搜索并发现Memcached和Redis可以适合我的目的。经过更多的研究,我发现Memcache在存储它的“价值”(Key - > Value)方面存在局限性。

在Redis中,是否可以在“值”(键 - >值)中存储多维数组(数组数组的数组)。最多可以是20MB或30MB的数据。

如果是,那不会降低性能吗?

2 个答案:

答案 0 :(得分:3)

如果我没弄错,Redis字符串值的限制为512MB。

<强> http://redis.io/topics/data-types

字符串

  

String值的长度最大为512 MB。

列表

  

列表的最大长度为232 - 1个元素(4294967295,每个列表超过40亿个元素)。

  

一组中的最大成员数为232 - 1(4294967295,每组成员超过40亿)。

哈希

  

每个哈希可以存储多达232个1个字段 - 值对(超过40亿)。

答案 1 :(得分:0)

您应该考虑将mongoDB用于您的用例。它将启用索引和查询复杂的嵌套结构,并且也会很快。