¿Es MongoDB una buena opción para la aplicación Quiz con millones de usuarios?

La elección de SQL / NoSQL tiene que ver con el grado de relaciones entre sus datos, ya sea dentro de las tablas y entre las diferentes tablas.

Si no tiene un alto grado de relación entre diferentes entidades / tablas, entonces NoSql, es probable que las soluciones consistentes sean la mejor opción.
Si necesita ejecutar muchas UNIONES … bueno, debe repensar su arquitectura de datos o necesita una solución SQL.

Las bases de datos SQL suelen ser más difíciles de escalar, debido a las propiedades de ACID. Además, escalar datos es difícil, escalar transacciones es más fácil: si tiene una alta relación lectura / escritura, puede usar una copia maestra para escribir y mantener las réplicas sincronizadas (en cuestión de segundos) para las lecturas.

Las soluciones NoSQL definitivamente escalan mejor. MongoDB es una buena solución, tiene pros y contras, también hay algunas publicaciones sobre eso en Quora.

Si pudiera, ¿por qué no pruebas Redis en su lugar? En mi humilde opinión, una de las mejores soluciones en el mercado. Y es gratis, por supuesto.

Puede manejar la concurrencia con ambos … otro consejo: use bloqueos solo cuando sea necesario e intente encontrar un buen equilibrio en el “tamaño” del bloqueo … idealmente trate de bloquear la fila individual, como máximo la página, no la tabla (de lo contrario, creará un cuello de botella)