Версии объектов в firebase

Я использую firebase в качестве базы данных для мобильного приложения. Мобильная версия приложения 1 с использованием определенной структуры БД. Но в версии 2 у меня есть основные изменения схемы. Я не смог найти какую-либо конкретную документацию, в которой упоминались бы лучшие методы управления обновлениями БД. Поэтому я думаю о следующих шагах, которые хорошо смотрятся на бумаге.

  • Версия приложения 1 находится в производстве с использованием firebase/v1
  • Скопировать версию 1 firebase/v1 в firebase/v2
  • Обновление схемы firebase/v2
  • Отключить операции записи в firebase/v1
  • Распределите приложение v2, указывающее на firebase/v2

С помощью этих шагов пользователи со старыми версиями приложения смогут читать только данные. Поэтому, если они не обновляют приложение, они не смогут изменять какие-либо данные.

Я иду в правильном направлении при управлении обновлениями схемы? Или есть лучший способ сделать это.

Ответ 1

Используйте функции базы данных облачных функций для переноса данных из db/v1 в db/v2. При обновлении события в db/v1 вы можете записывать в db/v2 параллельно, чтобы все активные пользовательские данные могли перемещаться в db/v2.

https://firebase.google.com/docs/functions/database-events

Перенос данных как можно скорее!