Тематический маршрут

Данные и восстановление

Область посвящена сохранению данных при работе приложения и возвращению услуги после сбоя. Здесь собраны транзакции, репликация, повторная обработка сообщений, резервные копии и аварийное восстановление. Выберите ветвь по своей задаче; читать все ветви подряд не нужно. Для разбора повторного заказа начните с транзакций, для задержки копии — с реплик, для защиты от потери данных — с резервных копий и проверки возврата услуги.

Первые понятия

С чего начать

  1. Транзакция базы данных

    Транзакция базы данных — группа связанных чтений и изменений, которую база выполняет как одну единицу работы. Фиксация принимает её результат целиком, откат…

  2. Резервная копия (Backup)

    Резервная копия — копия данных или программ, созданная для последующего восстановления. Она полезна лишь тогда, когда переживёт событие, от которого защищает,…

  3. Аварийное восстановление (DR)

    Аварийное восстановление (DR) — организованный возврат критичных систем и данных после серьёзной аварии по заранее заданным приоритетам и проверяемому плану.

По вашей задаче

Ветви маршрута

Подробнее о маршруте

Ветвь «Транзакции и повторы» начинается с транзакции базы данных, изоляции и идемпотентной операции. Затем можно разобрать атомарность, долговечность, фиксацию, уровни изоляции и возможные аномалии чтения. Статьи о доставке сообщений и повторной обработке продолжают путь запроса за пределами одной транзакции. Курс о заказе, переживающем сбой, связывает эти понятия с наблюдаемым результатом операции и вопросами к повторной попытке.

Ветвь «Реплики и согласованность» нужна при чтении схемы распределённого хранения данных. Начните с задержки репликации, согласования между узлами и линейризуемости. Далее выберите синхронную или асинхронную репликацию, выбор ведущего узла, журнал и контрольные точки базы. Тот же курс помогает разделить вопросы о состоянии реплики, принятом решении и результате чтения. После него переходите к проверенному восстановлению базы данных.

Ветвь «Резервные копии» ведёт от задания и набора копий к полной, инкрементальной и дифференциальной копии. Затем читайте о согласованности данных приложения, цепочке, окне копирования и сроке хранения. Для сценария шифровальщика выберите неизменяемость, автономную копию, изоляцию учётных данных и разделение ключей. Курс о резервных копиях продолжает маршрут каталогом, проверкой целостности и выбором точки восстановления.

Ветвь «Возврат услуги» начинается с RPO и RTO. Далее читайте о пробном восстановлении, плане действий, заведомо пригодной точке и проверке после возврата данных. Курс об аварийном восстановлении связывает цели с зависимостями услуги и условиями приёмки. Практический результат — сценарий испытания: исходное состояние, выбранный отказ, доступные копии, порядок действий и наблюдения, по которым принимается работа приложения после восстановления.

За устройством накопителей, массивами, доступом SAN и жизненным циклом криптографических ключей переходите в «Хранение и RAID». Переключение виртуальных машин и кворум кластера относятся к «Виртуализации и контейнерам». За измерениями задержек, ошибок и целей службы переходите в «Наблюдаемость и SRE». Для дальнейшего разбора с Делектусом подготовьте описание данных, допустимой потери, времени возврата и уже проверенных способов восстановления своей услуги.

Область знаний

Аварийное восстановление

  • RPO

    RPO — это допустимая давность восстановленных данных: насколько старым может быть состояние, к которому вернулись после сбоя. Длительность самого…

  • RTO

    RTO — целевой предел длительности восстановления услуги. Чтобы его измерить, заранее договариваются, с какого момента идёт отсчёт и при каком состоянии услугу…

  • Snapshot (снимок состояния)

    Snapshot (снимок состояния) — это запись состояния работающей системы на выбранный момент, обычно сохранённая как отличия от исходного состояния. Поэтому…

  • Аварийное восстановление (DR)

    Аварийное восстановление (DR) — организованный возврат критичных систем и данных после серьёзной аварии по заранее заданным приоритетам и проверяемому плану.

  • Резервная копия (Backup)

    Резервная копия — копия данных или программ, созданная для последующего восстановления. Она полезна лишь тогда, когда переживёт событие, от которого защищает,…

  • Репликация данных

    Репликация данных — это запись одних и тех же данных как минимум в двух отдельных местах, чтобы они существовали не в одном экземпляре. Режим репликации…

