DEV Community

Cover image for Why We Built Atlas4D: The Missing 4D Data Platform
crisbez
crisbez

Posted on

Why We Built Atlas4D: The Missing 4D Data Platform

If you've ever built a system that tracks things moving through space and time, you know the pain:

  • Geographic data lives in PostGIS
  • Time-series metrics go to InfluxDB or TimescaleDB
  • Vector embeddings for ML need pgvector or Pinecone
  • Real-time alerts require yet another system

You end up with 4-5 databases, complex ETL pipelines, and queries that span multiple systems just to answer: "What anomalies happened near the airport in the last hour?"

We call this the 4D fragmentation problem — where the four dimensions (latitude, longitude, altitude, time) are scattered across incompatible systems.

Our Approach: One Database, Four Dimensions

Atlas4D unifies everything in PostgreSQL:

PostgreSQL 16
├── PostGIS      → Spatial queries, geometry, H3 hexagons
├── TimescaleDB  → Time-series, automatic partitioning
├── pgvector     → ML embeddings, semantic search
└── JSONB        → Flexible metadata, no schema migrations
Enter fullscreen mode Exit fullscreen mode

One query language. One connection. One backup strategy.

-- Find anomalies near Sofia in the last 6 hours
SELECT * FROM atlas4d.anomalies a
JOIN atlas4d.observations_core o ON a.observation_id = o.id
WHERE o.t > NOW() - INTERVAL '6 hours'
AND ST_DWithin(o.geom, ST_MakePoint(23.32, 42.69)::geography, 10000);
Enter fullscreen mode Exit fullscreen mode

No joins across databases. No data synchronization nightmares.

Who Is Atlas4D For?

Data Engineers building real-time spatiotemporal pipelines who are tired of maintaining 5 different databases for one use case.

GIS/Geo Developers who need time-series and vector search alongside their spatial data, without leaving PostgreSQL.

Telecom & ISP Teams monitoring network infrastructure — OLTs, switches, CPE devices — with spatial context and anomaly detection.

Smart City Projects analyzing mobility patterns, traffic flow, and urban sensors in a unified platform.

What Makes Atlas4D Different?

1. Natural Language Queries (NLQ)

Ask your data in plain language:

"Какво е времето в Бургас?"
"Show threats near the airport"
"Покажи аномалии от последния час"
Enter fullscreen mode Exit fullscreen mode

The NLQ engine understands Bulgarian and English, translating to optimized queries.

2. Multi-Domain on One Engine

The same Atlas4D core handles:

Domain Data Types
Mobility Vehicles, sensors, cameras
Telecom OLTs, switches, CPE, traffic metrics
Airspace Radar tracks, ADS-B, drones

Switch between domains with a dropdown — the underlying 4D engine is identical.

3. Observability from Day One

Every Atlas4D deployment includes Prometheus metrics, Grafana dashboards, and health endpoints. You don't bolt on monitoring later — it's built in.

4. ML-Ready Architecture

  • Trajectory embeddings via sentence-transformers
  • pgvector for similarity search
  • Anomaly scoring with configurable thresholds
  • LSTM forecasting for predictive alerts

Try It Now

# Clone
git clone https://github.com/crisbez/atlas4d-base

# Start
cd atlas4d-base && docker compose up -d

# Load demo data
docker compose exec postgres psql -U atlas4d_app -d atlas4d \
  -f /docker-entrypoint-initdb.d/seed/demo_burgas.sql

# Open the map
open http://localhost:8091
Enter fullscreen mode Exit fullscreen mode

Time to first map: ~5 minutes ⏱️

What's Next?

We're building Atlas4D to be the "Linux of 4D spatiotemporal platforms" — a solid open foundation that organizations extend for their specific domains.

Roadmap:

  • Kubernetes Helm charts
  • RAG integration for document-aware queries
  • Python SDK (already available!)
  • Real-time WebSocket streaming

🚀 Get Started

Star the repo — helps others discover Atlas4D

⬇️ Quick Start Guide — 5 minutes to first map

🐛 Open an issue — your feedback shapes the roadmap


Atlas4D is built by Digicom Ltd, a technology company based in Bulgaria focused on spatiotemporal intelligence and network analytics.

Top comments (0)