`
三月沙
  • 浏览: 619982 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mongodb 查询优化技巧一

阅读更多

mongodb天生不支持多表关联查询,所有复杂的查询都交给了app来处理,这样为了减少在mongodb的查询就要在app上下功夫了

 

images = mongo.image.find({'uid':1,'atime':1,'views':1,'rank':1},skip=0,limit=10)

 

这条语句查询图片的元信息,但是我们还需要创建图片的作者的信息

 

为了减少与mongodb的交互,我们先把查询出来的作者保存下来

 

imagelist = []
        user_dic = {}
        #images是个迭代器,for 迭代完成之后,迭代器指针指空,所以要把元素放在list中保存
        for i in images:
            if str(i['uid']) in user_dic.keys():
                pass
            else:
                user = mongo.user.find_one({'_id':i['uid']})
                if user:
                    user_dic[str(i['uid'])]=user

            imagelist.append(i)

 

如上,每次查询图片作者的时候,先在dic里面查找,如果没有找到再去数据库中查询,这样将尽量减少了与数据库的交互

提高了查询效率

分享到:
评论

相关推荐

    MongoDB应用优化与脱坑实践.pdf

    本文档将介绍实例增长趋势图的分析方法和优化技巧,包括业务应用规模的分析、数据量增长预期等。 四、部署架构最佳实践 部署架构是 MongoDB 应用的核心组件,直接影响着 MongoDB 应用的性能和可用性。本文档将介绍...

    MongoDB数据库操作指南与优化技巧

    内容概要:本文档详细介绍了MongoDB的基本概念与核心技术,涵盖了数据模型、MongoDB基础操作(如insert、find、update等)、术语、索引建立以及查询优化等方面的知识点,并涉及到了安全性和性能调优的内容。...

    MongoDB高级查询

    对于开发者来说,掌握 MongoDB 的查询技巧至关重要,尤其是在处理复杂查询需求时。本文将深入探讨 MongoDB 中一些高级查询技术,包括但不限于条件查询操作符以及更复杂的查询模式。 #### 二、条件查询操作符详解 ...

    MongoDB性能优化

    #### 一、查询操作的优化 在MongoDB中,查询操作的优化对于提升系统整体性能至关重要。以下是一些关键的技术点: ##### 1. 创建索引 - **定义**:索引是在数据库表的一个或多个列上创建的数据结构,用于快速定位...

    C#,asp.net操作mongodb实例,新增,修改,查询,分页查询,删除,基类封装,打开直接运行

    MongoDB 是一个流行的开源文档型数据库,以其高性能、高可用性和灵活的数据模型而备受青睐。在C#和ASP.NET环境中,开发人员可以使用...通过学习和实践这个例子,开发者可以快速掌握MongoDB在.NET环境下的使用技巧。

    基于c#的Mongodb帮助类源码 含一个分页效率测试

    总的来说,这个C# MongoDB帮助类源码提供了一种简洁的方式来处理MongoDB数据库操作,同时包含了一个有价值的性能测试,对于理解和优化MongoDB在C#环境中的分页策略非常有帮助。通过深入学习和实践,你可以更好地掌握...

    收集的Mongodb资料

    4. MongoDB性能监控和调优:提供更专业的性能优化技巧,如监控工具和性能测试方法。 5. 大规模部署策略:针对大规模数据和高并发场景的解决方案,如Sharding策略的优化。 6. 新增功能:介绍自第1版以来MongoDB新增的...

    MongoDB高级查询.doc

    MongoDB 是一种流行的开源文档数据库系统,以其灵活性、高性能和...掌握这些查询技巧,能够帮助我们更有效地管理和查询MongoDB中的数据。在实际应用中,结合合理的索引策略,可以进一步提升查询性能,优化数据库操作。

    mongodb 3.4 手册

    综上所述,MongoDB 3.4手册是一份全面、权威的文档,从安装MongoDB开始,到基础操作、CRUD、性能优化、聚合操作、Map-Reduce处理以及文本搜索等功能,为开发者提供了详尽的指导。无论是数据库管理员还是应用程序...

    SpringMVC+mongodb应用实例

    1. **索引优化**:MongoDB支持创建索引来加速查询,但需要合理设计和管理,避免过度索引导致的存储空间浪费。 2. **分片和复制集**:对于大规模数据,可以使用分片来分布负载,复制集则提供了高可用性和故障恢复。 3...

    C#\MongoDB应用开发实战\MongoDB

    最后,我们将探讨性能优化技巧,如索引创建、批量操作和命令监控。理解如何正确设计和使用索引可以显著提升查询性能,而批量操作可以减少网络开销。通过监控MongoDB的命令执行,我们可以识别性能瓶颈并进行调优。 ...

    MongoDB Cookbook

    这本书通过一系列实用的示例和技巧,详细讲解了MongoDB的核心概念和技术。 首先,书中的章节会介绍MongoDB的基础知识,包括安装和配置MongoDB服务器、启动和停止数据库服务。这部分内容涵盖了MongoDB的环境设置,...

    tp6+mongodb.zip

    例如,可以创建一个`Model`的子类,重写`where`、`select`等方法,使其支持MongoDB的查询语法规则。 描述中的"修改tp6 原有的mongo 包存在的问题",可能指的是TP6的MongoDB适配器存在一些已知的问题或限制。这些...

    Mongodb视频-燕十八 mongodb视频教程全集21讲+mongodb高级实战开发视频教程

    **第1讲:MongoDB介绍与安装** - MongoDB的历史背景和发展现状。 - MongoDB的特点及其与其他数据库系统的区别。 - 在Windows/Linux/MacOS上安装MongoDB的方法。 - 启动与停止MongoDB服务的基本命令。 **第2讲:...

    Mongodb 视频

    MongoDB是一种流行的开源、分布式文档型数据库,属于NoSQL数据库的一种。它以其灵活性、高性能、易扩展性以及对大规模数据处理的良好支持而受到广大开发者喜爱。在这个“MongoDB视频”学习资源中,你将能够从基础到...

    MongoDB权威指南:MongoDB:The Definitive Guide

    《MongoDB权威指南》是学习和掌握MongoDB的重要参考资料,该书涵盖了MongoDB的基础知识到高级应用,包括安装配置、数据模型设计、查询优化、复制与分片等关键主题。 首先,书中会详细介绍MongoDB的安装和配置过程,...

    MongoDB3.6.5免安装版

    MongoDB是一款开源、分布式、文档型数据库系统,广泛应用于现代应用程序开发中,尤其在处理大量半结构化数据时表现出色。MongoDB3.6.5是该系统的特定版本,提供了许多增强的功能和优化,旨在提高性能、可靠性和用户...

    mongodb-docs-2011-01-29_mongodb最新用户手册

    - **Searching and Retrieving**:这一部分深入探讨了 MongoDB 中的数据查询机制。它不仅介绍了基本的查询语法,还涉及更高级的查询技巧,如聚合框架的使用。 - **Locking**:锁机制对于并发控制至关重要。这里讨论...

Global site tag (gtag.js) - Google Analytics