Область знаний

Защита данных

  • Backup job

    Backup job (задание резервного копирования) — один запуск копирования выбранных данных в указанную цель по заданной политике. Задание связывает нагрузку, тип…

  • Clean-room recovery

    Clean-room recovery (восстановление в чистой комнате) — способ восстановления, при котором системы поднимают в изолированной среде, отрезанной от рабочей сети…

  • Known-good restore point

    Known-good restore point (проверенная чистая точка) — точка восстановления, для которой есть доказательства, что она сделана до вредоносного изменения и прошла…

  • Offline backup

    Offline backup (автономная резервная копия) — копия, которая в обычном режиме отключена от рабочих систем и недостижима с их учётными данными. Программа-…

  • Recovery runbook

    Recovery runbook (регламент восстановления) — пошаговая инструкция с ответственными, порядком зависимостей, точками принятия решений и критериями возврата…

  • Workload quiescing

    Workload quiescing (приостановка рабочей нагрузки) — короткая управляемая пауза записи приложения, во время которой снимают согласованную точку восстановления.…

  • Write-order consistency

    Write-order consistency (согласованность порядка записи) — свойство копии, в которой зависимые записи сохранены в том порядке, в каком их сделало приложение.…

  • Аварийно согласованная резервная копия

    Аварийно согласованная резервная копия — копия данных, снятая без координации с приложением: она фиксирует состояние как при внезапном отключении питания. Она…

  • Блокировка объектов Object Lock

    Блокировка объектов (Object Lock) — механизм WORM-защиты, который запрещает изменять и удалять версию объекта до конца заданного срока или пока действует legal…

  • Восстановление на момент времени (PITR)

    Восстановление на момент времени (PITR) — способ вернуть базу данных в состояние на выбранный момент: к базовой резервной копии последовательно применяют…

  • Дифференциальная резервная копия

    Дифференциальная резервная копия — это копия всех изменений, накопившихся с момента последней полной копии. Промежуточные дифференциальные копии новой базой не…

  • Дополнительный экземпляр резервной копии

    Дополнительный экземпляр резервной копии — отдельный набор данных, созданный из первичной копии и размещённый в другом хранилище или контуре управления. Вторая…

  • Изоляция учётных данных резервного копирования

    Изоляция учётных данных резервного копирования — порядок доступа, при котором создавать, удалять и восстанавливать копии могут только отдельные служебные…

  • Инкрементальная резервная копия

    Инкрементальная резервная копия — это копия данных, изменившихся после последней полной или инкрементальной копии. Она экономит время и место, но для…

  • Каталог резервных копий

    Каталог резервных копий — индекс копий с их временем, типом, областью, местом хранения и зависимостями.

  • Логическая изоляция резервной копии

    Логическая изоляция резервной копии — отделение её управления, учётных записей и прав без обязательного физического отключения сети.

  • Набор резервного копирования

    Набор резервного копирования — данные одной успешной операции копирования, сохранённые как единое целое со своим типом, временем и границами охвата. Один набор…

  • Неизменяемая резервная копия

    Неизменяемая резервная копия — это копия, которую нельзя изменить или удалить до конца заданного срока, потому что хранилище работает в режиме WORM или под…

  • Окно резервного копирования

    Окно резервного копирования — запланированный интервал, в который задание должно начаться и обработать требуемый объём данных.

  • Политика хранения резервных копий

    Политика хранения резервных копий — правило, определяющее, какие точки восстановления и как долго сохраняются до допустимого удаления.

  • Полная резервная копия

    Полная резервная копия — это копия всех данных из заявленной области, снятая за одну операцию и не зависящая от предыдущих запусков. Она может быть базой для…

  • Правило резервирования 3-2-1

    Правило резервирования 3-2-1 — схема размещения копий данных: три экземпляра на двух разных типах носителя, причём одна копия хранится вне основной площадки. В…

  • Пробное восстановление

    Пробное восстановление — контролируемое развёртывание реальной точки восстановления в тестовой среде с измерением времени и результата.

  • Проверка после восстановления

    Проверка после восстановления — отдельный набор проверок, которым после завершения задания подтверждают целостность данных, зависимости, права и работу…

  • Проверка целостности резервной копии

    Проверка целостности резервной копии — контроль, который подтверждает, что все части копии на месте, читаются и не изменились с момента записи. Для этого…

  • Разделение ключей резервных копий

    Разделение ключей резервных копий — порядок, при котором копии шифруются своими ключами, а управляют этими ключами отдельно от ключей рабочей среды. Для…

  • Согласованная с приложением резервная копия

    Согласованная с приложением резервная копия — копия, снятая в момент, когда само приложение довело данные до целостного состояния и на короткое время…

  • Срок хранения WORM

    Срок хранения WORM — период, до конца которого записанную версию данных разрешено только читать: изменить или удалить её нельзя. Так устроен S3 Object Lock: он…

  • Точка восстановления

    Точка восстановления — конкретное сохранённое состояние и связанный набор данных, из которых выполняется восстановление.

  • Цепочка резервных копий

    Цепочка резервных копий — упорядоченный набор базовой копии и всех зависимых частей, необходимых для выбранного восстановления.

