Python中nosql和django有什么场景可以结合使用?

想学一下 nosql 的使用,有什么是可以结合 django 去用 nosql 的,求大神们解答
Python中nosql和django有什么场景可以结合使用?

14 回复

主要是看 nosql 得场景吧


在Django项目中结合NoSQL数据库主要适用于以下场景:

  1. 非结构化数据存储:当你的数据模型字段变化频繁或结构不固定时,比如用户生成内容、日志数据、社交媒体的动态信息。MongoDB的文档模型比关系型数据库更灵活。

  2. 高性能读写场景:需要处理大量并发读写操作时,比如实时分析、点击流数据收集。Redis作为内存数据库可以提供极高的吞吐量。

  3. 缓存和会话存储:使用Redis存储用户会话、频繁访问的查询结果,能显著提升Django应用性能。

  4. 全文搜索和地理空间查询:Elasticsearch或MongoDB的地理空间索引适合位置服务、商品搜索等需求。

具体实现时,可以通过Django的django-nonrel扩展或直接使用对应的Python驱动(如pymongoredis-py)来操作NoSQL数据库。对于混合使用的情况,通常将核心业务数据放在PostgreSQL/MySQL,而将特定功能的数据放在NoSQL中。

建议:根据具体数据特性和访问模式选择合适的存储方案。

你不需要 acid 的时候就可以用啊

不建议。django 官方不支持 nosql
第三方的 Django non-rel 兼容性不好也不活跃。

在你的数据模型适合 nosql 的时候

acid 是指?

我觉得是否先估量,再看要不要上会不会好点。
Premature is evil

什么情况下都可以呀,简单点,你做个在线人数统计

比如投票

数据走 redis

mongoengine 就很好用

有一个万能的需求。。。。博客

比如 session?

django 确实不太适合 nosql。官方不支持、nosql 到现在都没有形成规范。

django 最厉害的就是 models 了,各种 migrate 特别简单。
其他的也都谈不上优点,要放弃 django 的优点不如选择其他框架,比如 flask、tornado 什么的,sanic 也很不错

回到顶部