Quiero construir un sitio usando JavaScript, React, Express y Node. ¿Debo usar PostgresQL?

La elección estándar de almacenamiento para Node.js es MongoDB. Es muy conveniente trabajar con él, ya que utiliza (una versión de) datos JSON, que obviamente funcionan muy bien con Javascript.

Sin embargo, realmente depende de lo que quieras y necesites. Si necesita restricciones de ACID, por supuesto, no puede usar un sistema de consistencia eventual como Mongo, y es posible que desee un DBMS basado en SQL. Postgres es ciertamente una opción muy respetable. (No sé el estado de los controladores de Node.js para Postgres, pero me sorprendería si no hubiera al menos uno bueno). Si BASE es lo suficientemente bueno, entonces tal vez vaya con Mongo.

Si simplemente no lo sabe , puede tener sentido comenzar con un solo almacenamiento y construir desde allí, refactorizar para agregar los demás cuando los necesite. Entonces Postgres se convierte en una opción aún mejor, ya que tiene instalaciones nativas para trabajar con JSON. Espero que sea mucho menos incómodo comenzar con Postgres y luego, según lo exija la necesidad, refactorizar la clave / valor y las partes de almacenamiento de documentos, de lo que sería comenzar con MongoDB e intentar colocar ese modelo en Postgres.

Por supuesto, me acerco a esta respuesta desde la perspectiva de que usted preguntó qué es bueno si desea “construir un sitio”, lo que hace que parezca que sus requisitos son bastante modestos y no están muy bien definidos. Las sugerencias de Adam Gering me suenan bien, para un sistema sustancial donde necesitas todo esto. Si solo quiere sumergir los dedos de los pies en el mundo de Node.js, lidiar con tres sistemas de almacenamiento en paralelo suena innecesariamente confuso.

La elección de los almacenes de datos no está estrechamente relacionada con los marcos que está utilizando, con algunas excepciones (por ejemplo, el uso de MongoDB por parte del cliente / servidor de Meteor).

Elegiría una base de datos de documentos (por ejemplo, Mongo, RethinkDB) y una base de datos relacional (Postgres, SQL Server), y para casos de uso específicos (por ejemplo, Sesión) un almacén de clave / valor (por ejemplo, Redis).

Su base de datos realmente no importa con esa pila. Postgres es bueno si está implementando en Heroku. Si desea usar un ORM, usaría Bookshelf; Escribí una publicación de blog sobre por qué no usar Sequelize ( http://dereksakamoto.com/i-promi …). Si quieres usar MongoDB, usa Mongoose.

More Interesting

Cómo instalar MySQL en un servidor compartido usando solo FTP

Soy desarrollador web y me gustaría comenzar a programar juegos. ¿Cuáles son las diferencias y qué debo aprender primero?

Estoy creando una firma de correo electrónico en HTML, pero está en línea a la izquierda y necesito que se extienda, de borde a borde del navegador. ¿Cómo puedo hacer eso?

¿Hay alguna computadora portátil específica que deba usar para el desarrollo web?

Recientemente me colocaron en una empresa como desarrollador de PHP. ¿Debo ir por eso? Como, he oído que PHP es un lenguaje moribundo.

Soy un desarrollador full stack superior al promedio, ¿cómo obtengo mi primer cliente?

¿Puedo crear un sitio web con imágenes e información detallada para exponer un fraude de beneficios?

Si quiero ser un buen desarrollador web, ¿cuál es la secuencia correcta para aprender lenguajes de programación?

¿Cómo construiste tu primer sitio web?

Quiero desarrollar un archivo html, haciendo clic para obtener la especificación de la computadora y almacenarla en un archivo de texto. ¿Es posible? ¿Qué prog. ¿idioma?

Soy una ama de casa que está interesada en aprender programación, pero no puedo mudarme. ¿Hay algún campamento de arranque remoto con horario flexible?

Si tengo una gran cantidad de iBeacons en varias tiendas diferentes, ¿hay un servicio disponible para permitir que cada persona administre sus balizas o tengo que administrar las balizas para cada tienda yo mismo?

Aprendí SQL, JDBC, HTML CSS y JSE. Ahora quiero aprender el desarrollo web Java por completo. ¿Dónde debo comenzar a aprender completamente el Desarrollo Web Java (JSP, JSF, etc.)?

Cómo alojar sitios web JSP en GoDaddy

Estoy construyendo un sitio web que implicará trabajar con una gran base de datos. ¿Cuáles son las cosas que debo aprender para administrar la base de datos?