public static String queryIndexName(String tableName,
                                        long pointOfTB,
                                        Step step,
                                        boolean isRecord,
                                        boolean isSuperDataSet) {
        if (StringUtil.isBlank(tableName) || pointOfTB <= 0) {
            throw new IllegalArgumentException(
                "Arguments [tableName]: " + tableName + " can not be blank and [pointOfTB]: " + pointOfTB + " can not <= 0");
        }
        if (isRecord && isSuperDataSet) {
            return tableName + Const.LINE + compressTimeBucket(pointOfTB / 1000000, SUPER_DATASET_DAY_STEP);
        }
        switch (step) {
            case DAY:
                return tableName + Const.LINE + compressTimeBucket(pointOfTB, DAY_STEP);
            case HOUR:
                return tableName + Const.LINE + compressTimeBucket(pointOfTB / 100, DAY_STEP);
            case MINUTE:
                return tableName + Const.LINE + compressTimeBucket(pointOfTB / 10000, DAY_STEP);
            case SECOND:
                return tableName + Const.LINE + compressTimeBucket(pointOfTB / 1000000, DAY_STEP);
        }

        throw new UnexpectedException("Failed to get the index name from tableName:" + tableName + ", pointOfTB:" + pointOfTB + ", step:" + step.name());
    }
@Test
    public void queryIndexNameTest() {
        Assertions.assertEquals(
            "metrics-apdex-20220710",
            TimeSeriesUtils.queryIndexName("metrics-apdex", 20220710111111L, Step.SECOND, false, false)
        );
        Assertions.assertEquals(
            "metrics-apdex-20220710",
            TimeSeriesUtils.queryIndexName("metrics-apdex", 202207101111L, Step.MINUTE, false, false)
        );
        Assertions.assertEquals(
            "metrics-apdex-20220710",
            TimeSeriesUtils.queryIndexName("metrics-apdex", 2022071011L, Step.HOUR, false, false)
        );
        Assertions.assertEquals(
            "metrics-apdex-20220710",
            TimeSeriesUtils.queryIndexName("metrics-apdex", 20220710L, Step.DAY, false, false)
        );
        Assertions.assertEquals(
            "metrics-apdex-20220710",
            TimeSeriesUtils.queryIndexName("metrics-apdex", 20220710111111L, Step.DAY, true, true)
        );
    }