Solución:
El tamaño máximo es de aproximadamente 1 Megabyte, almacenar una cantidad tan grande de objetos (mapas) dentro de un solo documento es generalmente un mal diseño (y 20 millones está más allá del límite de tamaño de todos modos).
Debe reconsiderar por qué deben estar en un documento, en lugar de que cada objeto sea su propio documento.
Los límites de Cloud Firestore se enumeran en la documentación.
¿Ha mirado las subcolecciones de Firestore?
Puede almacenar el elemento principal como un documento en una colección de nivel superior y todos sus datos subyacentes podrían estar en una subcolección de ese documento.
No hay límite para la cantidad de registros de objetos que puede contener una subcolección cuando esos objetos se almacenan como documentos secundarios de esa subcolección.
Así que 20 millones de registros no deberían ser un problema.