Antecedentes
estoy prototipos de una conversión de nuestra base de datos RDBMS a MongoDB. Mientras se desnormaliza, parece que tengo dos opciones, una que conduce a muchos (millones) de documentos más pequeños o una que conduce a menos (cientos de miles) de documentos de gran tamaño.MongoDB Schema Design: ¿muchos documentos pequeños o menos documentos grandes?
Si pudiera destilar a un simple analógica, sería la diferencia entre una colección con un menor número de documentos de clientes como esto (en Java):
class Customer { private String name; private Address address; // each CreditCard has hundreds of Payment instances private Set<CreditCard> creditCards; }
o una colección con muchos, muchos documentos de pago de esta manera:
class Payment { private Customer customer; private CreditCard creditCard; private Date payDate; private float payAmount; }
pregunta
Está diseñado para MongoDB prefieren muchos, muchos documentos pequeños o un menor número de documentos de gran tamaño? ¿La respuesta depende principalmente de las consultas que planeo ejecutar? (es decir, ¿Cuántas tarjetas de crédito tiene el cliente X? vs. ¿Cuál fue la cantidad promedio que pagaron todos los clientes el mes pasado?)
He mirado mucho pero no tropecé con ninguna de las mejores prácticas del esquema de MongoDB que ayudaría yo respondo mi pregunta