digital-garden/dev/system-design/Redis Database Backup.md
Struchkov Mark 5c31e845f5
All checks were successful
continuous-integration/drone/push Build is passing
Обновление
2024-11-03 22:27:39 +03:00

3.9 KiB
Raw Blame History

aliases tags date
RDB
maturity/🌱
2024-10-07

Механизм RDB (Redis Database Backup) — это способ создания снапшотов состояния базы данных Redis и их сохранения на диск. В отличие от Append-Only File, который записывает каждую операцию в реальном времени, RDB создаёт полные резервные копии состояния базы на определенные промежутки времени. Вот как это работает и основные моменты, которые стоит учитывать:

!../../meta/files/images/Pasted image 20241103222301.png

Как работает RDB:

  • Снапшоты базы данных: Redis периодически сохраняет полную копию всех данных в файл на диске. Это называется “снапшот”. RDB-файл содержит сжатую и двоичную версию всех ключей и их значений на момент создания.
  • Файл дампа: По умолчанию, RDB-файл называется dump.rdb и сохраняется на диск. Этот файл можно использовать для восстановления данных при перезапуске Redis.

Преимущества RDB:

  • Производительность: В отличие от AOF, механизм RDB не влияет на производительность во время нормальной работы Redis. Он не записывает каждую операцию на диск, а вместо этого периодически делает полные снимки базы данных.
  • Меньший объем данных: Файл RDB, как правило, компактный и занимает меньше места, чем файл AOF, так как он представляет собой сжатую копию текущего состояния базы, а не лог изменений.
  • Быстрое восстановление: При перезапуске Redis восстановление данных из RDB быстрее, чем воспроизведение всех операций из AOF, так как это просто загрузка состояния базы на момент последнего снапшота.

Недостатки RDB:

  • Потенциальная потеря данных: Поскольку RDB создаёт снимки только через определённые промежутки времени, можно потерять все изменения, которые произошли с момента последнего снапшота, в случае сбоя Redis. Если снапшот создавался 15 минут назад, то при сбое вы потеряете все изменения, сделанные за эти 15 минут.
  • Тяжелые операции на большом объеме данных: Процесс создания снапшота может потреблять значительные ресурсы, особенно в крупных базах данных, что может влиять на производительность Redis на время создания снимка.

Мета информация

Область:: ../../meta/zero/00 Redis Родитель:: Источник:: Создана:: 2024-10-07 Автор::

Дополнительные материалы

Дочерние заметки