Мне нужно хранить количество воспроизведений за каждую секунду подкаста/аудиофайла. Это приведет к простому графику временной шкалы (например, графику «посещений» в Google Analytics) с секундами на оси x и воспроизведением на оси y.
Тем не менее, эти подкасты потенциально могут продолжаться до 3 часов, и 100 000 воспроизведений в секунду вполне реально. Это 10 800 секунд, каждая из которых воспроизводится до 100 000 раз. Очевидно, что хранить каждую сыгранную секунду в отдельной строке нереально (это приведет к 1+ миллиарду строк), так как я хочу иметь возможность быстро извлекать эти необработанные данные.
Итак, мой вопрос: как мне лучше всего хранить эти огромные объемы данных временной шкалы?
Одна из идей, которые у меня были, состояла в том, чтобы использовать столбец text/blob, а затем разделять воспроизведения запятыми, каждая запятая представляет новую секунду (в последовательности), а затем число, обозначающее количество раз, когда эта секунда была воспроизведена. Итак, если 100 000 воспроизведений за первую секунду и 90 000 воспроизведений за вторую секунду и 95 000 воспроизведений за третью секунду, то я бы сохранил это так: «100000,90000,95000,[...]» в столбце text/blob.
Является ли это возможным способом хранения таких данных? Есть ли способ лучше?
Спасибо!
Изменить: данные отслеживаются в другом источнике, и мне нужно только обновлять необработанные данные графика каждые 15 минут или около того. Следовательно, быстрое чтение является главной проблемой.
Примечание. Из-за характера этого проекта каждую сыгранную секунду придется отслеживать отдельно (другими словами, я не могу просто отслеживать «начало» и «конец» каждого воспроизведения).