Вопрос с собеседования · Базы данных

Чем Redis принципиально отличается от DynamoDB как key-value хранилище?

MiddleKey-value хранилищаRedis
Ещё спрашивают так:
  • Чем Redis отличается от DynamoDB?
Коротко

Redis — в памяти, суб-миллисекундная задержка, богатые структуры (хэши, списки, sorted sets, streams): кэш, счётчики, лидерборды, очереди. DynamoDB — управляемое долговечное хранилище с автошардированием и оплатой за операции: основная база для доступа по ключу.

  • Redis: объём ограничен памятью, долговечность через RDB/AOF и асинхронные реплики
  • DynamoDB: данные на дисках с репликацией в трёх зонах, предсказуемая задержка в миллисекунды
  • DynamoDB: модель от запросов, вторичные индексы, условные записи, ограниченные транзакции

А ещё Часто их сочетают: DynamoDB как источник, Redis/DAX как кэш

Подробно

Redis держит данные в оперативной памяти (с опциональной персистентностью RDB/AOF), даёт суб-миллисекундную задержку и богатый набор структур (strings, hashes, lists, sets, sorted sets, streams) — поэтому его чаще берут как кэш, счётчики, лидерборды, очереди. DynamoDB — полностью управляемый AWS-сервис с долговечным хранением, автоматическим шардированием по ключу партиции и предсказуемой задержкой на больших объёмах; это primary store, а не кэш. Выбор: нужна минимальная задержка и структуры/кэш — Redis; нужно надёжное масштабируемое хранилище без эксплуатации — DynamoDB (часто их совмещают: DynamoDB как источник, Redis/DAX как кэш).

Что хотят услышать

  • Память против долговечного управляемого хранилища.
  • Типичные сценарии каждого.
  • Ограничения: объём и долговечность Redis, моделирование DynamoDB.

Частые ошибки

  • Использовать Redis как единственный долговечный store без понимания персистентности.
  • Считать DynamoDB заменой кэша по задержке.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✓Redis — быстрый in-memory со структурами данных, DynamoDB — управляемое персистентное хранилище с шардированием
  • ✗DynamoDB работает в памяти, а Redis пишет только на диск
  • ✗Redis — управляемый облачный сервис, а DynamoDB — встраиваемая in-memory библиотека
  • ✗Redis не поддерживает ключи, только списки

Что спросят дальше

  • Когда Redis нужен перед DynamoDB?
  • Что даёт персистентность AOF в Redis?

Разбор темы

Связанные вопросы

Партнёр платформы

Разбор собеседования с sotto

После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.

Разбор собеседования