Database Engines
The databases serving as the backend for the Authentication API and MicroService API support two engines: In-Memory and PostgreSQL.
Choosing the right engine for each environment and use case lets you balance development speed with production reliability.
Engine Comparison
| Engine | Data Persistence | Recommended Environments | Primary Use |
|---|---|---|---|
| In-Memory | None (resets on restart) | TestEnv / DevelopEnv | Testing, development, demos, schema exploration |
| PostgreSQL | Yes (dedicated DB) | StagingEnv / ProductionEnv | Production operations, staging verification |
In-Memory Engine
An engine that holds data in memory.
Data resets whenever the service restarts or its lifecycle ends, which means you can always start from a clean slate.
Suitable for
- Schema design exploration — Add, remove, or change field types as many times as needed. Change freely without worrying about migrations
- Demos and presentations — Pre-load a fixed dataset, then reset after the demo to prepare for the next one
- Development verification — Insert and delete data freely without touching production data
Advantages
- Lightweight environment setup and fast startup
- Zero-cost data reset (just restart)
- Start immediately without configuring a production database
PostgreSQL Engine
An engine provisioned as a dedicated PostgreSQL database for your organization.
Because data is persisted, it provides the reliability and consistency required for production operations.
Suitable for
- Production operations — Safely store user data and business data persistently
- Staging verification — Verify behavior with a production-equivalent DB configuration before the final pre-release check
- Long-term data accumulation — Analytics, audit trails, history management, and other use cases that require continuous data retention
Advantages
- No data loss from restarts or failures
- Provisioned as a dedicated database per organization, fully isolated from other tenants
- PostgreSQL-compatible, making future data migration and external integration straightforward
Engine and Environment Combinations
| Environment | Recommended Engine | Reason |
|---|---|---|
| TestEnv | In-Memory | Ideal for repeated testing and demos. Data can be reset between runs |
| DevelopEnv | In-Memory | Develop freely with schema changes without worrying about migration |
| StagingEnv | PostgreSQL | Run final verification with a production-equivalent DB configuration |
| ProductionEnv | PostgreSQL | Data persistence and reliability are required |
Each MicroService API is provisioned with its own independent database,
so data from different APIs is never mixed together.