Общие сведения о восстановлении на определенный момент времени (PITR)

Восстановление на определенный момент времени (PITR) защищает от случайного удаления или записи. PITR сохраняет версии ваших документов с прошлыми временными метками. Например, если разработчик передаст неверные данные, случайно удалит или запишет их, PITR может восстановить данные на определенный момент времени в прошлом (максимум за 7 дней).

Если база данных соответствует рекомендациям, использование PITR не влияет на производительность чтения и записи.

Окно PITR

После включения PITR Cloud Firestore начинает сохранять данные PITR. Данные PITR хранятся в течение семи дней в окне PITR.

Вы можете прочитать данные для временной метки, основанной на том, когда было включено восстановление на определенный момент времени:

Статус включения PITR Самые ранние доступные данные PITR
Отключено За 1 час до времени запроса на чтение.
включена в течение 7 дней За 1 час до включения восстановления на определенный момент времени
включена более 7 дней назад; За 7 дней до времени запроса на чтение.

В окне восстановления на определенный момент времени сохраняется одна версия в минуту. Вы можете читать документы с точностью до минуты, используя временную метку целой минуты. Если в запросе на чтение не указана детализация по минутам, например 2023-05-30 09:00:00.1234AM, возвращается ошибка, сообщающая, что значение read_time слишком старое.

При нескольких записях сохраняется только одна версия документа. Например, если в документе было несколько записей в диапазоне от v1, v2, ... vk между временными метками 2023-05-30 09:00:00AM (не включительно) и 2023-05-30 09:01:00AM (включительно), запрос на чтение с временной меткой 2023-05-30 09:01:00AM возвращает версию документа vk.

Вы можете считывать данные, созданные в течение окна PITR. Данные хранятся с точностью до минуты, и вы можете восстановить их с той же точностью. По умолчанию функция PITR отключена.

Поле earliestVersionTime в базе данных указывает на самое раннее допустимое время чтения данных.

Независимо от того, включено ли восстановление на определенный момент времени, вы можете читать (но не экспортировать) документы с любой временной меткой с точностью до микросекунды за последний час, но не ранее earliestVersionTime.

Способы восстановления данных

Есть несколько способов восстановить данные:

  • Чтобы восстановить часть базы данных, выполните устаревшее чтение, указав условие запроса или используя прямой поиск по ключу вместе с временной меткой в прошлом, а затем запишите результаты обратно в активную базу данных. Обычно это используется для точечных операций в активной базе данных. Например, если вы случайно удалили документ или неправильно обновили набор данных, вы можете восстановить их с помощью этого метода. Инструкции приведены в статье Как восстановить часть базы данных.

  • Чтобы восстановить всю базу данных, воспользуйтесь одним из следующих вариантов:

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

    • Экспортируйте базу данных, указав временную метку в прошлом, а затем импортируйте ее в новую базу данных. Операция экспорта PITR поддерживает все фильтры, включая экспорт всех документов и экспорт определенных коллекций.

    Вы можете клонировать или экспортировать данные PITR, временная метка которых относится к целой минуте в течение последних семи дней, но не ранее earliestVersionTime.

Цены

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

  • Хранилище. Cloud Firestore ежедневно измеряет размер базы данных. Затем вычисляется среднее значение за месяц. Это среднее значение умножается на цену за единицу PITR (ГБ-месяц). Подробнее о ценах на хранилище…

    Для хранилища PITR нет бесплатного плана, и если вы хотите использовать PITR, у вас должно быть включено выставление счетов.

  • Расчет оплаты. Любые запросы, которые вы делаете в течение 7-дневного окна PITR, будь то устаревшие чтения или экспорт, влекут за собой затраты на операции чтения в зависимости от количества прочитанных документов. Подробнее о ценах…

  • Минимальная оплата. С вас может взиматься плата за хранение данных для восстановления на определенный момент времени в течение одного дня, даже если вы отключите эту функцию в течение дня после ее включения.

Дальнейшие действия