SQLite on Scalingo

Introduction

Different technologies, especially Ruby on rails are using the SQLite database by default. SQLite is perfect for getting started in your project, it’s lightweight, requires no configuration and is backed by small files on disks. While it’s a good way to start, it is not usable in production.

Limitations of SQLite

Disk backed storage

SQLite writes files locally on disk, which does not fit Scalingo’s operating model. In our Platform as a Service definition, your application should be restartable at any moment and should consider its local file system as ephemeral. As a result, when you redeploy your application or if your application is restarted, SQLite data would be lost.

Does not scale

As a consequence of the previous point, the locally stored database is not accessible through the network. And when the time comes to scale out your application, your containers won’t be able to access the same data. So even if the disks were persistent, SQLite would not be a good fit.

Solutions

Instead of using SQLite, we are providing you the choice among our ‘Database as a Service’ addons

  • MongoDB
  • PostgreSQL
  • MySQL
schedule 23 Jun 2015