Chapter 10

Using Third-Party Data Stores for Your Heroku Applications


  • SQL-based options
  • NoSQL-based options
  • Attaching existing data stores

You’ve already explored a few data store options in this part of the book — specifically, the Heroku Postgres and Salesforce services — but what if these don’t satisfy your requirements? Not to worry, as the Heroku platform is extensible, supporting a wide assortment of third-party data stores, many of which are available directly through the Heroku add-on ecosystem. Even if you require external data store services not provided via the Heroku add-ons library, you can attach them to your apps using configuration variables (config vars). This chapter explores several SQL and NoSQL options from the Heroku add-ons library and describes how to attach stores already in use to your Heroku apps.


Traditional or relational databases, commonly referred to SQL DBs, are one of the primary options available to your apps on Heroku. Relational SQL databases are defined by a schema consisting of various tables, each table consisting of unique columns or field names with keys that tie each table together to “relate” the data. To create, read, update, or delete any data within the database, you define statements (queries) using SQL to act on the data as desired.

There are two primary options for SQL-based databases: Postgres (explored in Chapter 8 via the Heroku Postgres service) and MySQL. This section ...

Get Professional Heroku Programming now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.