Firebase Cloud Firestore дает вам ограничения на количество операций записи и чтения (и удаления) документов. Например, план искры (свободный) позволяет 50 000 операций чтения и 20 000 операций записи в день. Оценка количества операций записи и чтения, очевидно, важна при разработке приложения, так как вы захотите узнать возможные расходы.
Часть этой оценки точно знает, что считать документом чтение / запись. Эта часть не совсем понятна при поиске в Интернете.
Один документ может содержать много разных полей, поэтому, если приложение разработано таким образом, что пользовательские действия, выполняемые в течение сеанса, требуют обновления полей в одном документе, было бы экономически эффективным обновление всех полей в одном запись документа в конце сеанса, а не запись документа каждый раз, когда пользователь хочет обновить одно поле?
Точно так же, не имеет ли смысла читать документ один раз в начале сеанса, получать значения всех полей, а не читать их, когда необходимо каждое из них?
Я ценю, что этот метод приведет к тому, что пользователь увидит слегка устаревшие значения полей, и база данных не будет обновлена, правда, но если такие вещи не слишком беспокоят вас, не мог бы такой способ уменьшить чтение / запись по большому коэффициенту?
Все это зависит от того, что считать записью / чтением документа (записывает ли 20 полей в одном и том же документе за один проход как 20 записей?).