Browse Source

打分oom

master
kami 1 year ago
parent
commit
17e13c2532
  1. 6
      src/main/java/com/biutag/supervisiondata/service/impl/RiskScoreRuleServiceImpl.java

6
src/main/java/com/biutag/supervisiondata/service/impl/RiskScoreRuleServiceImpl.java

@ -57,8 +57,8 @@ public class RiskScoreRuleServiceImpl implements RiskScoreRuleService {
.select(Model::getId, Model::getRiskScoreRuleId)); .select(Model::getId, Model::getRiskScoreRuleId));
Map<Integer, Model> modelMap = models.stream().collect(Collectors.toMap(Model::getRiskScoreRuleId, Function.identity(), (oldValue, newValue) -> newValue)); Map<Integer, Model> modelMap = models.stream().collect(Collectors.toMap(Model::getRiskScoreRuleId, Function.identity(), (oldValue, newValue) -> newValue));
List<List<RiskPersonal>> personals = IntStream.range(0, (riskPersonals.size() + 99999) / 100000) List<List<RiskPersonal>> personals = IntStream.range(0, (riskPersonals.size() + 9999) / 10000)
.mapToObj(i -> riskPersonals.subList(i * 100000, Math.min((i + 1) * 100000, riskPersonals.size()))) .mapToObj(i -> riskPersonals.subList(i * 10000, Math.min((i + 1) * 10000, riskPersonals.size())))
.toList(); .toList();
log.info("本次打分将对{}人进行算分,分{}批进行", riskPersonals.size(), personals); log.info("本次打分将对{}人进行算分,分{}批进行", riskPersonals.size(), personals);
calc(personals, weight, rulesV1, ruleMap, modelMap); calc(personals, weight, rulesV1, ruleMap, modelMap);
@ -83,7 +83,7 @@ public class RiskScoreRuleServiceImpl implements RiskScoreRuleService {
clue.setScoreResult(update.getScoreResult()); clue.setScoreResult(update.getScoreResult());
} }
log.info("第{}批修改得分数量{}条", i, updates.size()); log.info("第{}批修改得分数量{}条", i, updates.size());
riskModelTaskClueRepository.updateBatchById(updates, 100000); riskModelTaskClueRepository.updateBatchById(updates, 10000);
log.info("第{}批开始算分", i); log.info("第{}批开始算分", i);
Map<String, Map<Integer, List<RiskModelTaskClue>>> clueMap = new HashMap<>(); Map<String, Map<Integer, List<RiskModelTaskClue>>> clueMap = new HashMap<>();

Loading…
Cancel
Save