@Rekspeks

Redis стоит ли переходить с mysql?

Вопрос для профи.
Суть простая, я делаю проект, будучи менеджером проекта, спросить особо не у кого, хочу сменить бд, нужна производительность, от кол-ва возможности записи зависит кол-во пользователей. Сейчас наша бд крутится на релиционной бд (мускул, innodb). Хочу перейти на современное решение, типа редиски, с перспективами к масштабированию, с возможностью репликации со слейва на мастер и обратно ( сейчас будет 3 сервера, 1 только бд мастер чтение запись, второй только чтение(очень малое потребление), третий запись и отправка со слейва на мастер своей части.
Требуемая скорость записи на мастер от 2500 записей в секунду, чтение раз в минуту 100 тыс., запись многопоточная, асинхронная. Надо учитывать что будет еще и репликация с чтением.
Выборка на чтение в стиле: запрос id, затем чтение нужного поля.
Запись асинхронная, поиск id, запись числа от 1 до 10000
Чтение порядковое от 1 до 100тыс.
Как вы считаете какое лучшее решение для описанного выше? Идеальный ли вариант редис?
  • Вопрос задан
  • 6648 просмотров
Пригласить эксперта
Ответы на вопрос 5
index0h
@index0h
PHP, Golang. https://github.com/index0h
Вы - PM (Project Manager), ваша задача - управлять человеческими ресурсами, НЕ лезьте в разработку.
Задача программиста, согласно вами описанными правилами - реализовывать функционал, однако инструменты для этого он должен выбирать самостоятельно, согласно ТЗ.

То, что вы указали несколько цифр - это архитектурные требования и они ВНЕ вашей компетенции.

Вы указали требования на запись/чтение, а что на счет целостности, себестоимости, сложности внедрения и поддержки?

Redis - это key-value хранилище (чаще всего используется как кэш, и pub/sub роутер), MySQL - это реляционна БД. Это как сравнивать мотоцикл и фуру, они предназначены для разных целей.
Ответ написан
Комментировать
opium
@opium
Просто люблю качественно работать
Так то мускул и редис стоят совсем разных функциональных рядах, если вам кейвалью нужно то логично что это редис, если sql то мускул или постгрес.
Из вашего описания не очень понятно что вы храните, если у вас просто айди + поле то редис и выборка только по айди то редис самое то.
Ответ написан
Sanasol
@Sanasol
нельзя просто так взять и загуглить ошибку
хочу сменить бд

по велению левой пятки? :)

запрос id, затем чтение нужного поля.

редис это NoSQL хранилище.
Все записи хранятся в виде ключ - значение т.е. тут не выборок по параметру в принципе, в обычном понимании. Разве что только перебором искать.

Все что вы описали имеется в mysql. Никто не мешает вам масштабировать его.

Цифры все с потолка или уже имеются данные такие?
Чем не устраивает mysql и почему это не современное решение?
Ответ написан
@reedwalter24
Судя по описанию Redis Вам точно не подходит.
Даже с MySql на Postgres переход будет "болезненным". Если проект большой нужно подготовить себя к тому что это займет много времени.
Ответ написан
@bagzon
Backend PHP, NodeJs, JS
Не страдайте фигней, Mysql нормально обрабатывает все свои задачи, если конечно грамотно писать запросы, и иметь хорошо структуированую БД.

Много крупных компаний сидит на Mysql, по личному опыту говорю.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы