DenisBY
@DenisBY
DevOps

Какую базу данных выбрать для частого обновления данных?

Задача:
Есть некий документ, который один раз записывается в базу и затем к нему разные источники дописывают свойства. Например документ - имя файла, свойства - размер, дата создания, хеш, тип. и т.п.
Некоторые свойства как могут быть, так могут и не быть. Т.е. у некоторых файлов может не быть информации о размере или дате создания.
Свойства для одного и того же файла могут обновлять разные источники и делать они это могут одновременно, но разные свойства обновляют разные источники, т.е. один источник обновлят только размер, другой только дату создания и ит.п. Поэтому хотелось бы иместь возможность обновлять свойства не блокируя весь документ.
Документы не будут хранится вечно и будут удаляться, как только все свойства будут заполнены.
Так же должна выдерживать около 500 записей/обновлений в секунду.
  • Вопрос задан
  • 782 просмотра
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 3
evnuh
@evnuh
Поиск Гугл помог мне, впусти и ты его в свой дом
Ну Redis вы вполне правильно указали, 500rps он спокойно выдержит, даже с локами на весь весь ключ.
Ещё sophia.systems посмотрите, её вроде как tarantool использует внутри.
Ответ написан
Комментировать
sayber
@sayber
Да, я программирую на PHP и еще асинхронно!
Ответ написан
Комментировать
@polifill
500 обновлений в секунду - совсем не большая нагрузка.
Но если прям-таки специализированное решение хочется, то на такие вещи заточены InfluxDB и Tarantool (с включенным движком vinyl)

На среднем железе лично получал до 5000 в секунду.
Больше не требовалось по тех.заданию, возможно можно и больше.
Ответ написан
Ваш ответ на вопрос

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

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