如何提供存储在 cassandra 数据库中的图像? [关闭]
Posted
技术标签:
【中文标题】如何提供存储在 cassandra 数据库中的图像? [关闭]【英文标题】:How to serve images stored in a cassandra database? [closed] 【发布时间】:2012-09-02 12:12:43 【问题描述】:对于 django 项目,我计划将 jpeg 存储到 cassandra 数据库中。 为网站提供图片的最佳方式是什么? 我已经计划构建自己的 wsgi 模块,但有没有更好的方法:是否存在 nginx 或 apache 模块?
【问题讨论】:
【参考方案1】:我们使用带有缓存层(磁盘和内存,例如Varnish)的 php 从 Cassandra 提供小文件(
【讨论】:
【参考方案2】:Astyanax 支持文件流进出 cassandra。
【讨论】:
【参考方案3】:你可以使用openresty和我开发的Lua CQL client。
用法是这样的:
cassandra = require("cassandra")
local session = cassandra.new()
session:set_timeout(1000)
assert(session:connect("127.0.0.1", 9042))
assert(session:set_keyspace("images"))
local rows, err = session:execute("SELECT * from chunks where chunk_id = ?", chunk)
if not rows or #rows == 0 then
return ngx.exit(ngx.HTTP_NOT_FOUND)
end
local data = rows[1].data
ngx.header.content_type = "image/jpeg"
ngx.header.content_length = #data
ngx.print(data)
【讨论】:
以上是关于如何提供存储在 cassandra 数据库中的图像? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Spark 结构化流中的 Cassandra 等外部存储读取 Kafka 和查询?
如何使用 Cassandra 存储后端删除 Titan 中的图形?