Как и где правильно хранить большое количество данных, поступающих из API?
Пишу приложение, которое тянет данные из апи, производит какие-то вычисления на стороне сервера и выдает пользователю, каждые 5-10 секунд.
Это некоторый объем числовых данных (от 5 до 15 пунктов), но, обновляемый каждые 5 или 10 секунд. Мне требуется показывать график в реально времени, его изменение и тд, различные круговые диаграммы, в общем статистику. Все графики на сайте имеют срок актуальности в один день, то есть каждый следующий день он заново перезаписывается, и показывается на сайте.
Я подумал сначала сохранять все эти данные в базу, потом их перезаписывать, но вполне возможно, что потребуется просто собирать эти данные для анализа.
Итак, если брать обычную бд, то за день таких данных с API накапает от 28 800 до 57 600 строк. И таких категорий данных у меня 3 (то есть 57к * 3).
Все это дело работает через вебсокеты, сервер просто отдает всем клиентам сформированный json, который каждые 5-10 секунд тянется из базы.
Я подумал, что можно, в принципе, данные для графика записывать только раз в минуту тогда получаем 4 320 записей в 3 таблицы (для каждой категории своя таблица) только для графиков, объем информации серьезно сокращается, однако, мне кажется к 23 часу ночи каждого дня не слишком круто вытягивать из базы почти 1440 записей и на его основе генерировать json массив и передавать его каждую минуту клиентам.
Я знаю, что есть базы с миллионами данными и все они нормально обрабатываются, но как поступить в моей ситуации? Будет ли это все дело сильно напрягать такой сервак: CPU: Xeon 1 core Память: 1 Gb Диск (ssd): 10 Gb? Есть ли какие-то статьи, что разобраться с методикой хранения и обработки большого количества данных? Может быть все мои сомнения напрасны и все будет быстро работать?
150к строк в день??? вы издеваетесь??? на хостинге с 10Гб стоимостью 500р в мес успешно пишется по 30к строк каждые 5 минут, притом в 25 колонок, вы вообще о чем???
даже не представлю что у вас там за данные такие? изображения что ли пишете в BLOB?
alex-1917, вопросы в конце текста читайте, там указано, что возможно я ошибаюсь в своих доводах, потому что я совершенно не знаю какой объем бд является нормальным, какой нет, именно об этом мой вопрос
Алексей Скляров, ну а пока месье будет и дальше секретничать по поводу размеров своих данных, ответы будут сугубо высосанные из пальца сиречь гугла. за день 57к*3 строк - это НИОЧЕМ - в одной строке может быть одно число, например курс битка, а может быть и строка с кинопоиска с полным описанием фильма, с галерееей картинок и т.д. давай давай цру-шник вы наш)))
Диска, конечно, хотелось бы побольше. Но вообще, такие объемы при грамотных индексах не проблема от слова совсем. В крайнем случае, можете по крону раз в неделю архивировать записи и чистить таблицу, если будет какая-то чувствительная просадка производительности.