是否存在适用于存储大量(即> 10亿)“中等”斑点(即20KB至2MB)的Nosql(或其他类型)数据库.我需要的是从A(标识符)到B(blob)的映射,给定A的“B”检索能力,用于访问的一致外部API,以及“只需添加另一台计算机”来扩展系统的能力.
比数据库更简单的东西,例如一个分布式的键值系统,可能就好了,我也很欣赏这方面的任何想法.
谢谢你的阅读.
布赖恩
解决方法
如果你的API要求纯粹是“Get(key),Put(key,blob),Remove(key)”那么一个键值存储(或者更确切地说是“持久性分布式哈希表”)正是你的意思正在找.
有很多这些可用,但没有额外的信息,很难提出一个可靠的建议 – 你的目标是什么操作系统?您正在开发哪种语言?您的应用程序的I / O特性是什么(冷/不可变数据,如图像?高写入负载,也就是推文?)
一些值得研究的KV系统:
– MemcacheDB
– Berkeley DB
– Voldemort
您可能还想查看文档存储,例如CouchDB或RavenDB *.文档存储类似于KV存储,但它们理解持久性格式(通常是JSON),因此它们可以提供其他服务,例如索引.
>如果你在.Net中开发,那么直接跳到RavenDB(稍后你会感谢我)