Нет никаких «правильных» или «неправильных», когда дело доходит до моделирования. Если ваше приложение удовлетворяет ваши потребности благодаря тому, что вы реализовали, в сочетании со знанием ограничений Firestore , делайте что хотите.
Но если ваша цель - избежать 10000 записей, выполнив Дополнительный поиск, а затем во что бы то ни стало, избавьте себя от этой проблемы и затрат. Возможно, вы захотите сделать оценку стоимости или производительности обоих подходов и выбрать тот, который дешевле или быстрее, или что вам нужно из этого решения.
Имейте в виду, что существует ограничение в 500 документов в одна транзакция, поэтому если вам нужно обновить 10000 документов, вы не сможете сделать это атомарно. Вполне возможно, что некоторые документы просто не получат обновления, если ваш код не устойчив к ошибкам или неполной работе. Это может быть достаточной причиной, чтобы не раздувать запись в стольких документах.