Hello everyone,
This case is how we analyze the capacity utilization on OceanStor 9000 V5.
[Problem Description]
When the video surveillance mode is set to video surveillance, a large number of image files are stored. As a result, the usage is only 40%. Check whether Capacity Utilization on OceanStor 9000 V5 7.1.1.SPC1 is normal.
[Problem Analysis]
Background information:
1) 20TB of data written on daily basis. 4.4PB space used in about 90days.
90days passed and 4505/90 = 50TB (4.4 PB = 4505TB) is written on each on
storage. It means 20T application data occupy about 50TB of storage space. The
utilization is about 20/50=40%
2) Redundant Ratio is 2+2 for each directory.
3) Customer use 512KB as stripe size for each directory. It stores a huge count
of images
4) EC use (8+2) (N+M protection), 8 data and 2 EC stored together in one
stripe
Analysis:
Storage space will be extra consumed by EC, metadata, stripes are not fully
written etc.
1. In theory EC disk utilization can reach about 66% to 89% in N=2 scenario.
About 34%-11% of space consume on the storage side to store M data and metadata. It
may have space consume deviations for the real scenario. The more count data stored
in storage. The more metadata consume on the storage side.

Refer to: EC (N+M Protection)
2. Huge count of files stored in current storage with 20 nodes with P36E model.
It will consume more metadata
Currently, storage stores a huge count of files. So more metadata will consume
storage space to manage these huge files.

The current inode count is 7641411621
Max Inode Count is 37756179380

UsedCapacity(MB) is 4728394683
Current Average file size
The current inode count is 7641411621
4728394683MB/7641411621=0.618MB=618KB
Once Average file size
Max Inode Count is 37756179380
4728394683MB/37756179380=0.125MB=125KB
The file average size is between 125KB to 618KB

Refer to: Analyzing and Adjusting the Redundancy Ratio (Data Protection Level) and Stripe Size
Now the stripe size is set to 512KB in each directory.
According to the file average size. It suggests setting stripe size to 128KB or 32KB.
32KB is the best choice.
3. Stripes are not fully written space consumption.
Current stripe size = 512KB
Use the current average file size 618KB as an example.
Use 128KB as stripe size as an example to show how many stripes are not fully
written space rough consume

618K files will be split into 4* 128K and 106K blocks.
The first four 128K blocks are stored in four disks. The fifth 106K block is stored in the fifth disk. It will waste some storage space.
The sixth to eighth have no block to store only write zero in it. It wastes 3 *
128K storage space
The nine and tenth 128K block is for EC store.
So at least 3 count of 128K waste in 8 count of 128K.
Storage space extra consumes at least reach to 3/8 (37.5%)
Less size of file will get more stripes are not fully written space extra
consume
Less size of file will get more stripes are not fully written space extra
consume

Please refer to the below link to learn more.
EC (N+M Protection)
[Root Cause]
A huge count of files with files average size is between 125KB to 618KB. But stripe set to a bigger one. Metadata and stripes that are not fully written will consume extra storage space.
[Solution]
Please create a new directory with a stripe size of 32KB. Then migrate existing
data to a new directory to increase storage disk utilization.
That is all for this case. Thanks.
