SQL o NoSQL para el desarrollo de aplicaciones móviles con Django

Planeamos desarrollar una aplicación móvil, generalmente iPhone y Android, así como un sitio web. La aplicación del servidor normalmente se desarrollará con el gran framework Django. En términos de características, la aplicación:

  • Ser multilingue
  • Permita que los usuarios creen su propia aplicación interna. Básicamente, suscríbase a módulos para personalizar las características del sitio web
  • Permita que los usuarios personalicen la apariencia de la aplicación web
  • Con suerte, tratar con un gran número de usuarios :-)

Con tales características, nuestro proyecto parece ser bastante complejo en términos de esquema relacional de base de datos. Debido a que se ejecuta con un presupuesto muy bajo, queremos que sea ágil y el esquema de la base de datos relacional estará sujeto a cambios durante un tiempo considerable. Si usamos Django, automáticamente viene con una muy buena integración SQL - ORM e interfaz de administración.

¿Cuál sería su consejo para nuestro DBMS? ¿Deberíamos ir con una base de datos SQL (integrada con Django) y cambiar el esquema de vez en cuando (¿doloroso?)? ¿O vale la pena optar por bases de datos NoSQL como MongoDB y / o dejar de usar Django?

Muchas gracias por tus consejos.

preguntado el 27 de agosto de 11 a las 17:08

¿No es SQLite el RDBMS estándar que usan con Android? -

De hecho, estoy hablando de la base de datos en el lado del servidor de mi aplicación móvil y web. Pero tienes razón, del lado del cliente, seguramente usaré SQLite tanto para Android como para iPhone. Sin embargo, su comentario plantea una buena reflexión por mi parte: si de todos modos necesitaré un esquema SQL en el lado del cliente, que será un subconjunto de la información contenida en la base de datos del lado del servidor, ¿me veo obligado a usar también un RDBMS SQL en el servidor? lado ? -

1 Respuestas

Yo diría "elige aquel con el que tengas más experiencia, para que puedas concentrarte en hacer las cosas en lugar de buscar en Google todo".

Si me preguntas, elijo NoSQL cuando corresponda porque para mí es más sencillo de configurar, escalar y usar. Me gustan las soluciones basadas en Dynamo (por ejemplo, Riak).

Respondido 28 ago 11, 01:08

Finalmente elijo aprender Node.js junto con mongoDB. La razón es que intenté durante un tiempo hacer que Django ORM funcionara con una base de datos que no fuera de RL, pero eso fue un error. Node.js con mongoDB es rápido, escalable y perfecto para mi necesidad de crear una API RESTFUL para aplicaciones móviles. - Kevin.

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.