есть ли какие либо ограничения и замедления кроме чтого что innodb хранит не более 4 миллиардов таблиц?
Цель использовать как хранилище коллекций, т.е. записывать в кучу таблиц user_{id} (миллионы беру не с потолка, id не реганных пользователей, а хэш от анонимных) и читать через реплики. Объем данных большой. qps 1000+ , rps 300 пик, но можно очередью подрегулировать запись количеством воркеров.
Почему выбор пал на mysql, вроде имеет неплохие показатели чтения, а redis не сможет держать нужный мне объем данных в оперативке (ну либо усложнять инфраструктуру через кластер).
Ну или мб поступят предложения по другой БД :)
При миллионах таблиц mysql как поведёт себя-уже не важно, лучше подумай как поведут себя Твои коллеги, Я вот думаю что они скорее тебя поймают повесят на палку над костром потом зажарят живьём и съедят
Потому что злые будут
Лично я не хочу трогать сотни таблиц, не говоря уж о миллионах
Так это же все динамически
Вам явно нужен какой-то редис или другое ин-мемори решение
Дорогой мой я тебе расскажу одну историю точка Я долго работал в одном месте У нас была очень большая база очень объёмная по функционалу, по объёмам данных всё такое вот прочее там было порядка 7,5-8 тысяч таблиц . Зачем тебе такое количество таблиц совершенно непонятно, я подразумеваю что ты просто не умеешь проектировать реляционные базы данных поэтому считаешь что скажем каждому пользователю нужна своя таблица это не так
Так проблема в том, что в мемори не помещается
Пора перерабатывать архитектуру
А ты видимо полагаешь что если таблица будет много то они сразу станут помещаться в память
Ладно, флоу : есть куча логов, нужно отдавать их быстро по юзерам. Записей десятки гигов, т.е. в оперативку пихать такое себе
Мускул же хранит на диске
ну ссд память быстрая и дешевая, в отличие от ОЗУ и серверов
Какой контекст у логов?
Короче, Вопрос закрыт: миллионы таблиц тебе не нужно.
вавтарых у нас на серваке есть редис с потреблением 60-80 гб озу
Посещения пользователей и инфа о продукте и инфа пользователе. Сейчас это 10гб индекса в день в эластике (это другой вопрос), надо отдавать это быстро и с минимальной задержкой по 1 пользователю за месяц. qps 600+ на старте
10 гб общих данных в день добавляется? В таком описании это звучит тривиальной задачей
Обсуждают сегодня