Database engines
DipDup officially supports SQLite, PostgreSQL and TimescaleDB as a database engine. This table will help you choose a database engine that mostly suits your needs.
SQLite | PostgreSQL | TimescaleDB | |
---|---|---|---|
Recommended versions | latest | 14, 15 | 14, 15 |
Best application | early development | general usage | working with timeseries |
SQL scripts | ✅ | ✅ | ✅ |
Immune tables | ⚠ | ✅ | ✅ |
Hasura integration | ❌ | ✅ | ✅ |
By default DipDup uses in-memory SQLite database that destroys after the process exits.
Warning
Immune tables support for SQLite is experimental and requires advanced.unsafe_sqlite
flag set. Use this feature only for early experiments with database structure, and switch to PostgreSQL/TimescaleDB later.Latest PostgreSQL and TimescaleDB versions are recommended due to significant performance improvements in recent releases (see Feature matrix page).
Usually it's okay to use different database engines for development and production, but be careful with SQL scripts and column types that can behave differently.
Help and tips -> Join our Discord
Ideas or suggestions -> Issue Tracker