Calculation of the bandwidth and disks for storing the video archive
The HDD space and network load are closely interrelated and depend primarily on the video quality, or bitrate for simplicity, and the number of cameras.
Video quality and bitrate are defined by the same parameters, therefore, it is more convenient to use bitrate as a numerical characteristic of quality when calculating hardware. However, you should always keep in mind that the quality itself does not have a numerical expression, is a subjective value only conditionally depending on the bitrate. For more information on what video quality is and how to find the balance between quality and bitrate, see our blog. By following this link, you can also find a few hints on how to calculate the bitrate if it is not shown in the camera specification or if you cannot to measure it experimentally.
The network load can be inbound and outbound. The inbound load depends on the number of cameras, and the outbound one depends on the number of simultaneous views. To calculate the network load, it is enough to multiply the total bitrate by the number of cameras or views, respectively. However, you should anticipate the situation when all subscribers/users are simultaneously watching video, therefore, you should use the number of subscribers rather than the number of views when calculating the outbound load. We also recommend that you make about 30% margin of the channel bandwidth in order to provide for bitrate variability during the broadcast.
Inbound network load = Number of cameras × Camera bitrate + 30%
Outbound network load = Number of users × Camera bitrate + 30%
Let's calculate the inbound and outbound network load on the streamer in the video surveillance service for subscribers. Let's say that 500 cameras with a bitrate of 1 Mbps are connected to the streamer, and the provider has 200 subscribers to the video surveillance service with access to these cameras.
Inbound network load = 500 × 1 Mbps + 30% = 650 Mbps
Outbound network load = 200 × 1 Mbps + 30% = 260 Mbps
The amount of disk space required for storing the archive is determined by the incoming network load, i.e. the number and bitrate of cameras as shown above, and the depth of recording storage. Usually, the archive depth is measured in days and depends on the area of application: a depth of up to several years may be required in the legal field, while a few days are usually sufficient for household cameras.
For calculation of the archive size, it is enough to multiply the incoming network load by the required archive depth. For example, one 1 Mbit/s camera recordings take about 10 GB of storage space per day; a 2 Mbit/s stream will sum up into 20 GB per day, etc. So you will need at least 70 GB disk space to store a 7-day archive from a 1 Mbit/s camera, and if your system includes 500 such cameras, you will need 35 TB of disk space.
But you should not rush to immediately buy one dozens-of-terabytes HDD. When choosing the number and size of disks, you should also take into account some nuances:
- The archive can occupy no more than 90% of the disk space. This is due to file system peculiarities: it can slow down when the disk is almost full. To take this factor into account, the calculated archive size will need to be divided by 0.9.
A large number of simultaneous read and write operations can reduce disk speed drastically. This is especially critical for a video surveillance service, but it can also affect the traditional video surveillance system: when dozens of cameras simultaneously write an archive to different areas of the disk, and dozens of users simultaneously view the archive, the disk speed can drop from the declared 100 MBps to 20-30 MBps.
The required write and read speed is equal to the inbound and outbound network load, respectively.
Disk Requirements: 7200 rpm, SSD (for cache) + HDD for recording
Taking into account the above considerations, the HDD parameters are calculated as follows:
Disk space = Inbound network load × Archive depth / 0,9
Number of disks = (Inbound network load + Outbound network load) / Disk speed
Disk size = Disk space / Number of disks
Consider the same streamer with 500 cameras at 1 Mbps bitrate with 200 subscribers. Let's say the archive depth should be 10 days (864000 seconds) for all cameras. The recording speed will be considered the minimum, i.e. 20 MB/s = 160 Mbps.
Disk space = 650 Mbps × 864000 sec / 0,9 = 6240000 Mb ≈ 762 GB
Number of disks = (650 Mbps + 260 Mbps) / 160 Mbps ≈ 6 disks
Disk size = 762 GB / 6 = 127 GB
Thus, you will need to configure Flussonic RAID for Watcher in the streamer with at least 6 HDDs of 128 GB each (or more disks of a smaller size if such a configuration is more appropriate economically).