Cuando tiene datos extremadamente grandes, es probable que desee evitar uniones. Esto se debe a que la sobrecarga de una búsqueda de clave individual es relativamente grande (el servicio necesita averiguar qué nodo (s) consultar y consultarlos en paralelo y esperar respuestas). Por sobrecarga, quiero decir latencia, no limitación de rendimiento.
Esto hace que las uniones realmente mal, ya que es necesario hacer muchas búsquedas de claves externas, que terminarían yendo a muchos, muchos nodos diferentes (en muchos casos). Entonces querrías evitar esto como un patrón.
Si no ocurre muy a menudo, probablemente puedas recibir el golpe, pero si vas a querer hacer muchos de ellos, puede valer la pena "desnormalizar" los datos.
El tipo de cosas que se almacenan en las tiendas NoSQL suele ser bastante "anormal" en primer lugar. No es raro duplicar los mismos datos en todo tipo de lugares diferentes para facilitar las búsquedas.
Además, la mayoría de los nosql no (realmente) admiten índices secundarios, lo que significa que tiene que duplicar cosas si desea consultar por cualquier otro criterio.
Si está almacenando datos como empleados y departamentos, realmente está mejor con una base de datos convencional.
¿Desea una operación * SQL * JOIN o UNION en un producto llamado * NoSQL *? – gbn
Simple, usa playOrm y une particiones (las particiones suelen tener menos de 1 millón de filas pero la tabla puede ser infinita) y funciona bien. –