Aviato & Quantify
Привет, придумал кое-что насчет нового дрона. Он будет передавать данные с датчиков в реальном времени на панель управления, которую можно настраивать на ходу. Представь: погодные условия, плотность толпы, даже статистика по шоколадкам в офисной кладовке — вообще любые данные, которые можно превратить в полезную информацию. Хочешь помочь мне разобраться с потоком данных и накидать прогнозные графики?
Конечно, давай разберёмся с конвейером данных: видеопоток с камеры → обработка на границе для детекции объектов → слой слияния данных (температура, движение, может, вес ящичка со снеками) → запись в базу данных временных рядов → движок аналитики в реальном времени → дашборды с детализацией. Можно построить предиктивную модель для анализа потока людей, используя ARIMA или просто скользящее среднее, а для прогнозирования погоды подойдёт фильтр Калмана. Для ящичка со снеками – просто счётчик и линия тренда. Но не жди, что в метриках появится что-то вроде "позитивных вибраций". Давай лучше составим схему и начнём собирать тестовые данные.
Отлично, вот как я себе и представлял план. Сейчас быстро набросаю ER-диаграмму для граничных узлов и БД, а потом соберем тестовый пакет данных с датчика диспенсера – всего пара килограмм, показание веса, временная метка, и готово. Думаю, можно будет добавить простой интерфейс, который будет переключаться между тепловой картой скопления людей и маленькой круговой диаграммой потребления снеков. Как только данные потекут, запустим фильтр Калмана на данные о погоде и сравним прогнозы ARIMA с текущим количеством людей – может, даже подкорректируем план полета дрона, чтобы избежать заторов. Сначала доделаем схему, а потом возьмем несколько образцов данных из тестовой зоны. Готова начинать?
Звучит как отличный спринт. Сначала ER-диаграмма, потом макеты полезной нагрузки. Буду следить за весом закусок – они могут исказить данные, если ты их не отметишь. Как только Калман и ARIMA заработают как часы, мы сможем вернуть модель поведения аудитории в план полёта. Давай выложим схему на стол и потом запустим несколько тестовых полезных нагрузок. Я готова, но не жди от меня никаких "ощущений" в аналитике.
Давай разберём схему ER — узел камеры, вычислительный блок на краю сети, хаб слияния данных с датчиков, таблица временных рядов, аналитический движок и панель мониторинга. Я набросаю таблицы: Cameras(id, location, feed_url), Edge(id, camera_id, obj_det_model), Fusion(id, edge_id, temp, motion, snack_weight, ts), TSDB(id, sensor_id, value, ts), Dashboards(id, user_id, view_type). Потом подсунем тестовый пакет данных: 10.3 кг, 22°C, motion=0.4, ts=now. Как только фильтр Калмана для температуры и ARIMA для подсчёта толпы начнут работать, мы сможем зациклить прогноз толпы обратно в планировщик траектории дрона. Всё готово — приступаем к спринту 1 и посмотрим, как закрутятся эти цифры!
Замечательно, выглядит неплохо этот список таблиц. Только не забудь, что для Fusion таблицы нужен внешний ключ к TSDB, если ты хочешь выполнять прямой джоин, иначе придётся отдельно вытаскивать snack_weight. То тестовое заполнение данных, что ты дал, создаст строку в Fusion, а потом ты сможешь отправить её в TSDB для анализа временных рядов. Как только запустишь фильтр Калмана на температуру и ARIMA на количество людей, верни прогноз обратно в план полёта, и дрон будет избегать зон с высокой плотностью. Давай сначала поработаем над структурой базы данных, а потом протестируем заполнение данных. Я буду следить за странностями, которые могут скрываться в данных о снеках; поверь, потом скажешь спасибо.
Понял—свяжи Fusion с TSDB, закидывай вес снеков в один и тот же стрим, держи температуру в цикле Калмана, загрузи данные на ARIMA, возвращай прогноз в траекторию дрона. Я набросаю схему, отправлю тестовый пакет, а ты отслеживай выбросы. Давай запустим этот процесс—пора посмотреть, как дрон ловко обходит толпу, как профи!