python – 一个很好的blobstore / memcache解决方案

Linux云服务器上设置数据仓库挖掘项目.主要语言是Python.

想使用此模式查询数据和存储数据:

> SQL数据库 – SQL数据库用于查询数据.但是,SQL数据库仅存储需要搜索的字段,它不存储数据本身的“blob”.相反,它存储一个键,该键引用键值Blobstore中的完整“blob”数据.
> Blobstore – 键值Blobstore用于存储数据的实际“文档”或“blob”.

我们遇到的问题是我们希望更频繁访问的数据blob自动存储在RAM中.我们计划使用Redis.但是,我们想要一个自动尝试从RAM中获取数据的解决方案,如果它无法在那里找到它,那么它将转到blobstore.

有没有一个好的图书馆或现成的解决方案,我们可以使用而无需自己动手?此外,任何有关拟议架构的评论和批评也将受到赞赏.

非常感谢!

最佳答案
我没有使用Redis或Memcached进行缓存,而是使用“blobstore”软件包将内容存储在磁盘上,我建议您查看Couchbase Server,它可以完全满足您的需求(即从内存中提供热点,但仍将它们存储到磁盘中) ).

在我工作的公司中,我们通常使用您描述的模式(即在关系数据库中建立索引,加上blob存储)来存档服务器(TB级数据).当写入blob的I / O保持顺序时,它运行良好. blob永远不会被重写,而只是附加在文件的末尾(对于归档应用程序来说很好).

其他人也使用了同样的方法.例如:

> Bitcask(用于Riak):http://downloads.basho.com/papers/bitcask-intro.pdf
> Eblob(用于Elliptics项目):http://doc.ioremap.net/eblob:eblob

相关文章

前言设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、...
在192.168.80.100要联网关闭防火墙及SElinuxsystemctlstopfi...
Redis与Memcache对比:1.Memcache是一个分布式的内存对象缓存...
安装Mencache:关闭防火墙及SElinuxsystemctl  stop  fi...
#安装php的yaf模块,参考https://www.cnblogs.com/shifu204/...
win10下安装配置apache、php、mysql、redis、memcache资源官...