@Override
        public int compare(final String k1, final String k2) {
            int result;
            String[] kk1 = parseKey(k1);
            String[] kk2 = parseKey(k2);
            result = kk1[0].compareTo(kk2[0]);
            if (result != 0) {
                return result;
            }
            final String key1 = kk1[1];
            final String key2 = kk2[1];
            if (key1.equals(key2)) {
                result = 0;
            } else if (Bucket.INFINITE_NEGATIVE.equals(key1) || Bucket.INFINITE_POSITIVE.equals(key2)) {
                result = -1;
            } else if (Bucket.INFINITE_NEGATIVE.equals(key2) || Bucket.INFINITE_POSITIVE.equals(key1)) {
                result = 1;
            } else {
                result = new BigInteger(key1).subtract(new BigInteger(key2)).signum();
            }

            return asc ? result : -result;
        }
Build one heatmap value column based on rawdata in the storage and row id.

@param id      of the row
@param rawdata literal string, represent a {@link DataTable}
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/type/HeatMap.java