Industrial Big Data Analytics

Визуализация больших объемов данных на web клиенте

Описание: для анализа больших объемов данных человеком требуется программное обеспечение, которое за приемлемое время позволяет отобразить данные (возможно агрегированные) в виде графиков, а также их масштабировать (увеличивать/уменьшать детализацию), перемещаться по ним, выгружать нужные элементы и т.д. 

Задачи: 

  • Базовая задача: создать web приложение, которое для заданного набора данных (набор задается в виде интервала за заданный промежуток времени из интерфейса пользователя) отображает график (по оси X - метка времени, по оси Y - показатель) с временем полной загрузки страницы до 3 секунд. За задачу может быть дано 12 баллов:

    • 3 балла: архитектура приложения (оценка времени загрузки страницы, процессорная нагрузка на клиент и сервер).

    • 3 балла: модель хранения данных (оценка места, занимаемого данными дополнительно к самим данным).

    • 6 баллов: визуализация данных (оценка отображения данных).

  • Дополнительные задачи (всего 12 баллов):

    • 4 балла: масштабируемость (выполнение zoom для графика по оси X).

    • 4 балла: перемещение по времени на графике (возможность сместить ось X влево/вправо от заданного интервала).

    • 4 балла: режим онлайн (генерация новых данных, сохранение в заданной модели и подгрузка на клиент).

Данные:

  • Представляют из себя набор метки времени и массив показателей.

  • Минимальная единица времени: 1 секунда.

  • Массив показателей может содержать до 200000 значений.

  • В разные моменты времени количество показателей в массиве может различаться.

  • Функции агрегации: среднее, максимальное, минимальное.

Скрипт генерации данных: https://gist.github.com/vdim/c3a1f23a2785e4e6801f8a7ad1c402fb.

Скрипт позволяет сгенерировать данные в текстовом формате метка времени (unix timestamp)  и набор данных. В параметрах можно указать количество секунд, за которое необходимо сгенерировать данные (по умолчанию генерируется минута данных). Примерное время работы: 3 минуты на генерацию 30 минут данных. Примерный объем: 500 Мб на 30 минут данных с 100000 показателей за секунду.


Модератор: Димитров Вячеслав Михайлович, старший научный сотрудник, старший преподаватель кафедры информатики и математического обеспечения

Задание #8