# SaaS, your bucket, or inside your cloud.

The same four components over one lake of open Parquet. The difference is where storage and compute live — not what the product can do.

## Metadata

- **Canonical HTML**: https://ctrlb.ai/platform/deployment
- **Platform overview**: https://ctrlb.ai/platform

## How deployment works

### Collectors at the source

OpenTelemetry, Vector, and Fluent Bit ship logs, metrics, and traces from your clusters — the same path in every mode.

### Open Parquet on object storage

Telemetry lands as open Parquet with compact inverted indexes beside it. No proprietary warehouse to unwind later.

### One query layer

Data Engine, AI Insights, and MCP read the same lake — whether that lake is in our account or yours.

### O2C for BYOB

Object Storage → CtrlB reads Parquet from your bucket and ingests into our query layer. Indexes are written back to your bucket only — fully encrypted.

### Query from anywhere

Flow, Grafana, Metabase, MCP, and coding agents read the same lake — no exports, no sync jobs, no second copy to keep warm.

## Modes

### SaaS

We run it. You point telemetry at it.

Collectors stay with your workloads. The Data Engine, open Parquet lake, AI Insights, MCP, and Flow UI all run in CtrlB’s cloud in the region you choose.

- Fastest path to a working lake — no infrastructure to stand up.
- Storage and compute operated by CtrlB in the region you choose.
- Right for teams who want the query layer without the operations.

### BYOB — bring your own bucket

Your object storage. Our query layer.

Your bucket holds raw Parquet and the indexes CtrlB writes beside it. O2C — object storage to CtrlB — reads from your bucket over a scoped role and ingests into our query layer. Data and indexes never leave your storage.

- O2C reads Parquet from your bucket and ingests into CtrlB’s query layer.
- Indexes are written back to your bucket beside the raw data — both stay under your control.
- Scoped IAM only; retention, lifecycle, and object-lock policies remain yours.

### BYOC — bring your own cloud

Everything runs inside your account.

Ingest, index, query, and the Parquet lake run inside your cloud account. Pick how Flow and authentication are deployed.

#### BYOC variants

- **Fully in your account**: The full stack — data plane, Flow UI, and SSO — runs inside your VPC or cloud account. No telemetry or user traffic crosses an external boundary.
- **Managed UI**: Ingest, query, and Parquet stay in your account. Flow and SSO run on CtrlB’s cloud; only encrypted UI and auth traffic cross the boundary.

- Query and ingest components run in your cloud, next to your data.
- Choose fully private (UI + auth in your account) or managed UI (Flow and SSO on our cloud).
- Telemetry never crosses a network boundary you do not control.

## Comparison

| Feature | SaaS | BYOB | BYOC |
|---------|------|------|------|
| Where Parquet lives | CtrlB-operated object storage | Your S3 / GCS / Azure bucket | Your cloud account |
| Where ingest & query run | CtrlB cloud | CtrlB cloud (O2C reads your bucket) | Inside your VPC / account |
| Where indexes are written | CtrlB-operated storage | Your bucket only | Your cloud account |
| What crosses the boundary | Telemetry ingest + queries | O2C reads + index writes (encrypted) | Optional UI / auth only |
| Flow UI & auth | CtrlB cloud | CtrlB cloud | Your account or CtrlB cloud |
| Best when | You want zero infra to run | You already own the lake | Residency and air-gap matter |

## Try it

- **Live playground**: https://flow.ctrlb.ai/playground
- **Markdown mirror**: Fetch `/platform/deployment.md` for this page as plain Markdown