Skip to main content

Data Storage Capacity Estimation

This section explains how to calculate how much disk space you need. Calculate it once before installation, and then again each time you expand your collection targets.

One-line Rule​

If you receive 1,000 events per second and store one year of data, you need 1 TB.

One year is 31,536,000 seconds, so 1,000 events per second results in 31,536,000,000 events per year, and that amounts to 1 TB.


Why Events per Second, Not Tag Count​

What fills the disk is not tags but values. Even with the same 1,000 tags, if the collection interval is 1 second, you get 1,000 events per second, but if it's 10 seconds, you get 100 events per second. That's a 10x difference in capacity.

So the basis for estimation is always events received per second.

If collection intervals are mixed, divide them into groups and add them up.

초당 건수 = Σ ( 그 그룹의 태그 수 ÷ 그 그룹의 수집 주기(초) )
Example

500 tags with a 1-second interval + 3,000 tags with a 10-second interval + 6,000 tags with a 1-minute interval

500 ÷ 1 = 500
3000 ÷ 10 = 300
6000 ÷ 60 = 100
──────────────
합계 900 건/초 → 1년치 0.9 TB

Formula​

연간 건수 = 초당 건수 × 31,536,000
용량(TB) = 초당 건수 ÷ 1,000 × 보관 연수

If the retention period is not one year, scale proportionally. Six months is half, two years is double.


Capacity by Events per Second​

Events per SecondDaily EventsAnnual Events1-Year Capacity3-Year Capacity
1008,640,0003,153,600,0000.1 TB0.3 TB
50043,200,00015,768,000,0000.5 TB1.5 TB
1,00086,400,00031,536,000,0001 TB3 TB
2,000172,800,00063,072,000,0002 TB6 TB
5,000432,000,000157,680,000,0005 TB15 TB
10,000864,000,000315,360,000,00010 TB30 TB
20,0001,728,000,000630,720,000,00020 TB60 TB
50,0004,320,000,0001,576,800,000,00050 TB150 TB

The Retention Period Is the Capacity​

Two factors determine capacity: "how much you receive" and "how long you keep it." The amount you receive is set by the field, but the retention period is set by your configuration.

Raw collected values are stored in Aster TSDB with a time-to-live (TTL) set. The default retention period for raw tag values is 3650 days (10 years) — meaning under default settings, the "1-year" figure in the table above accumulates for 10 years, so you must specify the actual retention years when estimating.

The disk is divided into two tiers.

TierWhat's in itWhat determines its size
Aster TSDB (/data1)Raw values and aggregate/sampling tables. Read by dashboards, alarms, and queriesTTL per table
Object StorageArchived historical data. Read by analytics and reportsArchive interval and total retention years

Aggregate and sampling tables are much shorter than raw data (default 93 days). So if you simply multiply the "1-year 1 TB" figure, you'll overestimate, and conversely, if you keep raw data for 10 years, you'll underestimate. Decide on the retention period first, then calculate the capacity.

For default values and how to change them, see Data Retention Period (TTL) Settings. For the data structures, see Database Model.


Allow More Than the Estimated Value​

The number you calculate is a starting point, not the capacity to purchase. These things must share the same disk:

  • Compaction workspace — Aster TSDB merges fragmented files and temporarily holds both the original and the result. If there's no free space, compaction stops, and if it stops, reads slow down.
  • Derived tables — Aggregate, sampling, and count tables are pre-built at write time for query speed. They occupy space separately from raw data.
  • Backups and logs — Snapshots, commitlogs, and container logs accumulate on the same disk.
A full disk degrades silently

When Aster TSDB runs low on disk, it defers compaction, and each deferral slows down reads. It manifests as slowness before it manifests as failure. Add disk usage to your monitoring targets — see System Monitoring.


Calculation Example​

Field Conditions

  • 800 tags with a 1-second interval
  • 4,000 tags with a 5-second interval
  • Raw value retention period set to 3 years

Calculation

초당 건수 = 800 ÷ 1 + 4000 ÷ 5
= 800 + 800
= 1,600 건/초

1년치 = 1,600 ÷ 1,000 = 1.6 TB
3년치 = 1.6 × 3 = 4.8 TB

Add space for compaction headroom, derived tables, and backups to determine the data disk. Compare with the recommended specifications in System Requirements and follow the larger of the two.