我试图评估一些分布式存储平台,而Cassandra就是其中之一。 我们的要求是根据Cassandra的文档http://docs.datastax.com/en/cql/3.3/cql/cql_reference/blob_r.html保存1MB到50MB大小的文件:
最大理论尺寸 blob是2 GB。然而,blob大小的实际限制小于 1 MB。
有没有人有经验将文件存储在Cassandra中作为blob?运气好吗?对于更大的文件大小,性能是否真的很差?
任何其他建议也将不胜感激!
答案 0 :(得分:0)
Cassandra不是为这类工作而建立的。
在Cassandra中,单个列值大小可以是:2 GB(建议1 MB)。因此,如果要使用cassandra作为对象存储,请将大对象拆分为多个小对象,并将对象id作为分区键存储,将存储桶ID作为聚类键存储。
最好使用分布式对象存储系统,如OpenStack Object Storage ("Swift")
OpenStack Object Store项目(称为Swift)提供云存储软件,以便您可以使用简单的API存储和检索大量数据。它是为扩展而构建的,并针对整个数据集的持久性,可用性和并发性进行了优化。 Swift非常适合存储可以无限制地增长的非结构化数据。