Firestore WriteBatch - какой смысл? - PullRequest
       0

Firestore WriteBatch - какой смысл?

0 голосов
/ 09 апреля 2020

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

Это может быть глупый вопрос, но мне было интересно: если я хочу удалить, скажем, 5000 документов из серверной среды, а я нет нужно, чтобы это происходило атомарно, почему бы мне просто не удалить эти документы простым l oop вроде:

for (DocumentSnapshot randomDoc : randomQuery.getDocuments()) {
   randomDoc.getReference().delete();
}

Каковы преимущества пакетных операций помимо атомарной?

1 Ответ

2 голосов
/ 09 апреля 2020

почему бы просто не удалить эти документы простым l oop

Это потому, что вы никогда не узнаете, действительно ли некоторые операции удаления, которые вы выполняете, завершаются неудачей , Это основное преимущество пакетной записи :

В наборе операций atomi c либо все операции выполняются успешно, либо ни одна из них не применяется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...