Область знаний

Распределённые данные

  • At-most-once delivery

    At-most-once delivery (доставка не более одного раза) — гарантия, при которой сообщение не выдаётся потребителю дважды, но может быть потеряно при сбое до…

  • Аномалия сериализации

    Аномалия сериализации — совместный результат зафиксированных параллельных транзакций, который невозможен ни при одном последовательном порядке тех же…

  • Асинхронная репликация

    Асинхронная репликация — режим переноса изменений на резервный сервер, при котором фиксация на основном сервере не ждёт подтверждения от реплики. Поэтому…

  • Атомарность транзакции

    Атомарность транзакции — свойство «всё или ничего»: изменения, которыми управляет транзакция, либо принимаются вместе, либо вместе отменяются. Граница правила…

  • Выбор лидера

    Выбор лидера — процедура, в ходе которой узлы распределённой группы договариваются, кто из них получит право предлагать записи журнала на ближайший срок. В…

  • Грязное чтение

    Грязное чтение — аномалия параллельной работы: транзакция видит изменение, которое другая транзакция ещё не зафиксировала. Такую версию могут отменить откатом,…

  • Двухфазная фиксация (2PC)

    Двухфазная фиксация (2PC) — протокол, по которому несколько участников распределённой транзакции приходят к общему решению. Сначала каждый участник сохраняет…

  • Долговечность транзакции

    Долговечность транзакции — сохранность подтверждённого результата при отказах, которые входят в заявленную гарантию. Поэтому гарантия имеет смысл только с…

  • Доставка не менее одного раза

    Доставка не менее одного раза — модель обмена сообщениями, при которой неподтверждённое сообщение выдаётся потребителю повторно, чтобы оно не осталось…

  • Журнал упреждающей записи (WAL)

    Журнал упреждающей записи (WAL) — журнал изменений базы, записи которого попадают в устойчивое хранилище раньше самих изменённых страниц данных. Такой порядок…

  • Идемпотентная операция

    Идемпотентная операция — операция, которую можно повторять без нового изменения состояния: несколько одинаковых запросов дают тот же предполагаемый эффект, что…

  • Изоляция транзакций

    Изоляция транзакций — это свойство параллельной работы транзакций: оно определяет, что каждая из них видит в изменениях остальных и как их чтения и записи…

  • Контрольная точка базы данных

    Контрольная точка базы данных — момент, в который база сбрасывает изменённые страницы на диск и отмечает в журнале позицию, с которой начнётся восстановление…

  • Линеаризуемость

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

  • Многоверсионное управление доступом (MVCC)

    Многоверсионное управление доступом, или MVCC, — способ организовать параллельную работу с данными через несколько версий строк. Снимок определяет видимые…

  • Неповторяемое чтение

    Неповторяемое чтение — изменение результата повторного чтения тех же данных внутри одной транзакции из-за зафиксированного изменения другой транзакции.…

  • Обработка ровно один раз

    Обработка ровно один раз — гарантия, что в заданной области повтор обработки не создаёт второй зафиксированный результат. Для этого продвижение входной позиции…

  • Отставание репликации

    Отставание репликации — разница между прогрессом основного сервера и отдельными этапами на реплике: записью, устойчивым сбросом и применением журнала. Её…

  • Принцип PACELC

    Принцип PACELC — правило, по которому распределённую базу оценивают дважды: при разделении сети — доступность против согласованности, без него — задержка…

  • Проверенное восстановление базы данных

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

  • Распределённый консенсус

    Распределённый консенсус — согласование несколькими узлами одного допустимого решения при заданной модели отказов. Для реплицируемого журнала такие решения…

  • Реплицируемый журнал

    Реплицируемый журнал — упорядоченная последовательность команд, которую протокол согласует между узлами. В Raft наличие записи в локальной копии, её фиксация в…

  • Свойства ACID

    Свойства ACID — четыре требования к транзакции базы данных: атомарность, согласованность, изоляция и долговечность. Каждое отвечает за своё: общий исход…

  • Семантика доставки сообщений

    Семантика доставки сообщений — договорённость о том, что может случиться с сообщением при сбоях: потеря, повтор или ровно один зафиксированный результат…

  • Сериализуемость

    Сериализуемость — свойство параллельного выполнения транзакций: их общий результат совпадает с результатом выполнения тех же транзакций по одной в каком-то…

  • Синхронная репликация

    Синхронная репликация — режим, в котором фиксация ждёт от требуемых реплик подтверждения заранее выбранного этапа: записи, устойчивого сброса или применения…

  • Снимок видимости транзакции

    Снимок видимости транзакции — правило выбора версий строк, доступных запросу или транзакции. В PostgreSQL он отделяет видимые зафиксированные изменения других…

  • Согласованность транзакции

    Согласованность транзакции, буква C в ACID, — требование переводить данные из одного допустимого состояния в другое, не нарушая заданных правил. Их задают…

  • Теорема CAP

    Теорема CAP — доказанное ограничение распределённой службы: при разделении сети нельзя гарантировать сразу и линеаризуемую согласованность, и ответ на каждый…

  • Транзакция базы данных

    Транзакция базы данных — группа связанных чтений и изменений, которую база выполняет как одну единицу работы. Фиксация принимает её результат целиком, откат…

  • Уровень изоляции транзакций

    Уровень изоляции транзакций — выбранный режим гарантий параллельной работы в конкретной СУБД. Он определяет допустимые аномалии и видимость данных; одинаковое…

  • Фантомное чтение

    Фантомное чтение — изменение набора строк при повторе запроса с тем же условием в одной транзакции из-за зафиксированных изменений другой транзакции. Меняется…

  • Фиксация транзакции

    Фиксация транзакции — принятие базой данных её результата по команде COMMIT. Настройки записи и репликации задают, чего база дожидается перед подтверждением;…

Из знания — в навык

Курсы области

Следующий шаг

Сформулируйте задачу и уточните требования к своей системе.

Подготовить состав проекта

Откроется черновик вопроса. Отправьте его, когда будете готовы.

Сообщить об ошибке

Опишите проблему — постараемся исправить как можно скорее.

Спасибо!

Получили ваше сообщение.
Подтвердите действие