writing

From the team.

Engineering notes, customer stories, design decisions.

Filter
29 posts
Engineering · Jul 14, 2026

How a graph database works vs joins

A relational database re-derives relationships with joins at query time; a graph database stores them as structure and walks them. When each one wins.

Engineering · Jul 14, 2026

How vector search works: HNSW explained

Embeddings turn meaning into geometry. A plain-language walk through similarity metrics, why brute force dies at scale, HNSW, and what quantization costs.

Architecture · Jul 8, 2026

The token economy and your AI bill

Token spend is now a governed line item, and its biggest driver is missing context: an under-informed model retries, over-prompts and calls other models.

Architecture · Jul 1, 2026

Why the database is now multi-modal

SQL, vector, graph, full-text and natural-language queries usually mean five systems kept in sync. A multi-modal database answers all five on one copy.

Engineering · Jun 22, 2026

One database, every query shape

OriginChainDB answers SQL, vector, full-text, graph and natural-language queries from one managed store, with the same write visible to every shape atomically.

Engineering · Jun 7, 2026

Multi-region cold standby at $5/month

How we cut per-tenant multi-region DR from ~$78/month to ~$5–15/month by dropping the standby host, and what it costs: RTO ~10–15 min, RPO ≤60 s.

Engineering · Jun 6, 2026

Fuzzing a database: 850,000 probes/day

A 24/7 fuzz canary fires ~10,000 random API probes a minute at a live engine. The 14 generator families, the invariants it asserts, and what it misses.

Engineering · Jun 6, 2026

Window functions, correlated subqueries

OriginChainDB's SQL surface now has ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD and aggregate OVER, plus correlated EXISTS, IN and scalar subqueries.

Engineering · May 26, 2026

RAG at 10M documents: version skew

In a four-database RAG stack the vector, BM25 posting and row text of one chunk can commit at different versions - and the faithfulness check grades the skew.

Performance · May 13, 2026

From a 20-second dashboard to 300 ms

Reading a tenant credential over a remote command cost 4-15 seconds per dashboard page. A managed parameter store cut it to ~150 ms. The migration path.

Tutorials · May 12, 2026

Automatic Idempotency-Key in the SDK

Every mutating SDK call now ships an Idempotency-Key UUID you never type. The bounded-cache check that had to land first, and how the dedupe path works.

Tutorials · May 6, 2026

Agent memory economics: 100M tool calls

An agent at 100M tool calls/month writes ~50 GB of traces, but LLM inference is 99.8% of the bill. The four levers that actually move agent memory cost.

Architecture · May 6, 2026

Write backpressure: 429 + Retry-After

OriginChainDB refuses overload with HTTP 429 and a Retry-After computed from the token bucket's refill schedule. The per-API-key limits, and retry code.

Comparisons · May 6, 2026

OriginChainDB vs Redis: when each fits

Redis serves point reads from RAM; its default AOF setting can lose a second of writes. Every OriginChainDB commit is durable before the API returns.

Comparisons · May 6, 2026

OriginChainDB vs Supabase: when each fits

Supabase bundles Postgres with auth, storage, realtime and edge functions. OriginChainDB is only the database layer, built for AI-shaped data. Where each fits.

Tutorials · May 5, 2026

AI feature cost at 100K to 10M users

A per-user cost model for an AI feature: LLM tokens are 95% of the bill, embeddings 3%, the database 2%. Line items at 100K, 1M and 10M users.

Tutorials · May 5, 2026

Idempotent tool calls for agent loops

Agent tool calls with side effects get retried and duplicated. The idempotency-key playbook: atomic compare-and-set, per-key TTL, and wait-for-result.

Architecture · May 5, 2026

Do you need a separate vector database?

A separate vector database means dual-writing the entity and its embedding. Storing vectors as another shape in one substrate makes both writes atomic.

Tutorials · May 5, 2026

Per-key TTL: agent memory that forgets

Per-key TTL lets each record expire on its own: a ttl in seconds on any write, invisible to reads at expiry, compacted in the background. Maximum 365 days.

Tutorials · May 5, 2026

RAG latency budget: where the time goes

A 2-second conversational RAG loop spends 500-2000ms in the LLM call; embed, ANN, hydrate and prompt should fit under 250ms combined.

Comparisons · May 5, 2026

OriginChainDB vs DynamoDB: when each fits

DynamoDB stores vectors as opaque attributes and needs a sidecar ANN service; OriginChainDB commits the entity and its vector in one transaction.

Comparisons · May 5, 2026

OriginChainDB vs Pinecone: when each fits

Pinecone holds the vector and assumes the entity lives elsewhere, so you dual-write. OriginChainDB writes entity and vector in one transaction. Where each fits.

Comparisons · May 5, 2026

OriginChainDB vs Postgres + pgvector

Postgres + pgvector suits teams already on Postgres adding vectors as a feature. OriginChainDB suits agent-paced writes and atomic multi-shape transactions.

Product · May 5, 2026

Our depth-first roadmap to 1.0

The roadmap to 1.0 is HA, fuzzing, optimiser, EXPLAIN, multi-writer, online schema change - in that order. What that buys, and what it leaves off.

Performance · May 5, 2026

HA snapshot bootstrap: the cutover gap

Snapshot-based bootstrap closes the window where writes land while a replica is still seeding. How the cutover works, and what it still won't protect.

Tutorials · May 5, 2026

OriginChainDB quickstart in five minutes

Provision a managed instance, write a JSON record and its vector embedding in one atomic transaction, run a similarity search, hydrate the match.

Engineering · May 4, 2026

Eight comparison pages in one afternoon

Eight competitor comparison pages shipped in an afternoon by three coding agents run in parallel. The prompt, the fairness rubric, and what agents can't do.

Tutorials · May 4, 2026

OpenAPI spec and the AI coding loop

An OpenAPI spec is what a coding agent reads to generate a client for your API. Ours is vanilla OpenAPI 3.1, one bearer scheme, published at /openapi.json.

Engineering · May 4, 2026

One MCP server for every AI IDE

The @originchain/mcp-server package exposes five tools over stdio transport, configured by environment variables. What it does, and what MCP doesn't solve.

every post is one HTTP fetch · cached at the edge
Subscribe to RSS