Вы можете создать цепочку на глубину до максимум 100 подколлекций. Согласно официальной документации по использованию и ограничениям .
Максимальная глубина вложений: 100
По вашему вопросу:
Есть ли преимущество использования подколлекций над коллекциями корневого уровня?
Насколько я знаю, Firestore может так же быстро найти узел на уровне 1, как и на уровне 100. Поэтому для обычной базы данных глубина не должна быть фактором, влияющим на скорость на техническом уровне. ИМХО, лучше, чтобы данные были как можно более плоскими.
Что касается вашего второго вопроса, вы можете хранить либо объекты, либо просто ссылки, но прежде чем принимать решение, я рекомендую вам ознакомиться с некоторыми подробностями, которые можно найти в моем ответе из этого сообщения .