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

Какую СУБД лучше выбрать?

Что есть:
Имею прайс лист бесконечной длины (нужен шардинг). В качестве первичного ключа используется unsigned int64, который является некоторой хеш-суммой всей записи (для уникальности). Он всегда известен заранее (перед вставкой/обновлением).
Что нужно с этим делать:
Очень много вставлять/обновлять, выбирать записи по ПК. Разбивать на шарды, реплицировать мастер-слейв. СУБД должна иметь клиентские либы для C/C++.

Когда проект начинался, над большими объёмами данных никто особо не задумывался, используется Mysql (innodb). Теперь система кряхтит под нагрузкой, надо менять архитектуру.
Я понимаю, что в данной ситуации нужно использовать NoSQL, и большинство будет мне рекомендовать MongoDB. С этой СУБД я немного работал. Но меня очень не порадовали скорости её работы. Возможно, я не умею её настраивать. Тогда дополнительный вопрос: где можно почитать о настройке?

И ещё буду очень благодарен, если примерно (хотя бы порядок) сориентируете меня по цифрам скорости вставки и выборки, которых можно достичь (VPS Xeon 4 Core, 64 GB DDR4 ECC, SSD RAID-1)

Сейчас вставка/обновление 5000 записей занимает от 5 до 30 секунд! Это очень долго!

Спасибо!
  • Вопрос задан
  • 1444 просмотра
Подписаться 8 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    1C-программист: расширенный курс
    18 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик + ИИ
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия DevOps-инженер + ИИ
    5 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 5
TheCreator
@TheCreator
Бездельник
У вас есть уникальный айди сущности, у вас нет работы с записями (только получение/вставка по айди), что тут можно использовать кроме redis? Который спокойно обрабатывает сотни тысяч запросов в секунду?
try.redis.io - посмотрите и восхититесь.
redis.io/clients - клиенты тут, подо что хотите.
redis.io/documentation - много и интересно, как настраивать.
Ответ написан
@beduin01
Попробуйте ArangoDB, я на нее с MySQL перешел. Пока очень доволен.
Ответ написан
Комментировать
Соглашусь с Дмитрий Авилов - если выборка по единственному ключу, то рел. СУБД ни к чему. Монга не единственное возможное решение, поэкспериментируйте с другими NoSQL базами.
Ответ написан
opium
@opium
Просто люблю качественно работать
Вставляйте скопом а не по одной записи ну и если по одной то выключайте индексы а потом включайте
Ответ написан
@napolskih
Попробуйте tarantool. Это очень перспективная субд похожая на редис, но с очень широкими возможностями. Из минусов - не такая популярная и широкоиспользуемая.
Ответ написан
Ваш ответ на вопрос

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

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