Есть определенная информация, которая непрерывно поступает (до 10 записей в секунду). Ее нужно накапливать, и хранить определенное время. Выборка данных производиться не будет. Доступ к данным производится довольно редко и нет необходимости предоставлять его быстро.
Как лучше хранить такие данные? В данный момент пишется 1 запись в секунду в Oracle DB, необходимо уыеличить до 10 записей в секунду. Место на накопителе ограничено и такая база будет очень быстро расти.
Возможно есть более простой способ архивировать такие данные и получать к ним доступ?
А какой характер данных?
Можно посмотреть InfluxDB - как бонус - retention policy и быстрая выборка данных за определенный интервал. Есть проблема с построением индексов.
Можно монгу попробовать. С ухищрениями в виде bulk вполне записывает несколько (5-7, больше не проверял, может можно и больше) тысяч записей в секунду.
retention policy там то же завезли + можно индексы строить
Числовые данные с плавающей точкой.
Монгу давно хотел попробовать. Может как вариант ее возьму. Не уверен стоит ли использовать базу. Обращаться к этим данным будут довольно редко. А выборка будет большого количества записей за определенный период времени.
Если это какие-то метрики или что-то в этом духе, и выборки будут делаться только за период времени, то советую глянуть на InfluxDB (или что-то подобное, альтернатив не подскажу так сразу). Эта БД заточена под хранение метрик - имеет встроенный индекс по времени и более-менее удобные методы для получения данных за какой-либо. Плюс как я упоминал - автоматическое удаление устаревших данных
Да, использование БД может быть дороже с точки зрения хранения информации - записать в файл и сделать ему gzip, скорее всего, займет меньше места.
Но из любой БД проще выбирать данные - не надо будет городить какие-то скрипты, которые будут парсить файлы и т. п.
RidgeA: почитал на Хабре про InfluxDB. Пишут, что она нестабильная. Часто бывают необъяснимые падения и тормоза. У некоторых портились данные.
В целом проект интересный, но с такими недостатками в прод не хочется ее ставить.
А что про Монгу скажете?
С ухищрениями в виде bulk вполне записывает несколько (5-7, больше не проверял, может можно и больше) тысяч записей в секунду.
retention policy там то же завезли + можно индексы строить