Can we run this ourselves? Yes. Here is the sizing.

Datris runs anywhere Docker runs. An evaluation fits on an 8 GB host with a 2 GB heap. Production wants more, and most of the stack is optional. Nobody gets budget approved without a table, so here is the table.

Sizing

ProfileHostJVM heapNotes
Evaluation / demo8 GB RAM, 4 vCPU, 40 GB disk2 GBPostgres+pgvector, MinIO, MCP server, Assistant. Kafka, Spark, ActiveMQ, and the bundled embedding model off.
Recommended production16 GB RAM, 8 vCPU, 200 GB disk4 GBFull stack on one node. Room for the bundled embedding model and concurrent taps.
High availability3 nodes × 16 GB RAM, 8 vCPU4 GB per nodePlatform services on the nodes; Postgres, MongoDB, and object storage run externally (managed or your own clusters).

Figures are starting points. The docs sizing page has per-component detail and tuning.

What is optional

ComponentWhen you need it
Apache KafkaOnly for streaming sources and Kafka destinations.
Apache SparkOnly for distributed transformations on large batches.
ActiveMQOnly for the message-queue destination.
Vector storesQdrant, Weaviate, Milvus, Chroma are optional; pgvector ships in the base Postgres.
Snowflake / DatabricksExternal accounts, not services Datris runs. Only if you land data there; credentials go in Vault.
OllamaOnly for local models in air-gapped deployments. Otherwise the AI features use a hosted provider key.
Bundled embedding modelThe 2.2 GB bge-m3 model is needed only for air-gapped embeddings; otherwise use a hosted embedding provider.
Prometheus / GrafanaOnly if you want metrics scraped and the shipped dashboard. The platform runs without them.

Profiles are selected with COMPOSE_PROFILES and per-component enable flags. The demo profile is the default for the one-command install.

Reference shape 1 · Single-node pilot

One host. Docker Compose. Postgres with pgvector, MinIO, MongoDB, Vault, the platform services, the MCP server, and the Assistant. Everything else off. This is the shape most teams evaluate on and many run in production for a single data team.

curl -fsSL https://get.datris.ai/install.sh | sh

Then open http://localhost:4200 in your browser.

Reference shape 2 · HA production

Platform services on three nodes behind a load balancer. State moves out: managed or self-run Postgres, MongoDB, and S3-compatible object storage. Vault runs as your existing Vault cluster or a dedicated one. The optional components above, such as Kafka, Spark, ActiveMQ, or a dedicated vector store, join only if the workload needs them.

Operating it

  • Metrics. Prometheus endpoints on every service; a Grafana dashboard ships in the repo.
  • Audit to SIEM. The audit log mirrors to your SIEM and exports to CSV.
  • Orchestration. An Airflow provider triggers and monitors Datris pipelines from your existing DAGs.
  • Air-gapped. Local models via Ollama and the bundled embedding model; no telemetry and no required outbound calls. See Security.