Datastore
Overview
Section titled “Overview”A datastore represents a logical grouping of enums, embeddables, and entities. It associates with a database type such as Postgres, Clickhouse, or Apache Age. Multiple datastores per product are supported, and upon deployment to an environment, products connect to all configured datastores. The Data API block automatically generates REST and GraphQL APIs based on datastore entities.
Configuration Example
Section titled “Configuration Example”injectdatastore: alm2defaultdatastore: alm3datastores: - name: alm path: alm prefix: alm_ database: name: postgres min-version: 15 inject: true injectservices: - iam - name: alm-analytics path: alm-analytics database: name: clickhouse min-version: 22 inject: trueThe prefix attribute adds a specified value before all table or collection names (e.g., entity “task” becomes table “alm_task”).
Default Datastore
Section titled “Default Datastore”The Data API serves multiple datastores via /data/rest/:entity and /data/graphql endpoints. Default datastore entities are served automatically. Access other datastores using the datastore query parameter: /data/rest/:entity?datastore='alm-analytics'.
Supported Databases
Section titled “Supported Databases”| Database | Slug | Description | Versions |
|---|---|---|---|
| Postgres | postgres | Relational workloads with GIS and Vector extensions | 14, 15, 16 |
| Clickhouse | clickhouse | Analytical workloads | 23, 24 |
| DuckDB | duckdb | In-memory OLAP database | 1.0.0 |
| Apache Age | age | Graph database | 1.5.0 |