Я хочу знать, зачем использовать кеш, когда мы можем использовать базу данных с правильной индексацией.Дело в том, зачем добавлять отдельный слой всей новой системы (в том числе аппаратного обеспечения для распределенных кэшей), когда мы можем достичь того же, используя БД с надлежащей индексацией?
Я имею в виду, что мы можем иметьтаблица со столбцами key
и value
(минимальные требования) и индекс для столбца key
.Разве это не будет служить цели?
Ниже приведены причины, по которым я могу подумать:
- Кэши поставляются со встроенным TTL, тогда как в случае большинства БД вам потребуется реализоватьTTL.
- Простота настройки, просто поместите зависимость в ваш pom.xml / build.gradle, установите соединение с кешем, и вы можете поместить / получить из распределенного кеша.
- База данных будет получать данные из вторичного хранилища, в то время как кэши хранят данные в памяти, и доступ к ОЗУ всегда быстрее по сравнению с доступом к любому вторичному хранилищу.
Есть ли какая-либо другая причиначто мне может не хватать?