羊毛板获取查询需要很多时间

发布于 2025-02-11 02:19:41 字数 851 浏览 2 评论 0原文

我们有MongoDB,我们正在从Spring Boot应用程序中查询数据,我们的现有查询就像是

Query query = new Query();
        List<String> abcIdList = new ArrayList<>();
        List<String> xyzIdList = new ArrayList<>();
        for (Request request : searchRequest
                .getabcxyzIds()) {
            abcIdList.add(request.getAbcId());
            xyzIdList.add(request.getXyzId());
        }
        
        query.addCriteria(
                Criteria.where(ObjectEntity.PRACTICE_ID).is(practiceId).and(ObjectEntity.ABC_ID)
                        .in(abcIdList).and(ObjectEntity.XYZ_ID).in(xyzIdList));
        return executeAndLogPerformance("methodname",
                () -> mongoTemplate.find(query, ObjectEntity.class));

这样的查询需要花费大量时间来获取数据。 我已经测试了2000年的记录,以获取大约17-20秒的时间。

那么,还有其他查询可以简单地进行数据并快速获取数据吗?

We are having Mongodb and we are querying data from spring boot application and our existing query is like

Query query = new Query();
        List<String> abcIdList = new ArrayList<>();
        List<String> xyzIdList = new ArrayList<>();
        for (Request request : searchRequest
                .getabcxyzIds()) {
            abcIdList.add(request.getAbcId());
            xyzIdList.add(request.getXyzId());
        }
        
        query.addCriteria(
                Criteria.where(ObjectEntity.PRACTICE_ID).is(practiceId).and(ObjectEntity.ABC_ID)
                        .in(abcIdList).and(ObjectEntity.XYZ_ID).in(xyzIdList));
        return executeAndLogPerformance("methodname",
                () -> mongoTemplate.find(query, ObjectEntity.class));

So this query is taking to much time to get data.
I have tested it for 2000 records to get fetch it's taking around 17-20 seconds.

So is there any other query to simply it and get data quickly?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文