Según su comentario sobre la cantidad de datos, recomendaré provisionalmente MongoDB. “Viene con” su propia API ORM y REST. Más importante aún, se escala bien vertical y horizontalmente (agrupamiento) y permite la flexibilidad de los tipos de datos.
Cassandra es otra gran base de datos que es bastante fácil de usar y escalable mediante clustering. Una ventaja para Cassandra desde el punto de vista del desarrollo es que es muy similar a las bases de datos relacionales a las que ya está acostumbrado. La estructura del lenguaje de consulta es similar, y el desarrollo de tablas y relaciones es similar.
Mongo, sin embargo, será más fácil para ti comenzar y aprender, creo. Es más fácil de configurar y (creo) más fácil de administrar que Cassandra. Es “sin esquema” y más flexible debido a eso, aunque viene con algunas compensaciones, como la necesidad de hacer cumplir las transacciones manualmente y (dado que no hay esquema) la necesidad de hacer cumplir la estructura de sus documentos a través de la implementación. Una buena manera de decir si necesita hacer cumplir la estructura de una colección mediante el uso de un validador (la documentación de MongoDB cubre cómo funciona esto).
- ¿Cuáles son los mejores sitios web para el marketing de afiliación?
- ¿Puedo usar Laravel o CodeIgnitor para escribir un sitio web tan bueno como AirBnB (ROR)?
- ¿Debo ir con Python o Elixir para un chatbot basado en la web?
- ¿Cuáles son las ventajas de construir un sitio personalizado sobre WordPress para bloguear?
- ¿Hay algún motor de texto a voz húngaro gratuito?
HBase probablemente sea exagerado debido a sus requisitos, y es el más complejo de los tres para implementar. Si los datos de su aplicación necesitan escalar DO más allá de lo que Mongo o Cassandra pueden manejar (y pueden manejar una gran cantidad de rendimiento y almacenamiento de datos a través de la agrupación en clústeres), entonces será hora de considerar la migración a Hadoop y HBase.
MongoDB, Cassandra y HBase: las tres bases de datos NoSQL para ver