在内存键/值存储使用整数键(而不是string哈希)

我有大量的integer => string值,我想存储在一个较小的服务器上的RAM。 但是,似乎像membase和redis这样的数据存储散列密钥,导致存储的密钥比整数要大得多。 (我假设他们这样做,因为他们假设键将包含string,需要设置为缩放到多个节点)。

有没有使用整数密钥的关键存储,所以我可以将几百万个对象塞进几兆字节的内存中? 如果可能的话,我也希望每隔一段时间刷新一次磁盘。

所使用的内存量将更多地依赖于string值的大小,因为即使将32位整数存储为string,也可能最多需要10个字节。 当然,这是存储的2.5倍,但在这种情况下你的价值有多小?

我倾向于认为你在错误的层面上进行优化; 硬件是便宜的,在一个问题上抛出更多的RAM可能比试图find一个非常非常专业化的数据存储更有成本效益(很可能,通过“find”我的意思是“编写并维护它自己“)。