Восстановление на определенный момент времени (PITR) защищает от случайного удаления или записи. PITR сохраняет версии ваших документов с прошлых временных меток. Например, в случае, если разработчик загрузит некорректные данные, произойдет случайное удаление или запись, PITR может восстановить данные на определенный момент времени в прошлом (максимум до 7 дней).
Для любой работающей базы данных, соответствующей передовым практикам , использование PITR не влияет на производительность операций чтения или записи.Окно PITR
После включения функции PITR Cloud Firestore начинает сохранять данные PITR. Данные PITR хранятся в течение 7 дней в рамках временного окна PITR.
Вы можете считывать данные по временной метке, основанной на времени включения функции PITR:
| статус активации PITR | Самые ранние доступные данные PITR | |
|---|---|---|
| Неполноценный | за 1 час до времени запроса на чтение | |
| включено в течение 7 дней | За 1 час до включения PITR | |
| включено более 7 дней назад | за 7 дней до момента запроса на чтение |
В окне PITR сохраняется только одна версия в минуту. Вы можете читать документы с точностью до минуты, используя метку времени, равную полной минуте. Чтение с точностью до минуты, например, 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 .
You can read from the data created during the PITR window. The data is stored at a minute granularity and you can recover data at the same granularity. The PITR feature is disabled by default.
Поле earliestVersionTime вашей базы данных указывает самое раннее допустимое время для чтения ваших данных.
Независимо от того, включена функция PITR или нет, вы можете читать (но не экспортировать) документы с любой временной меткой с точностью до микросекунды в течение последнего часа, но не раньше, чем earliestVersionTime .
Способы восстановления данных
Существует несколько способов восстановления данных:
To recover a portion of the database , perform a stale read specifying a query-condition or using direct key lookup along with a timestamp in the past, and then write the results back into the live database. This is typically used for surgical operations on a live database. For example, if you accidentally delete a particular document or incorrectly update a subset of data, you can recover it with this method. For instructions, see recovering a portion of your database .
Для восстановления всей базы данных воспользуйтесь одним из следующих вариантов:
Клонируйте базу данных , чтобы создать ее копию в определенный момент времени.
Экспортируйте базу данных, указав временную метку в прошлом, а затем импортируйте ее в новую базу данных. Операция экспорта PITR поддерживает все фильтры, включая экспорт всех документов и экспорт отдельных коллекций.
Вы можете клонировать или экспортировать данные PITR, где временная метка представляет собой целую минуту за последние семь дней, но не раньше, чем
earliestVersionTime.
Цены
Перед включением PITR для вашей базы данных ознакомьтесь со следующей информацией о ценах:
Хранение: Cloud Firestore ежедневно измеряет размер базы данных. За месяц эти значения усредняются для расчета размера хранилища базы данных. Это среднее значение умножается на стоимость единицы PITR (ГБ-месяц). Дополнительную информацию см. в разделе «Цены на хранение» .
В хранилище PITR нет бесплатного тарифа, и для его использования необходимо включить оплату.
Расчет стоимости вычислений: За любые запросы, выполняемые в течение 7-дневного периода PITR (последние 7 дней), будь то запросы на чтение устаревших данных или экспорт, взимается плата за операции чтения, рассчитываемая исходя из количества прочитанных документов. Дополнительную информацию см. в разделе «Цены» .
Минимальный срок оплаты: с вас может быть списана плата за хранение данных в рамках функции PITR за 1 день, даже если вы отключите PITR в течение суток после его включения.
Что дальше?
- Узнайте больше о том, как восстанавливать данные с помощью PITR .