I covered persisting data earlier in this book in our user store example using an in-process database called LevelDB. While LevelDB works quite well for demo purposes, due to a very simple installation and setup, it has a very limited feature set, and isn't recognized widely as a production-ready database.
Most applications today use some of the better known and tested databases, such as MongoDB (https://www.mongodb.org/), PostgreSQL (http://www.postgresql.org/), or MySQL (https://www.mysql.com/). While this is because of the wider feature sets that they offer, it is also, as it has been proven in production environments, something of vital importance when it comes to a database. When an application crashes or runs slowly, you'll find you have some frustrated customers, but losing their data usually means you've lost them for good!
Taking this into account, I wanted to add an example to demonstrate integrating one of these databases with hapi to show that this can be done just...