интервал времени. Подскажите, пожалуйста, какие есть возможности это сделать эффективно?
Колонка timestamp в таблице разбита на две — число секунд и число наносекунд. Хочется уметь делать агрегации для любого количества секунд, с точностью до 0.1 секунды.
в смысле в течении часа есть два ивента, и среднее кол-во ивентов в секунду (искомое) = 2 / 3600 ?
не совсем так. Есть за час, например, 100 000 наблюдений. Они распределены неравномерно. Хочется сгруппировать и посчитать среднее за 0.1 секунду, считая начальной точкой первое наблюдение за час.
и можно предположить, что в каждые 0.1 секунды есть хотя бы одно наблюдение.
а нафига надо "считая начальной точкой первое наблюдение за час." при такой гранулярности, это только дополнительные тормоза. >считать среднее за 1.7 секунды. group by intdiv(time*1000, 1700) или -resample https://clickhouse.com/docs/en/sql-reference/aggregate-functions/combinators/#agg-functions-combinator-resample
по факту незачем. Это для строгости постановки скорее. Спасибо, понятно, как делать.
Обсуждают сегодня