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

Что выбирать: SQL vs NoSQL?

Привет всему хабрасообществу.

Решил все же дать жизнь своей мечте в создании одного не маленького проекта. И возникает вопрос, что же лучше использовать для Primary Storage?

На данный момент, думаю над PostgreSQL (MySql) или же каким-то NoSql решением (на примете Redis).

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

Но вот, появляется куча ньюансов в из-за которых не могу определиться:

1. Редис все же быстрый (я бы сказал очень быстрый), но имеет больше процент потери данных при падании сервера чем реляционная БД
2. Редис не дает возможности явно указывать связи между сущностями.
3. БД (MySQL) при огромном количестве записей (ожидается более 20 млн записей) очень сильно начинает «тупить».

Поставленные требования:
1. Быстрая скорость записи/чтения
2. Возможность репликации на другие сервера
3. Фильтров почти нету, по сути, только списки.
4. Допустима потеря данных до 2%

Может кто-то сталкивался с такой задачей, и имеет опыт. Буду очень благодарен за ответы/советы. Спасибо!
  • Вопрос задан
  • 21054 просмотра
Подписаться 14 Оценить 1 комментарий
Ответ пользователя r1alex К ответам на вопрос (10)
@r1alex
MongoDB начиная с версии 2.4 вполне пригоден для продакшн. И репликация есть и отличная скорость. Используем в боевом проекте. Объем базы 32 Гб. Три реплики в реальном времени. Пишет только мастер. Читают только слейвы(у нас операций чтений больше почти в 20 раз)
На первый взгляд может показаться, что отсутствие реплики мастер-мастер — не есть гут. Однако в БД реализованы механизмы переизбрания мастера в случае падения.
Ответ написан
Комментировать