在cassandra上存储二进制数据就像MYSQL BLOB二进制一样

时间:2010-10-12 03:41:44

标签: database nosql cassandra

我们可以将二进制数据存储到apache cassandra吗?

我正考虑将图像存储到apache cassandra

2 个答案:

答案 0 :(得分:5)

“Cassandra的公共API基于Thrift,它不提供流媒体功能 - 任何写入或提取的值都必须适合内存。这是Thrift设计所固有的,因此不太可能改变。因此为Cassandra添加大对象支持需要一个特殊的API来手动将大对象拆分成碎片。http://issues.apache.org/jira/browse/CASSANDRA-265中描述了一种潜在的方法。在此期间,您可以手动将文件拆分成任何您认为合适的大小的块 - 至少有一个人正在使用64MB - 并且使一个文件对应一行,并将这些块作为列值。“

来自:CassandraLimitations

答案 1 :(得分:3)

它取决于大小,cassandra不适合大型二进制对象,它可以存储最多2gb,每列分裂成1 mb。你可以将文件存储在文件系统(或cdn for web)中并存储链接,也可以预览cassandra,或者你可以查看mongodb + gridfs。