From 9c3c31e67f1f3d285bee741bd402a0de2cff0561 Mon Sep 17 00:00:00 2001 From: Mirco Nasuti <mirco.nasuti@chuv.ch> Date: Wed, 14 Sep 2016 17:04:01 +0200 Subject: [PATCH] only send a sample of the original data to the frontend (200 points) --- .../java/eu/hbp/mip/controllers/ModelsApi.java | 2 +- src/main/java/eu/hbp/mip/utils/DataUtil.java | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/eu/hbp/mip/controllers/ModelsApi.java b/src/main/java/eu/hbp/mip/controllers/ModelsApi.java index 732ae2dfd..af318afa5 100644 --- a/src/main/java/eu/hbp/mip/controllers/ModelsApi.java +++ b/src/main/java/eu/hbp/mip/controllers/ModelsApi.java @@ -276,7 +276,7 @@ public class ModelsApi { datasetRepository.save(model.getDataset()); modelRepository.save(model); - LOGGER.info("Model updated (also saved/updated model.config, model.query and model.dataset)"); + LOGGER.info("Model updated (also saved/updated model.config and model.query)"); return new ResponseEntity<>(HttpStatus.NO_CONTENT); } diff --git a/src/main/java/eu/hbp/mip/utils/DataUtil.java b/src/main/java/eu/hbp/mip/utils/DataUtil.java index 468f008d2..29e17d6f4 100644 --- a/src/main/java/eu/hbp/mip/utils/DataUtil.java +++ b/src/main/java/eu/hbp/mip/utils/DataUtil.java @@ -13,6 +13,8 @@ import java.util.Map; public class DataUtil { + private static final int NB_ROWS_SAMPLING = 200; + private JdbcTemplate jdbcTemplate; public DataUtil(JdbcTemplate jdbcTemplate) @@ -26,7 +28,10 @@ public class DataUtil { for (String var : vars) { JsonArray currentVarData = new JsonArray(); - List<Map<String, Object>> queryResult = jdbcTemplate.queryForList("SELECT " + var + " FROM science.adni_merge"); + int samplingPercentage = (int) countAdniRows()/NB_ROWS_SAMPLING; + List<Map<String, Object>> queryResult = jdbcTemplate.queryForList( + "SELECT " + var + " FROM science.adni_merge " + + "TABLESAMPLE SYSTEM ("+ samplingPercentage +") REPEATABLE ( 42 )"); for (Map resultMap : queryResult) { String strValue = String.valueOf(resultMap.get(var)); @@ -51,4 +56,11 @@ public class DataUtil { return count; } + public long countAdniRows() + { + long count = jdbcTemplate.queryForObject( + "SELECT COUNT(*) FROM science.adni_merge", Long.class); + return count; + } + } -- GitLab