[improvement][headless]Rename METRIC query type enum to AGGREGATE.

This commit is contained in:
jerryjzhang
2024-09-27 15:19:26 +08:00
parent c34c3ecf09
commit ae3e9f142b
14 changed files with 24 additions and 24 deletions

View File

@@ -29,7 +29,7 @@ public class DimensionRecommendProcessor implements ExecuteResultProcessor {
@Override @Override
public void process(ExecuteContext executeContext, QueryResult queryResult) { public void process(ExecuteContext executeContext, QueryResult queryResult) {
SemanticParseInfo semanticParseInfo = executeContext.getParseInfo(); SemanticParseInfo semanticParseInfo = executeContext.getParseInfo();
if (!QueryType.METRIC.equals(semanticParseInfo.getQueryType()) if (!QueryType.AGGREGATE.equals(semanticParseInfo.getQueryType())
|| CollectionUtils.isEmpty(semanticParseInfo.getMetrics())) { || CollectionUtils.isEmpty(semanticParseInfo.getMetrics())) {
return; return;
} }

View File

@@ -61,7 +61,7 @@ public class MetricRatioProcessor implements ExecuteResultProcessor {
AggregatorConfig aggregatorConfig = ContextUtils.getBean(AggregatorConfig.class); AggregatorConfig aggregatorConfig = ContextUtils.getBean(AggregatorConfig.class);
if (CollectionUtils.isEmpty(semanticParseInfo.getMetrics()) if (CollectionUtils.isEmpty(semanticParseInfo.getMetrics())
|| !aggregatorConfig.getEnableRatio() || !aggregatorConfig.getEnableRatio()
|| !QueryType.METRIC.equals(semanticParseInfo.getQueryType())) { || !QueryType.AGGREGATE.equals(semanticParseInfo.getQueryType())) {
return; return;
} }
AggregateInfo aggregateInfo = AggregateInfo aggregateInfo =

View File

@@ -37,7 +37,7 @@ public class MetricRecommendProcessor implements ExecuteResultProcessor {
} }
private void fillSimilarMetric(SemanticParseInfo parseInfo) { private void fillSimilarMetric(SemanticParseInfo parseInfo) {
if (!parseInfo.getQueryType().equals(QueryType.METRIC) if (!parseInfo.getQueryType().equals(QueryType.AGGREGATE)
|| parseInfo.getMetrics().size() > METRIC_RECOMMEND_SIZE || parseInfo.getMetrics().size() > METRIC_RECOMMEND_SIZE
|| CollectionUtils.isEmpty(parseInfo.getMetrics())) { || CollectionUtils.isEmpty(parseInfo.getMetrics())) {
return; return;

View File

@@ -2,9 +2,9 @@ package com.tencent.supersonic.common.pojo.enums;
/** Enumerate query types supported by SuperSonic. */ /** Enumerate query types supported by SuperSonic. */
public enum QueryType { public enum QueryType {
/** queries with metric calculation (optionally slice and dice by dimensions) */ /** queries with aggregation (optionally slice and dice by dimensions) */
METRIC, AGGREGATE,
/** queries with tag-based entity targeting */ /** queries with field selection */
DETAIL, DETAIL,
/** queries with ID-based entity selection */ /** queries with ID-based entity selection */
ID; ID;

View File

@@ -33,7 +33,7 @@ public class GroupByCorrector extends BaseSemanticCorrector {
private Boolean needAddGroupBy( private Boolean needAddGroupBy(
ChatQueryContext chatQueryContext, SemanticParseInfo semanticParseInfo) { ChatQueryContext chatQueryContext, SemanticParseInfo semanticParseInfo) {
if (!QueryType.METRIC.equals(semanticParseInfo.getQueryType())) { if (!QueryType.AGGREGATE.equals(semanticParseInfo.getQueryType())) {
return false; return false;
} }

View File

@@ -53,7 +53,7 @@ public class TimeCorrector extends BaseSemanticCorrector {
if (CollectionUtils.isEmpty(whereFields) || !whereFields.contains(partitionDimension)) { if (CollectionUtils.isEmpty(whereFields) || !whereFields.contains(partitionDimension)) {
TimeDefaultConfig timeConfig; TimeDefaultConfig timeConfig;
QueryConfig queryConfig = dataSetSchema.getQueryConfig(); QueryConfig queryConfig = dataSetSchema.getQueryConfig();
if (QueryType.METRIC.equals(semanticParseInfo.getQueryType())) { if (QueryType.AGGREGATE.equals(semanticParseInfo.getQueryType())) {
timeConfig = queryConfig.getAggregateTypeDefaultConfig().getTimeDefaultConfig(); timeConfig = queryConfig.getAggregateTypeDefaultConfig().getTimeDefaultConfig();
} else { } else {
timeConfig = queryConfig.getDetailTypeDefaultConfig().getTimeDefaultConfig(); timeConfig = queryConfig.getDetailTypeDefaultConfig().getTimeDefaultConfig();

View File

@@ -73,7 +73,7 @@ public class QueryTypeParser implements SemanticParser {
// 2. metric queryType // 2. metric queryType
if (selectContainsMetric(sqlInfo, dataSetId, semanticSchema) if (selectContainsMetric(sqlInfo, dataSetId, semanticSchema)
|| SqlSelectFunctionHelper.hasAggregateFunction(sqlInfo.getParsedS2SQL())) { || SqlSelectFunctionHelper.hasAggregateFunction(sqlInfo.getParsedS2SQL())) {
return QueryType.METRIC; return QueryType.AGGREGATE;
} }
return QueryType.DETAIL; return QueryType.DETAIL;

View File

@@ -259,7 +259,7 @@ public class QueryReqBuilder {
public static QueryStructReq buildStructRatioReq( public static QueryStructReq buildStructRatioReq(
SemanticParseInfo parseInfo, SchemaElement metric, AggOperatorEnum aggOperatorEnum) { SemanticParseInfo parseInfo, SchemaElement metric, AggOperatorEnum aggOperatorEnum) {
QueryStructReq queryStructReq = buildStructReq(parseInfo); QueryStructReq queryStructReq = buildStructReq(parseInfo);
queryStructReq.setQueryType(QueryType.METRIC); queryStructReq.setQueryType(QueryType.AGGREGATE);
queryStructReq.setOrders(new ArrayList<>()); queryStructReq.setOrders(new ArrayList<>());
List<Aggregator> aggregators = new ArrayList<>(); List<Aggregator> aggregators = new ArrayList<>();
Aggregator ratioRoll = new Aggregator(metric.getBizName(), aggOperatorEnum); Aggregator ratioRoll = new Aggregator(metric.getBizName(), aggOperatorEnum);

View File

@@ -74,7 +74,7 @@ public class ParseInfoProcessor implements ResultProcessor {
parseInfo.setMetrics(metrics); parseInfo.setMetrics(metrics);
// extract dimensions from S2SQL // extract dimensions from S2SQL
if (QueryType.METRIC.equals(parseInfo.getQueryType())) { if (QueryType.AGGREGATE.equals(parseInfo.getQueryType())) {
List<String> groupByFields = SqlSelectHelper.getGroupByFields(s2SQL); List<String> groupByFields = SqlSelectHelper.getGroupByFields(s2SQL);
List<String> groupByDimensions = filterDateField(dsSchema, groupByFields); List<String> groupByDimensions = filterDateField(dsSchema, groupByFields);
parseInfo.setDimensions( parseInfo.setDimensions(

View File

@@ -294,7 +294,7 @@ public class QueryReqConverter {
boolean isAgg = AggOption.isAgg(aggOption); boolean isAgg = AggOption.isAgg(aggOption);
QueryType queryType = QueryType.DETAIL; QueryType queryType = QueryType.DETAIL;
if (isAgg) { if (isAgg) {
queryType = QueryType.METRIC; queryType = QueryType.AGGREGATE;
} }
return queryType; return queryType;
} }

View File

@@ -29,7 +29,7 @@ class QueryNLReqBuilderTest {
QueryStructReq queryStructReq = new QueryStructReq(); QueryStructReq queryStructReq = new QueryStructReq();
queryStructReq.setDataSetId(1L); queryStructReq.setDataSetId(1L);
queryStructReq.setDataSetName("内容库"); queryStructReq.setDataSetName("内容库");
queryStructReq.setQueryType(QueryType.METRIC); queryStructReq.setQueryType(QueryType.AGGREGATE);
Aggregator aggregator = new Aggregator(); Aggregator aggregator = new Aggregator();
aggregator.setFunc(AggOperatorEnum.UNKNOWN); aggregator.setFunc(AggOperatorEnum.UNKNOWN);

View File

@@ -46,7 +46,7 @@ public class MetricTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay)); DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }
@@ -68,7 +68,7 @@ public class MetricTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf( DataUtils.getDateConf(
DateConf.DateMode.BETWEEN, 7, DatePeriodEnum.DAY, startDay, endDay)); DateConf.DateMode.BETWEEN, 7, DatePeriodEnum.DAY, startDay, endDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }
@@ -94,7 +94,7 @@ public class MetricTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay)); DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }
@@ -116,7 +116,7 @@ public class MetricTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(3, DateConf.DateMode.BETWEEN, DatePeriodEnum.DAY)); DataUtils.getDateConf(3, DateConf.DateMode.BETWEEN, DatePeriodEnum.DAY));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }
@@ -136,7 +136,7 @@ public class MetricTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay)); DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }
@@ -166,7 +166,7 @@ public class MetricTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(DateConf.DateMode.BETWEEN, 1, period, startDay, startDay)); DataUtils.getDateConf(DateConf.DateMode.BETWEEN, 1, period, startDay, startDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }

View File

@@ -38,7 +38,7 @@ public class MultiTurnsTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay)); DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }
@@ -67,7 +67,7 @@ public class MultiTurnsTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay)); DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }
@@ -94,7 +94,7 @@ public class MultiTurnsTest extends BaseTest {
expectedParseInfo.setDateInfo( expectedParseInfo.setDateInfo(
DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay)); DataUtils.getDateConf(DateConf.DateMode.BETWEEN, unit, period, startDay, endDay));
expectedParseInfo.setQueryType(QueryType.METRIC); expectedParseInfo.setQueryType(QueryType.AGGREGATE);
assertQueryResult(expectedResult, actualResult); assertQueryResult(expectedResult, actualResult);
} }

View File

@@ -47,7 +47,7 @@ public class BaseTest extends BaseApplication {
} }
protected QueryStructReq buildQueryStructReq(List<String> groups) { protected QueryStructReq buildQueryStructReq(List<String> groups) {
return buildQueryStructReq(groups, QueryType.METRIC); return buildQueryStructReq(groups, QueryType.AGGREGATE);
} }
protected QueryStructReq buildQueryStructReq(List<String> groups, QueryType queryType) { protected QueryStructReq buildQueryStructReq(List<String> groups, QueryType queryType) {
@@ -84,7 +84,7 @@ public class BaseTest extends BaseApplication {
for (Long modelId : DataUtils.getMetricAgentIModelIds()) { for (Long modelId : DataUtils.getMetricAgentIModelIds()) {
queryStructReq.addModelId(modelId); queryStructReq.addModelId(modelId);
} }
queryStructReq.setQueryType(QueryType.METRIC); queryStructReq.setQueryType(QueryType.AGGREGATE);
queryStructReq.setAggregators(Arrays.asList(aggregator)); queryStructReq.setAggregators(Arrays.asList(aggregator));
if (CollectionUtils.isNotEmpty(groups)) { if (CollectionUtils.isNotEmpty(groups)) {