Data Storage
databases
Multi-database management and cross-database queries
databases
Manage multiple databases with unified queries, cross-database joins, and federated data access across PostgreSQL, ClickHouse, MongoDB, and more.
Overview
The databases primitive enables working with multiple data sources as a single logical database, with support for distributed queries, replication, and sharding.
Parent Primitive: database - Universal database interface
SDK Object Mapping
This primitive maps to the db SDK object with multi-database operations:
import { db } from 'sdk.do'
// Add multiple databases
await db.add('primary', { type: 'postgres', url: process.env.DB_URL })
await db.add('analytics', { type: 'clickhouse', url: process.env.CLICKHOUSE_URL })
// Cross-database queries
const result = await db.query(`
SELECT u.*, o.total
FROM primary.users u
JOIN analytics.orders o ON u.id = o.user_id
`)
// Replicate data between databases
await db.replicate({
from: 'postgres.database.do',
to: 'clickhouse.database.do',
tables: ['events', 'logs'],
})Quick Example
import { databases } from 'sdk.do'
// Configure multiple databases
await databases.add('primary', { type: 'postgres', url: process.env.DB_URL })
await databases.add('analytics', { type: 'clickhouse', url: process.env.CLICKHOUSE_URL })
// Query across databases
const result = await databases.query(`
SELECT u.*, o.total
FROM primary.users u
JOIN analytics.orders o ON u.id = o.user_id
`)Core Capabilities
- Multi-Database - PostgreSQL, ClickHouse, MongoDB, Redis, and more
- Cross-Database Queries - Join data across different database engines
- Federated Access - Unified interface for all data sources
- Data Replication - Sync data between databases automatically
- Sharding - Distribute data across multiple database instances
Access Methods
SDK
TypeScript/JavaScript library for multi-database operations
await databases.add('primary', { type: 'postgres', url: process.env.DB_URL })CLI
Command-line tool for database management
do databases add primary --type postgres --url $DB_URLAPI
REST/RPC endpoints for database operations
curl -X POST https://api.do/v1/databases -d '{"name":"primary","type":"postgres","url":"..."}'MCP
Model Context Protocol for AI-driven database operations
Add a PostgreSQL database named "primary" with the connection URL from environmentRelated Primitives
Parent Primitive
- database - Universal database interface and single database operations
Sibling Primitives
- datasets - Dataset management and version control