Выбор субд large data?

Собственно встал вопрос выбора субд/оптимизации текущей.
сейчас все хозяйство крутится на mysql.
за 3 месяца одна табличка разрослась до 7гб, (innodb) выборка происходит очень долго.
в ней сохраняются все переходы по рекламе. дальше объем будет больше.

структура на данный момент такая: id, campaign, banner, user, date, utm_source, utm_campaign & etc.
при выборке по произвольной дате (например за месяц) и группировке по полям campaign, banner, user, date выборка делается от 30 секунд и более.
индекс: date, campaign, banner, user

попробовал партировать все на монгу, результат не сильно лучше. учитывая что я не переносил данные о utm метках. примерно 6-10сек.

данные необходимо хранить минимум 3 месяца, в идеале пол года.
остальные данные суммируются и заносятся в сводную таблицу, но тут все просто и вопросов нет.

у кого был опыт, поделитесь. ссылки на статьи по теме приветствуются.

сервер vps: ubuntu 15.10, 4core, 16gb memory, 1000gb ssd
  • Вопрос задан
  • 311 просмотров
Пригласить эксперта
Ответы на вопрос 4
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
индексы вы расставляли? explain запросов делали? Что-то мне кажется что нет.

Для вашей задачи хватит и mysql + подтюнить. В целом же можно еще хранить агрегации готовые вместо того что бы на каждый чих по новой их делать.
Ответ написан
@beduin01
Посмотри вот эту БД https://www.arangodb.com/
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
используйте то, что знаете

индексы, обсчет в фоне, хранение часто запрашиваемой в отдельных теблицах

в целом хорошо освоиться с Посгрес, конечно, подходит практически для всех задач, но освоение требует времени
Ответ написан
Комментировать
un1t
@un1t
7гб это же мало. Стопудов индексов не хватает.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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