我正在开发一个用Cassandra作为后端数据库的Django应用程序。虽然Django支持SQL的ORM功能,但我想知道Cassandra是否有类似的东西 将模式加载到Cassandra服务器并执行CRUD操作的最佳方法是什么 附:我是Cassandra的初学者。
答案 0 :(得分:3)
Cassandra有一个外部后端,但它在身份验证中间件方面存在一些问题,它在管理员中无法正确处理用户。如果你使用非关系数据库,你将失去许多django的好东西。您可以尝试使用Postgres的nosql扩展名来存储您希望以nosql'y方式存储的数据部分,并使用常规的Postgres表格来完成剩下的工作。
答案 1 :(得分:0)
我最初开始时遇到同样的问题,但正如raphonic指出的那样,Postgres得到了Django的很好的支持,Postgres实际上既可以用于关系也可以用作NoSQL数据库,comparable performance to bespoke systems (WARNING: PDF)就像Cassandra,CouchDB,MongoDB等等。
对于那些有兴趣这样做的人,你应该考虑使用带有hstore的postgres(可能使用GIN或GiST进行索引),或者postgres with JSON(如果你讨厌自己,XML也是一个选项)。
最后,除非你做的事情非常适合/需要上面提到的新的和性感的数据库的用例,你几乎可以肯定使用Postgres并且不会失去很多很棒的功能。