首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Python web框架中使用Cassandra CQL3

在Python web框架中使用Cassandra CQL3
EN

Stack Overflow用户
提问于 2014-02-23 00:32:48
回答 2查看 1.5K关注 0票数 2

我正在尝试使用Django构建一个电影web应用程序。我决定使用Cassandra作为后端。在研究了cassandra很长一段时间后,我发现Thrift API现在是遗留的,社区鼓励使用cql 3.0,但是在Django中,我不知道有任何对CQL的支持。据我所知有:https://github.com/vaterlaus/django_cassandra_backend https://github.com/pycassa/pycassa

但两者都遵循Thrift API。而且,我找不到很多像MongoDB这样的Cassandra和Django集成的例子。经过相当多的研究并看到CQL 3.0的强大功能后,我决定使用Cassandra,我不想放弃我的数据库选择。相反,我愿意在Python中寻找其他的web框架,比如Pylons,Flask等等,所以有什么建议吗?因为我以前使用过Django,所以我想继续使用它,但是Django的主要优点是关系数据库的Django ORM在这里不适用。有没有办法将MySQL和Cassandra与Django集成起来使其正常工作?此外,除了Twissandra示例之外,还有没有使用Django设置Cassandra的教程?

除了观察茨桑德拉的settings.py外,它还说:

代码语言:javascript
运行
复制
DATABASE_ENGINE = 'sqlite3'         
DATABASE_NAME = 'dev.db' 

链接:https://github.com/twissandra/twissandra/blob/master/settings.py

如果它在Cassandra上工作,为什么它指定sqlite3?我是不是错过了某种集成?

EN

回答 2

Stack Overflow用户

发布于 2014-10-17 23:23:04

既然你正在寻找一个对象映射器,我建议你看看cqlengine。(免责声明:这是我的项目:))它已经开发了两年多,并被相当多的大公司使用。

http://cqlengine.readthedocs.org/en/latest/

至于在Django中使用它,请参阅https://pypi.python.org/pypi/django-cassandra-engine/

票数 2
EN

Stack Overflow用户

发布于 2014-02-26 07:10:25

这里有两个主题。

关于更好的cassandra驱动程序

https://github.com/datastax/python-driver,它使用CQL,它简单而强大。

关于Django / Cassandra

好吧,这里没有简单的解决方案。有一个django-nonrel项目,但它的重点是Mongo和GAE。

我建议您使用RDMS (MySQL/PostgreSQL)来处理大部分内容,并且只在必要时使用cassandra。

是的,你也可以使用其他的webframework,比如tornado,但是当你习惯了它的时候,处理像会话,身份验证,表单这样的事情是很痛苦的。

Twissandra使用sqlite3只是因为django需要使用数据库才能工作。所以根本没有django/cassandra集成。

这超出了你的问题的范围:如果你想做一个电影web应用,你可能不需要cassandra的核心数据。你可能只需要它做一些事情,比如评级,统计,也许是存储。对于核心数据,标准的RDMS可能要好得多。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21957069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档