Версии объектов в 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
Перенос данных как можно скорее!