Как превратить скучную таблицу в удобную тепловую карту
Делюсь реальным рабочим кейсом.
Исходные данные
Существует таблица журнала записей обо всех запусках аналитических алгоритмов в веб-приложении. Количество алгоритмов - конечно. Количество запусков алгоритмов - более миллиона записей в сутки.
В чём проблема?
Проблема заключается в том, что сотрудник, анализирующий ход выполнения алгоритма в течение какого-то периода времени, не получает всей картины во временном ряду, просматривая данные в таблице. Кроме того, выгрузка таблицы с миллионами строк в Excel - плохая практика и мало реализуема в принципе из-за ограничений самого Excel. Кроме того, хранение записей Журнала предполагалось в БД PostgreSQL, что не облегчало нам задачу разработки.
Что я предложила?
1) заменить PostgreSQL на ClickHouse и записывать туда временные ряды (по ряду на алгоритм), где на каждую точку времени будет статус - результат выполнения аналитического алгоритма.
2) полностью отказаться от таблицы в пользу матрицы тепловой карты, где каждый квадрат - это записанный в ClickHouse результат работы аналитического алгоритма, а цвет имеет значение: - зелёный - алгоритм отработал без ошибок - жёлтый - алгоритм отклонил ряд сущностей в ходе своей работы. - красный - в ходе выполнения алгоритма произошла системная ошибка и результата работы алгоритма (статуса) - нет.
А по клику на квадратик показываем подробную аналитику данного конкретного результата выполнения аналитического алгоритма. В верхней части окна - над матрицей - размещаем слайдер временного диапазона (наподобие тех, что используются в Excel для сводных таблиц). Данный слайдер позволяет пользователю перемещаться по записям и просматривать интересующие его диапазоны времени.
Как вам такое преображение таблицы?