Nosql 我应该使用redis来存储大量二进制文件吗?
我需要存储大量的二进制文件(10-20 TB,每个文件的大小从512 kb到100 MB不等) 我需要知道Redis对我的系统是否有效。 我的系统中需要以下属性:Nosql 我应该使用redis来存储大量二进制文件吗?,nosql,redis,blob,Nosql,Redis,Blob,我需要存储大量的二进制文件(10-20 TB,每个文件的大小从512 kb到100 MB不等) 我需要知道Redis对我的系统是否有效。 我的系统中需要以下属性: 高可用性 故障转移 碎片 我打算使用一组商品硬件来尽可能降低成本。请建议使用Redis构建这样一个系统的利弊。我还担心Redis的高ram要求。我不会将Redis用于这样的任务。其他产品将更适合IMO Redis是内存中的数据存储。如果要存储10-20 TB的数据,则需要10-20 TB的RAM,这非常昂贵。此外,内存分配器针对小
- 高可用性
- 故障转移
- 碎片
我打算使用一组商品硬件来尽可能降低成本。请建议使用Redis构建这样一个系统的利弊。我还担心Redis的高ram要求。我不会将Redis用于这样的任务。其他产品将更适合IMO Redis是内存中的数据存储。如果要存储10-20 TB的数据,则需要10-20 TB的RAM,这非常昂贵。此外,内存分配器针对小对象而不是大对象进行了优化。你可能不得不把文件切成各种各样的小块,这真的不方便 Redis不为HA和故障切换提供临时解决方案。提供了主/从复制(并且工作得很好),但不支持此故障切换的自动化。客户端必须足够智能,才能切换到正确的服务器。服务器端(但未指定)必须以可靠的方式在主节点和从节点之间切换角色。换句话说,Redis只提供自己动手的HA/故障切换解决方案 切分必须在客户端实现(如memcached)。有些客户支持它,但不是所有客户都支持。最快的客户端(hiredis)不会。无论如何,再平衡之类的事情必须在Redis之上实施。应该支持这种分片功能的Redis集群还没有准备好
我建议使用其他一些解决方案。MongoDB可能是一种可能性。Hadoop with是另一个。如果您喜欢尖端项目,您可能想试一试。hdfs可能无法很好地工作,如果您有数百万个小文件(比如缩略图缓存)快速进入未来-由于版本2.8(2015年发布),Redis确实提供了一个出色的临时HA和自动故障切换解决方案。