API REST sencilla y automática para una base de datos SQL (MySQL, PostgreSQL, etc.) o DaaS

Necesito acceso API REST a mi base de datos SQL para consultas de usuarios finales en una aplicación móvil.

Estoy tratando de evitar tener que programar mi propia API REST porque vengo de un fondo de programación estadística (R, SAS, Stata) y no sería lo más fácil para mí escribir y mantener. Puedo ser flexible con respecto al tipo de base de datos SQL que se usa (MySQL, Postgres, Cloud SQL, etc.). una base de datos como servicio (DaaS) o backend móvil como servicio (MBaaS).

Idealmente, me gustaría mantener mis datos en Cloud SQL de Google (que es solo MySQL alojado por Google) para la estabilidad y encontrar una API REST automática para trabajar con ellos.

He intentado algunas cosas, pero he encontrado obstáculos en cada caso. Esto es lo que he intentado hasta ahora:

  • PostgreREST + sqitch : además de ser un poco laborioso en su configuración y tener que alojar todo yo mismo, esto no funcionó porque sqitch tuvo problemas de permisos durante la implementación. El autor de sqitch sugirió algunas soluciones, pero ninguna de ellas parece funcionar para mí.
  • Appery.io 's API Express (Beta) : estaba muy entusiasmado con esta solución y casi funcionó, pero al final el aspecto "Beta" lo mató, porque actualmente no puede manejar comparaciones de cadenas (coincidencia de patrones) y por lo tanto no puede admitir búsquedas
  • DreamFactory : otra solución cercana, esta versión alojada de "Dev Sandbox" no pudo conectarse y consultar mi base de datos, pero me dijeron que si instalaba una versión paga para alojarla en otro lugar, funcionaría. De hecho, probé esto, pero cada una de sus sugerencias para la integración con un host externo (es decir, Google Cloud a través de Bitnami, Heroku, etc.) generó un mensaje de error en algún momento, que no solo creó un obstáculo sino que también me hizo cuestionar qué tan estable y bien desarrollado esto realmente es.

Respuestas (1)

He probado un par de soluciones para esto antes, incluida la escritura de mi propio servidor Node.js que redirige las llamadas a una tabla MongoDB y almacena las respuestas como objetos. Es fácil y simple, pero no tienes control sobre nada.

Si lo hiciera hoy, usaría una aplicación Symfony 2 con Rest Bundle de Stan Lemon . Una aplicación de Symfony 2 es bastante extensible, si falta algo en el paquete, simplemente agréguelo. Y la forma expresiva de describir los modelos de Doctrine es fácil para los principiantes y bastante poderosa una vez que se llega a conocer. Como beneficio adicional, puede usar un generador para crear una interfaz de administración de AngularJS para sus modelos.