Schema & Data Orchestrator

Design the schema.
The data takes care of itself.

SDO is a schema creator first. You describe the structure — field names, types, constraints, relationships — and realistic records come out the other end. No scripts, no wrangling, no maintenance.

Try the Schema Creator Browse templates
schema · 100,000 records · 1.4s
POST /v1/submit
{
  "generator": "schema_generator",
  "count": 100000,
  "schema": {
    "user_id": { "type": "uuid" },
    "full_name": { "type": "full_name" },
    "email": { "type": "email" },
    "status": { "type": "enum", "values": "active:70, trial:20, churned:10" },
    "balance": { "type": "amount", "min": 0, "max": 5000 },
    "created_at": { "type": "datetime" }
  }
}

{ "task_id": "task_a7f3k2...", "status": "PENDING" }
35+
Field types in the schema creator
1M+
Records generated per task
< 2s
Median generation time
Schema combinations

The schema is the product.
Data is what comes out.

Most tools ask you to write generation scripts. SDO asks you to describe structure. Once you have the schema, the data follows automatically — at any volume.

Visual Schema Creator

Add fields, choose types, set constraints — all in a drag-and-drop editor. No code, no YAML, no config files. The schema you design is exactly what gets generated. Preview sample output before committing to a full run.

Open Schema Creator

Schema Marketplace

Start from a ready-made schema — Bank Account, Patient Record, Transaction Log — and customise it to your needs. Open any template directly in the Schema Creator with one click.

Nested & Relational Schemas

Define parent-child relationships with referential integrity. Child records reference parent field values and respect inherited date ranges. Model real data hierarchies without writing joins.

Derived Fields

Declare fields that intelligently branch based on a sibling field's value. Gender-correlated names, status-conditional amounts, role-based email domains — expressed as a schema rule, never as a script. The worker resolves dependency order automatically.

"first_name": { "type": "derived", "on": "gender",
  "cases": { "M": {"type":"first_name","source":"…male.json"} } }

dbt Model Generation

One schema. Four production-ready dbt layers — automatically. Bronze casts, silver validation, gold aggregations, and a quality monitoring model are all generated and wired together. No hand-editing, no boilerplate.

Bronze Typed casts · _ingested_at · _pipeline_run_id
Silver Per-field validation flags · _quality_score · dedup
Gold Dimensional aggregations over valid rows only
Quality validity_rate · below_threshold · per-run history
9 singular tests auto-generated
PK uniqueness · cross-layer consistency · null rates · volume check · quality threshold · numeric ranges · enum values · datetime sanity · string format (email, URL, phone)
Files written for "patient"
models/sdo_generated/
  bronze/
    stg_patient.sql
    schema.yml ← not_null, accepted_values
  silver/
    int_patient_validated.sql
    schema.yml ← range, enum tests
  gold/
    mart_patient_summary.sql
  quality/
    qm_patient_metrics.sql
    schema.yml ← validity_rate 0–1
tests/sdo_generated/
  test_patient_pk_uniqueness.sql
  test_patient_volume_check.sql
  test_patient_quality_threshold.sql
  test_patient_string_formats.sql
  + 5 more depending on field types

Pull-Based Worker Fleet

Workers run behind your firewall — no inbound ports required. They poll the orchestrator, generate locally, and push results back. Compute scales independently of the API surface.

Async & Chunked Delivery

Submit a task and get a task ID immediately. Large results stream back in chunks — no gateway timeouts, no memory pressure on the client side. Poll at your own pace.

HMAC-Secured Worker Auth

Workers authenticate with per-request HMAC-SHA256 signatures. Replay-protected with a 5-minute timestamp window. No long-lived credentials sitting on worker machines.

Schema in. Records out. Four steps.

The heavy lifting happens on the worker side. You only ever touch the schema.

01

Design your schema

Use the visual Schema Creator or POST a JSON schema with field types, constraints, and weighted distributions.

02

Task queued instantly

The orchestrator creates a task and returns a task ID in milliseconds. No waiting at submit time — the call is non-blocking.

03

Worker generates

A compute worker polls, claims the task, generates every record against your schema, and pushes the result back.

04

Your data arrives

Poll the status endpoint or watch the dashboard. Download as JSON, stream via the paginated data API, or consume it in your pipeline.

✏️
Schema Creator
UI or API
SDO Orchestrator
Task queue · Public
⚙️
Compute Worker
Private · Pull-only
📦
Your Records
JSON · paginated API

35+ types ready to drop
into any schema

Every type accepts options. Mix platform asset word lists with inline weighted values — the schema language is expressive by default.

// weighted distribution
"domains": "domains.json:0.6,
  gmail.com:0.3,
  outlook.com:0.1"
Person
first_name last_name full_name middle_name
Contact
email phone mobile
Location
address city country postcode coordinates
Finance
credit_card_number iban currency_code amount
Internet
domain url username ip_address
Primitives
uuid int float datetime enum bool pattern
Advanced
derived branches on another field dbt model auto-generated from schema

Pay for what you generate

The Schema Creator is free to use. Generation costs apply when you run a task. Start with the demo, no sign-in needed.

Demo
Free

Try the Schema Creator immediately. No account, no credit card.

  • Full Schema Creator access
  • Up to 100 records per run
  • Up to 8 schema fields
  • All field types included
  • Schema Marketplace templates
Open Schema Creator
SDK / Enterprise
Custom

Local generation via SDK. Zero egress costs. For high-volume or air-gapped environments.

  • pip install sdo client SDK
  • Generation runs on your machine
  • Asset library cached locally
  • On-premise worker support
  • SLA + priority support
  • Flat monthly pricing
Contact us

Start with a schema. The data will follow.

No account needed for the demo. Open the Schema Creator, define your fields, and generate up to 100 records right now.

Open Schema Creator — free Browse schema templates

Demo: up to 100 records  ·  8 fields  ·  no sign-in required