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

相关文章

1. memcached内部不会监视记录是否过期,而是在get时查看记录的时间戳,检查记录是否过期。 这种技术被...
add方法添加时,如果存在返回falseset方法添加时,如果存在就是覆盖,不存就是添加 1. set方法会在设置时,...
相信还是有很多项目使用memcache,可能有些人说有点out了,但是呢??? 项目上的东西不是你想换就能换...
在前边的tomcat session server msm的那篇博客我们用memcached做tomcat session服务器,默认官方memcac...
在线聊天室(onlinechatrooms)是一个共多人进行沟通交流的网络平台,随着越来越多的新技术的发明和成熟...
1.通过yum安装 复制代码代码如下:yum-yinstallmemcached#安装完成后执行:memcached-h#出现memcached帮助...