Data Disk (Video)
Holds the recorded video files from camera RTSP streams. Grows to many TB with channels, bitrate and retention. Usually large HDDs.
System Disk (OS · DB)
Holds the OS/Docker images and PostgreSQL metadata (segment index, events). It is an index, not video, so only tens of GB. Usually an SSD.
1 ~ 256
1 ~ 24 hours (default: 24h continuous)
1 ~ 60 (preset basis: 30fps)
Desired retention days (e.g. 2 months = 60)
System Disk Options
Headroom for events, metadata, thumbnails, indexes
OS + Docker images + log headroom (default 40GB)
Never fill a system disk; keep free space
Data Disk (Video) Video
Required Storage
0TB
Daily Data
0GB
Monthly Data
0GB
Recommended HDD Configuration (Data Disk)
System Disk (OS · PostgreSQL) OS · DB
Required System Disk
0GB
Base (OS·Docker)
0GB
PostgreSQL Metadata
0GB
Recommended SSD (System Disk)
Note — Video is stored only on the Data Disk (or separate storage). PostgreSQL keeps metadata only (segment index, events),
so the System Disk is just - of the Data Disk. Actual usage may be smaller thanks to PostgreSQL TOAST compression,
and larger if analytics thumbnails are stored inline in the DB — adjust with the "Activity" option.
1 ~ 256
1 ~ 24 hours
1 ~ 60 (preset basis: 30fps)
Retention Period
0days
Daily Data
0GB
Monthly Data
0GB
This tab computes retention for the Data Disk (video). For the System Disk, use the Disk Sizing tab.
Bitrate Reference by Resolution
| Resolution | Pixels | Typical Bitrate | 1ch Daily (24h, 30fps) |
|---|---|---|---|
| 4K (3840×2160) | ~8.3MP | 16 ~ 25 Mbps | 172.8 ~ 270.0 GB |
| 1440p (2560×1440) | ~3.7MP | 8 ~ 12 Mbps | 86.4 ~ 129.6 GB |
| 1080p (1920×1080) | ~2.1MP | 4 ~ 8 Mbps | 43.2 ~ 86.4 GB |
| 720p (1280×720) | ~0.9MP | 1.5 ~ 3 Mbps | 16.2 ~ 32.4 GB |
| 480p (720×480) | ~0.3MP | 0.5 ~ 1.5 Mbps | 5.4 ~ 16.2 GB |
Formula
[Data Disk · Video]
Daily(GB) = Bitrate(Mbps) × (FPS ÷ 30) × 3,600 × Hours(h) × Channels ÷ 8 ÷ 1,000
Data Disk(TB) = Daily(GB) × Days ÷ 1,000
[System Disk · PostgreSQL metadata]
Segment rows = 60 × Hours(h) × Days × Channels (1-minute segments, per track)
Metadata(GB) = rows × rowSize(enc 5KB / plain 3KB) ÷ 10⁹ × (1 + activity%) × 1.25
(+1.5KB/row per track if audio · 1.25 = WAL/index/VACUUM headroom)
System Disk(GB) = (Base + Metadata) × (1 + margin%)
※ Bitrate presets are based on 30fps; changing FPS scales proportionally.
※ Video is never stored in PostgreSQL (metadata only).