Задать вопрос

Какую выбрать БД для больших объемов?

Доброго времени суток.
Есть большие объемы данных, ~40-45ГБ сутки, 25-30к строк в секунду, запись идет непрерывно.
Конечный объем может насчитывать 50-70ТБ.
Формат данных:
int timestamp
int value1
int value2
int value3

Выборки в основном имеют вид timestamp > date_1 && timestamp < date_2 && data == value*
Какую БД посоветуете? На какой отклик можно рассчитывать ?
Очень приятным бонусом будет если БД умеет сжимать данные.

Добавлю второй вариант, какой есть метод компрессии с так называемым свободным seek по файлу.
  • Вопрос задан
  • 1886 просмотров
Подписаться 14 Средний 1 комментарий
Решения вопроса 1
@lega
Складывайте в файлы по часам (например) - новый час - новый файл. Далее пакуйте.
На timestamp можно отвести 2 байта (т.к. в пределах часа). Посмотрите может value можно уменьшить.
Даже если на запись 16 байт, то современный HDD (150Mb/s) сможет сохранять ~9млн записей в сек (с вашими 30к справится)
Останется только сделать тулзу которая будет по вашим условиям доставать данные.

Файлы можно хранить на диске, можно в файловой БД, можно в GridFS которая будет шардить их по кластеру.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
evnuh
@evnuh
Поиск Гугл помог мне, впусти и ты его в свой дом
Посмотрите на sophia.systems, её использует Tarantool как один из движков.
Ответ написан
Комментировать
@spotifi
InfluxDB - специализированная именно под такую задачу.

Yandex Elliptics (в настоящее время легко компилируется только под Ubuntu 14.04 и соответствующее поколение Debian) - не БД, а распределенное хранилище DHT. Зато умеет само масштабироваться и реплицироваться и восстанавливаться. Ваше дело будет только подключать новые сервера к нему (или диски на сервера).
Ответ написан
Комментировать
Sergic
@Sergic
Scala, java, php dev
Вам хадуп кластер разворачивать необходимо и архитектуру конструировать на основе доставки сообщений с бд посредником, а все ваши терабайты в логах gzip хранить ну или на кластере в hive. Короче вопрос этот не для тостера. Вам во фриланс платформу за devops'ами нужно, т.к опыта у Вас нет по ходу с такими вопросами.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы