【问题标题】:MongoDB -- Query Performance through Java classMongoDB——通过Java类查询性能
【发布时间】:2017-05-01 06:02:18
【问题描述】:

我是 NoSQL 数据库和 MongoDB 领域的新手。

我正在尝试访问 Mongodb 中的查询执行时间。我计划对一组 1000,10000 和 100000 条记录进行 CURD 操作。我还想运行一些其他随机查询。我想通过 java 类执行这些查询。任何人都可以建议我从java类文件中获取响应时间的最佳方法。我了解 mongodb 的数据库探查器是一种好方法,但想通过 java 执行探查器命令。有人可以建议如何从 java 类中为每个查询执行探查器命令。

P.S:如果有更好的方法,请提出建议。任何建议都会有很大帮助。

【问题讨论】:

  • 提高我的 mongodb 性能的一种方法是向集合添加索引。很抱歉没有提及任何关于 java 的内容,但是如果您想从 mongodb 端提高性能,索引是一个很好的启动方式。

标签: mongodb mongodb-query mongodb-java


【解决方案1】:

使用 Mongo Java 客户端,您可以以通常的方式调用 find(),然后附加一个查询修饰符,如下所示:

MongoCollection<...> collection = ...
FindIterable<...> results = collection.find(query).modifiers(new Document(QueryOperators.EXPLAIN, true));

这将为您返回该查询的 Mongo 分析器文档。

关于该文档的格式、内容等的大量详细信息here。

如果您对分析感兴趣,您可能还需要提示(即强制 Mongo 使用特定索引),这以大致相同的方式完成,例如:

MongoCollection<...> collection = ...
FindIterable<...> results = collection.find().modifiers(new Document(QueryOperators.HINT, indexName));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    • 2022-01-04
    • 1970-01-01
    • 2014-05-21
    • 2021-12-15
    • 2020-07-05
    • 1970-01-01
    相关资源
    最近更新 更多