The core product contract: one authoritative database for structured filters, ordered feeds, documents, text, vectors, hot state, rollups, transactions, analytics, and recovery.
Wide-Column Operational Model
Data Model / DBA + Developer
Start from familiar partitioned operational data for tenants, time-series, events, sessions, and high-throughput application state.
- Use Case
- Move CQL-shaped workloads to MTS while gaining a stronger database contract underneath.
- How To Use
CREATE TABLE app.events (
tenant_id text,
bucket int,
event_id bigint,
payload text,
PRIMARY KEY ((tenant_id, bucket), event_id)
);
- Impact
- Teams can start from familiar operational modeling without making table-per-query design the ceiling of the system.
Flexible Schema and Documents
Data Model / DBA + Developer
Evolve structured fields, document attributes, maps, collections, and typed document paths without forcing every product attribute into rigid DDL.
- Use Case
- Model stable business fields as columns while keeping fast-changing customer, product, account, or device metadata in document values.
- How To Use
ALTER TABLE app.customers
ADD COLUMN lifecycle_stage text;
CREATE ACCESS PATH customers_by_lifecycle_stage
ON app.customers (tenant_id, lifecycle_stage, created_at DESC)
TYPE ORDERED_COMPOSITE;
- Impact
- Schema evolution and query evolution become database-managed workflows instead of table-routing and backfill projects.
Native Vector Type
Data Model / Developer + AI
Keep embeddings close to operational rows so semantic retrieval can filter against current application context.
- Use Case
- Build AI search, recommendations, similarity lookup, and retrieval-augmented application flows.
- How To Use
CREATE TABLE app.products (
id int PRIMARY KEY,
status text,
embedding vector<float, 768>
);
CREATE ACCESS PATH products_embedding
ON app.products (embedding)
TYPE VECTOR
WITH DISTANCE cosine;
- Impact
- Semantic retrieval can use current operational context without making a detached vector database the source of truth.
Maintained Access Paths and Rollups
Data Model / DBA + Developer
Use access paths and exact rollups as durable database objects, not application-side caches or denormalized repair jobs.
- Use Case
- Add ordered feeds, active subsets, common projections, and operational aggregates without creating another source of truth.
- How To Use
CREATE ROLLUP case_counts_by_tier
ON app.support_cases
DIMENSIONS (
tenant_id,
DOC_GET_TEXT(profile, '$.account.tier'),
status,
TIME_BUCKET(created_at, '1h')
)
MEASURES (count(*));
- Impact
- Feeds, projections, and aggregates become maintained database state instead of custom synchronization code.
High-Throughput I/O
Data Access / DBA + Developer
Serve low-latency operational reads and writes while keeping hot work visible and isolatable.
- Use Case
- Handle mixed read, write, access-path, and maintenance pressure without turning p95/p99 latency into an afterthought.
- How To Use
INSERT INTO app.events (tenant_id, bucket, event_id, payload)
VALUES ('t1', 202605, 1001, 'checkout');
SELECT * FROM app.events
WHERE tenant_id='t1' AND bucket=202605;
- Impact
- Tail latency becomes part of the database architecture instead of only an operations problem.
Scalar Index Paths
Query + Retrieval / DBA + Developer
Declare scalar equality, range, ordered composite, partial, and covering access paths for bounded lookup beyond primary-key-only reads.
- Use Case
- Support status filters, time ranges, tenant feeds, active subsets, operational lookup, and common projections.
- How To Use
CREATE ACCESS PATH open_orders_by_customer
ON app.orders (tenant_id, customer_id, created_at DESC)
TYPE PARTIAL_ORDERED
WHERE status = 'open';
- Impact
- Applications can add queryability without encoding every product view as another base table.
Hybrid Search
Query + Retrieval / Developer + AI
Combine tenant scope, structured filters, document predicates, full-text relevance, vector similarity, time ranges, and ranking.
- Use Case
- Build support search, product discovery, fraud search, and RAG flows that need lexical and semantic retrieval over current application context.
- How To Use
CREATE ACCESS PATH support_case_hybrid
ON app.support_cases
TYPE HYBRID
USING (
tenant_id,
status,
DOC_GET_TEXT(profile, '$.account.tier'),
FULLTEXT(title, body),
VECTOR(embedding)
);
- Impact
- Search and retrieval stay tied to authoritative rows instead of being reconciled across external engines.
Global ACID Transactions
Transactions + Correctness / DBA + Developer
Use explicit session transactions for supported multi-row and multi-tablet workflows with durable commit decisions and serializable validation.
- Use Case
- Protect transfers, account changes, entitlements, workflow state, and ledger events where conditional writes are not enough.
- How To Use
BEGIN TRANSACTION;
UPDATE app.accounts
SET balance = balance - 100
WHERE tenant_id = ? AND account_id = ?;
UPDATE app.accounts
SET balance = balance + 100
WHERE tenant_id = ? AND account_id = ?;
COMMIT;
- Impact
- Correctness becomes an explicit database contract instead of application-side coordination around narrow conditional updates.
Native Full-Text Search
Query + Retrieval / Developer
Use substring and full-text access paths for ranked lexical retrieval with analyzers and field weighting.
- Use Case
- Support product search, support-case search, operational lookup, highlights, and facets without splitting text state into another system.
- How To Use
CREATE ACCESS PATH articles_text
ON app.articles (title, body)
TYPE FULLTEXT
WITH ANALYZER standard_v1
FIELD WEIGHTS (title = 2.0, body = 1.0);
- Impact
- Teams can build richer application search while keeping row verification and database visibility in the contract.
Explainable Query Planning
Query + Retrieval / DBA + Developer
Use EXPLAIN and ADVISE to show the access path, pushed predicates, bounded work, verification, and missing DDL.
- Use Case
- Help teams understand why a query is safe, why it is refused, or what access path should be declared next.
- How To Use
EXPLAIN
SELECT order_id, total
FROM app.orders
WHERE tenant_id = ?
AND customer_id = ?
AND status = 'open'
ORDER BY created_at DESC
LIMIT 50;
- Impact
- The database can expand query power while fail-closed behavior keeps operational behavior predictable.
Fresh, Stable, and FOLLOWING Reads
Transactions + Correctness / DBA + Developer
Expose read modes for latest owner-visible state, checkpointed scale, and close-following reads with safety boundaries.
- Use Case
- Let application teams choose the right freshness contract for user-facing updates, reporting, AI context refresh, and read scale.
- How To Use
-- Fresh path: read the latest owner-visible state.
SELECT * FROM app.orders WHERE order_id = 101;
-- Stable path: query a consistent analytical boundary.
SELECT customer_id, sum(total)
FROM app.orders_analytics
GROUP BY customer_id;
- Impact
- Freshness becomes a product contract instead of accidental replica-lag behavior.
Database-Native Analytical Views
Data Analytics / Data Analytics
Produce versioned analytical views and query metadata from the same authoritative database state used by operational reads and writes.
- Use Case
- Serve dashboards, reporting, time-window analysis, and AI context refresh without making an external copy own correctness.
- How To Use
SELECT
TIME_BUCKET(created_at, '1h') AS hour,
event_type,
SUM(amount) AS revenue
FROM app.events_analytics
WHERE tenant_id = ?
GROUP BY hour, event_type;
- Impact
- Analytics can move into the database lifecycle while preserving explicit freshness and coverage boundaries.
Zero-ETL Analytics
Data Analytics / Data Analytics
Make operational data analytically readable inside the MTS lifecycle instead of requiring a CDC pipeline or warehouse copy for core analytics.
- Use Case
- Feed dashboards, product intelligence, recent-history analysis, and AI context refresh from database-produced analytical boundaries.
- How To Use
SELECT
TIME_BUCKET(created_at, '1h') AS hour,
event_type,
SUM(amount) AS revenue
FROM app.events
WHERE tenant_id = ?
GROUP BY hour, event_type;
- Impact
- Teams reduce ETL lag and copy drift while keeping broad warehouse-replacement claims scoped to supported analytical paths.
Granular Point-in-Time Recovery
DBA Operations / DBA
Restore a database, keyspace, table, or scoped target to a precise historical boundary as a new validated target.
- Use Case
- Recover from bad deploys, accidental deletes, bad batches, schema incidents, and audit requests without destructive in-place rewind.
- How To Use
RESTORE TABLE app.orders
TO TIMESTAMP '2026-05-01T12:00:00Z'
INTO app_restore.orders_validate;
- Impact
- Recovery becomes a database-native workflow with validation before serving.
Online Index and View Builds
DBA Operations / DBA + Developer
Build and catch up access paths, derived structures, and rollups while production data keeps changing.
- Use Case
- Evolve queryability after schema or product changes without making application teams own every backfill.
- How To Use
CREATE ACCESS PATH orders_feed_covering
ON app.orders (tenant_id, status, created_at DESC)
TYPE ORDERED_COMPOSITE
INCLUDE (order_id, total, currency, customer_id);
- Impact
- Queryability evolves through database-managed build, catch-up, visibility, and EXPLAIN state.
Typed Refusals and Advice
DBA Operations / DBA + Developer
Fail closed when a query, schema change, restore, or analytical view cannot be proven safe, then return actionable advice.
- Use Case
- Prevent silent query drift, stale projections, unsafe scans, broken rollups, and destructive DDL surprises.
- How To Use
ADVISE ACCESS PATH FOR
SELECT order_id, total
FROM app.orders
WHERE tenant_id = ?
AND customer_id = ?
AND status = 'open'
ORDER BY created_at DESC
LIMIT 50;
- Impact
- Operators see why the database made a decision before that decision becomes an incident.
Memory-Resident Operational Tier
Performance Architecture / DBA + Developer
Keep hot rows, sessions, counters, rate-limit windows, feeds, access paths, vectors, and rollups memory-resident under database-managed policy.
- Use Case
- Serve latency-sensitive hot state without splitting authoritative truth into Redis or another cache tier.
- How To Use
ALTER TABLE app.sessions
SET RESIDENCY = MEMORY_FIRST,
MEMORY_RESIDENCY_TTL = '10 minutes',
MAX_MEMORY = '64 GB';
- Impact
- A memory miss becomes a latency event, not a correctness event caused by cache drift.
Performance Engine Evidence
Performance Architecture / DBA + Developer
Keep performance claims attached to workload evidence for reads, writes, scans, mixed traffic, and vector serving.
- Use Case
- Evaluate migrations where compatibility cannot come at the cost of read/write throughput or latency.
- How To Use
SELECT * FROM app.kv WHERE pk='u:1001';
INSERT INTO app.kv (pk, ck, value) VALUES ('u:1001', 1, 'v1');
-- compare p50, p95, throughput, and benchmark scope below
- Impact
- The page can sound strong while showing exactly where the proof comes from.