Appendix C. Working with Databases in Node Projects
Most real-world applications rely on databases to store and retrieve data. This appendix introduces essential data tools used in Node projects—from full-featured databases like MongoDB, PostgreSQL, and SQLite, to supporting services like Redis and RabbitMQ that handle caching and message queues.
You’ll learn how to install and connect to each database, work with ORMs like Mongoose and Sequelize, and understand key data modeling concepts like schemas, collections, and documents. You’ll also compare local and cloud-hosted options and explore when to use each tool based on your app’s needs—whether you’re building a quick prototype, a scalable web API, or a background task processor.
Why Databases Matter
Databases allow applications to persist data between sessions, handle user input, and retrieve information efficiently. Node supports a wide range of database types and drivers. Choosing the right one depends on your project’s scale, complexity, and the structure of your data.
Modern apps need to store lots of data, like user information, products, or transactions. Without a database, you’d have to use temporary storage (e.g., in-memory variables), which loses data every time the server restarts. A database helps maintain data consistency, supports complex queries, and scales as your app grows.
In this appendix, we’ll cover:
- MongoDB
-
A NoSQL document-oriented database ideal for flexible, JSON-like data
- PostgreSQL
-
A relational ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access