From d5ae999d14263b151c1291b3fb247fea57a501df Mon Sep 17 00:00:00 2001 From: awildturtok <1553491+awildturtok@users.noreply.github.com> Date: Tue, 3 Sep 2024 13:20:10 +0200 Subject: [PATCH] deletes problematic Aggregator --- .../specific/MultiSelectAggregator.java | 80 ------------------- .../specific/SelectAggregator.java | 60 -------------- .../SIMPLE_VIRTUAL_CONCEPT_Query.test.json | 69 ---------------- .../MULTI_SELECT_AGGREGATOR/content.csv | 10 --- .../MULTI_SELECT_AGGREGATOR/expected.csv | 7 -- .../SIMPLE_VIRTUAL_CONCEPT_Query.test.json | 66 --------------- .../aggregator/SELECT_AGGREGATOR/content.csv | 6 -- .../aggregator/SELECT_AGGREGATOR/expected.csv | 5 -- 8 files changed, 303 deletions(-) delete mode 100644 backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/MultiSelectAggregator.java delete mode 100644 backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/SelectAggregator.java delete mode 100644 backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json delete mode 100644 backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/content.csv delete mode 100644 backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/expected.csv delete mode 100644 backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json delete mode 100644 backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/content.csv delete mode 100644 backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/expected.csv diff --git a/backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/MultiSelectAggregator.java b/backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/MultiSelectAggregator.java deleted file mode 100644 index f428a0167c..0000000000 --- a/backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/MultiSelectAggregator.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.bakdata.conquery.models.query.queryplan.aggregators.specific; - -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; -import java.util.Objects; - -import com.bakdata.conquery.models.datasets.Column; -import com.bakdata.conquery.models.events.Bucket; -import com.bakdata.conquery.models.query.QueryExecutionContext; -import com.bakdata.conquery.models.query.entity.Entity; -import com.bakdata.conquery.models.query.queryplan.aggregators.SingleColumnAggregator; -import lombok.ToString; - -/** - * Aggregator counting the occurrence of multiple values. - */ -@ToString(callSuper = true, of = "selection") -public class MultiSelectAggregator extends SingleColumnAggregator> { - - private final String[] selection; - private final int[] hits; - - public MultiSelectAggregator(Column column, String[] selection) { - super(column); - this.selection = selection; - this.hits = new int[selection.length]; - } - - @Override - public void init(Entity entity, QueryExecutionContext context) { - Arrays.fill(hits, 0); - } - - @Override - public void nextBlock(Bucket bucket) { - } - - @Override - public void consumeEvent(Bucket bucket, int event) { - if (!bucket.has(event, getColumn())) { - return; - } - - String stringToken = bucket.getString(event, getColumn()); - - for (int index = 0; index < selection.length; index++) { - if (Objects.equals(selection[index], stringToken)) { - hits[index]++; - return; - } - } - } - - @Override - public Map createAggregationResult() { - Map out = new HashMap<>(); - - for (int i = 0; i < hits.length; i++) { - int hit = hits[i]; - if (hit > 0) { - out.merge(selection[i], hit, Integer::sum); - } - } - - return out.isEmpty() ? null : out; - } - - @Override - public boolean isOfInterest(Bucket bucket) { -//TODO - // for (String selected : selection) { -// if (((StringStore) bucket.getStores()[getColumn().getPosition()]).getId(selected) == -1) { -// return false; -// } -// } - - return super.isOfInterest(bucket); - } -} diff --git a/backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/SelectAggregator.java b/backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/SelectAggregator.java deleted file mode 100644 index d654d03ad2..0000000000 --- a/backend/src/main/java/com/bakdata/conquery/models/query/queryplan/aggregators/specific/SelectAggregator.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.bakdata.conquery.models.query.queryplan.aggregators.specific; - -import java.util.Objects; - -import com.bakdata.conquery.models.datasets.Column; -import com.bakdata.conquery.models.events.Bucket; -import com.bakdata.conquery.models.query.QueryExecutionContext; -import com.bakdata.conquery.models.query.entity.Entity; -import com.bakdata.conquery.models.query.queryplan.aggregators.SingleColumnAggregator; -import lombok.ToString; - - -/** - * Aggregator counting the number of occurrences of a selected value in a column. - */ -@ToString(callSuper = true, of = {"selected"}) -public class SelectAggregator extends SingleColumnAggregator { - - private final String selected; - private long hits = 0; - - public SelectAggregator(Column column, String selected) { - super(column); - this.selected = selected; - } - - @Override - public void init(Entity entity, QueryExecutionContext context) { - hits = 0; - } - - @Override - public void nextBlock(Bucket bucket) { - } - - @Override - public void consumeEvent(Bucket bucket, int event) { - - if (!bucket.has(event, getColumn())) { - return; - } - - final String value = bucket.getString(event, getColumn()); - - if (Objects.equals(value, selected)) { - hits++; - } - } - - @Override - public Long createAggregationResult() { - return hits > 0 ? hits : null; - } - - @Override - public boolean isOfInterest(Bucket bucket) { - return super.isOfInterest(bucket); - //TODO && ((StringStore) bucket.getStores()[getColumn().getPosition()]).getId(selected) != -1; - } -} diff --git a/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json b/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json deleted file mode 100644 index 8c624cf0e2..0000000000 --- a/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "type": "QUERY_TEST", - "label": "MULTI_SELECT_AGGREGATOR Test", - "expectedCsv": "tests/aggregator/MULTI_SELECT_AGGREGATOR/expected.csv", - "query": { - "type": "CONCEPT_QUERY", - "root": { - "ids": [ - "concept" - ], - "type": "CONCEPT", - "tables": [ - { - "id": "concept.connector", - "selects": [ - "concept.connector.select" - ] - } - ] - } - }, - "concepts": [ - { - "name": "concept", - "type": "TREE", - "connectors": [ - { - "label": "connector", - "table": "table", - "validityDates": { - "label": "datum", - "column": "table.datum" - }, - "selects": { - "type": "COUNT_OCCURENCES", - "name" : "select", - "column": "table.value", - "selection": [ - "f", - "m" - ] - } - } - ] - } - ], - "content": { - "tables": [ - { - "csv": "tests/aggregator/MULTI_SELECT_AGGREGATOR/content.csv", - "name": "table", - "primaryColumn": { - "name": "pid", - "type": "STRING" - }, - "columns": [ - { - "name": "datum", - "type": "DATE" - }, - { - "name": "value", - "type": "STRING" - } - ] - } - ] - } -} diff --git a/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/content.csv b/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/content.csv deleted file mode 100644 index 5358e7b61a..0000000000 --- a/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/content.csv +++ /dev/null @@ -1,10 +0,0 @@ -pid,datum,value -1,2012-01-01,"f" -1,2012-01-02,"f" -2,2010-07-15, -3,2013-11-10,"f" -4,2012-11-11,"m" -5,2012-11-11,"x" -5,2012-11-11,"f" -6,2012-11-11,"m" -6,2012-11-11,"f" diff --git a/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/expected.csv b/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/expected.csv deleted file mode 100644 index 15ec609372..0000000000 --- a/backend/src/test/resources/tests/aggregator/MULTI_SELECT_AGGREGATOR/expected.csv +++ /dev/null @@ -1,7 +0,0 @@ -result,dates,concept select -2,{2010-07-15/2010-07-15}, -3,{2013-11-10/2013-11-10},{f=1} -6,{2012-11-11/2012-11-11},"{f=1, m=1}" -1,{2012-01-01/2012-01-02},{f=2} -4,{2012-11-11/2012-11-11},{m=1} -5,{2012-11-11/2012-11-11},{f=1} \ No newline at end of file diff --git a/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json b/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json deleted file mode 100644 index 59a83c0f6e..0000000000 --- a/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/SIMPLE_VIRTUAL_CONCEPT_Query.test.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "type": "QUERY_TEST", - "label": "SELECT_AGGREGATOR Test", - "expectedCsv": "tests/aggregator/SELECT_AGGREGATOR/expected.csv", - "query": { - "type": "CONCEPT_QUERY", - "root": { - "ids": [ - "concept" - ], - "type": "CONCEPT", - "tables": [ - { - "id": "concept.connector", - "selects": [ - "concept.connector.select" - ] - } - ] - } - }, - "concepts": [ - { - "name": "concept", - "type": "TREE", - "connectors": [ - { - "label": "connector", - "table": "table", - "validityDates": { - "label": "datum", - "column": "table.datum" - }, - "selects": { - "type": "COUNT_OCCURENCES", - "name": "select", - "column": "table.value", - "selection": "f" - } - } - ] - } - ], - "content": { - "tables": [ - { - "csv": "tests/aggregator/SELECT_AGGREGATOR/content.csv", - "name": "table", - "primaryColumn": { - "name": "pid", - "type": "STRING" - }, - "columns": [ - { - "name": "datum", - "type": "DATE" - }, - { - "name": "value", - "type": "STRING" - } - ] - } - ] - } -} diff --git a/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/content.csv b/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/content.csv deleted file mode 100644 index cadb60f0f0..0000000000 --- a/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/content.csv +++ /dev/null @@ -1,6 +0,0 @@ -pid,datum,value -1,2012-01-01,"f" -1,2012-01-02,"f" -2,2010-07-15, -3,2013-11-10,"f" -4,2012-11-11,"m" diff --git a/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/expected.csv b/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/expected.csv deleted file mode 100644 index f01e356de2..0000000000 --- a/backend/src/test/resources/tests/aggregator/SELECT_AGGREGATOR/expected.csv +++ /dev/null @@ -1,5 +0,0 @@ -result,dates,concept select -1,{2012-01-01/2012-01-02},2 -2,{2010-07-15/2010-07-15}, -3,{2013-11-10/2013-11-10},1 -4,{2012-11-11/2012-11-11}, \ No newline at end of file