在 Springboot 中从 Cosmos DB 检索海量数据的最佳方法

问题描述 投票:0回答:0

我正在开发一个 Springboot 后端应用程序,它需要从两个不同的 Cosmos 数据库容器并行检索数十万条记录?查询很简单,并且只有一个过滤器。目前,完成两次检索需要近10分钟。从代码/架构的角度来看,完成这项工作的最佳方法是什么?请阐明这一点。


        List<Employee> employeeslist = new ArrayList<>();
        CosmosQueryRequestOptions queryOptions = new CosmosQueryRequestOptions();
        queryOptions.setMaxBufferedItemCount(100);
        queryOptions.setMaxDegreeOfParallelism(1000);
        try {
            CosmosPagedIterable<Employee> rules = cosmosContainer.queryItems(
                    "SELECT * FROM c WHERE c.status='Active'", queryOptions,
                    ProfileDataModel.class);

            employeeslist = rules.stream().collect(Collectors.toList());

        } catch (Exception e) {
            e.printStackTrace();
        }
java spring-boot nosql azure-cosmosdb
© www.soinside.com 2019 - 2024. All rights reserved.